MOUNT_UMAP(8) BSD System Manager's Manual MOUNT_UMAP(8)
mount_umap -- user and group ID remapping file system layer
mount_umap [-o options] -u uid-mapfile -g gid-mapfile target mount-point
The mount_umap command is used to mount a sub-tree of an existing file
system that uses a different set of uids and gids than the local system.
Such a file system could be mounted from a remote site via NFS, a local
file system on removable media brought from some foreign location that
uses a different user/group database, or could be a local file system for
another operating system which does not support Unix-style user/group
IDs, or which uses a different numbering scheme.
The options are as follows:
-o Options are specified with a -o flag followed by a comma sepa-
rated string of options. See the mount(8) man page for possible
options and their meanings.
Use the group ID mapping specified in gid-mapfile. This flag is
Use the user ID mapping specified in uid-mapfile. This flag is
The mount_umap command uses a set of files provided by the user to make
correspondences between uids and gids in the sub-tree's original environ-
ment and some other set of ids in the local environment. For instance,
user smith might have uid 1000 in the original environment, while having
uid 2000 in the local environment. The mount_umap command allows the
subtree from smith's original environment to be mapped in such a way that
all files with owning uid 1000 look like they are actually owned by uid
target should be the current location of the sub-tree in the local sys-
tem's name space. mount-point should be a directory where the mapped
subtree is to be placed. uid-mapfile and gid-mapfile describe the map-
pings to be made between identifiers.
The format of the user and group ID mapping files is very simple. The
first line of the file is the total number of mappings present in the
file. The remaining lines each consist of two numbers: the ID in the
mapped subtree and the ID in the original subtree.
For example, to map uid 1000 in the original subtree to uid 2000 in the
For user IDs in the original subtree for which no mapping exists, the
user ID will be mapped to the user ``nobody''. For group IDs in the
original subtree for which no mapping exists, the group ID will be mapped
to the group ``nobody''.
There is a limit of 64 user ID mappings and 16 group ID mappings.
The mapfiles can be located anywhere in the file hierarchy, but they must
be owned by root, and they must be writable only by root. mount_umap
will refuse to map the sub-tree if the ownership or permissions on these
files are improper. It will also report an error if the count of map-
pings in the first line of the map files is not correct.
The mount_umap utility first appeared in 4.4BSD.
The implementation is not very sophisticated.
BSD March 6, 2001 BSD