*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> mount_union (8)              
Title
Content
Arch
Section
 

MOUNT_UNION(8)

Contents


NAME    [Toc]    [Back]

     mount_union - mount union filesystems

SYNOPSIS    [Toc]    [Back]

     mount_union [-br] [-o options] directory uniondir

DESCRIPTION    [Toc]    [Back]

     The mount_union command attaches directory above uniondir in
such a way
     that  the  contents  of both directory trees remain visible.
By default,
     directory becomes the upper layer and uniondir  becomes  the
lower layer.

     The options are as follows:

     -b       Invert  the default position, so that directory becomes the lower
             layer and uniondir becomes the upper layer.   However, uniondir
             remains the mount point.

     -o options
             Options  are  specified with a -o flag followed by a
comma separated
 string of options.  See the mount(8) man page for
possible options
 and their meanings.

     -r       Hide  the lower layer completely in the same way as
mounting with
             mount_null(8).

     To  enforce  filesystem  security,  the  user  mounting  the
filesystem must be
     superuser  or  else  have write permission on the mounted-on
directory.

     Filenames are looked up in the upper layer and then  in  the
lower layer.
     If  a directory is found in the lower layer, and there is no
entry in the
     upper layer, then a shadow directory will be created in  the
upper layer.
     It  will  be  owned by the user who originally did the union
mount, with
     mode ``rwxrwxrwx'' (0777) modified by the umask in effect at
that time.

     If  a file exists in the upper layer then there is no way to
access a file
     with the same name in the lower layer.  If necessary, a combination of
     loopback and union mounts can be made which will still allow
the lower
     files to be accessed by a different pathname.

     Except in the case of a directory, access to  an  object  is
granted via the
     normal  filesystem access checks.  For directories, the current user must
     have access to both the upper and lower directories  (should
they both exist).


     Requests  to create or modify objects in uniondir are passed
to the upper
     layer with the exception of a few special cases.  An attempt
to open for
     writing a file which exists in the lower layer causes a copy
of the
     entire file to be made to the upper layer, and then for  the
upper layer
     copy to be opened.  Similarly, an attempt to truncate a lower layer file
     to zero length causes an empty file to be created in the upper layer.
     Any other operation which would ultimately require modification to the
     lower layer fails with EROFS.

     The union filesystem manipulates the namespace, rather  than
individual
     filesystems.   The  union operation applies recursively down
the directory
     tree now rooted at uniondir.  Thus any filesystems which are
mounted under
  uniondir  will  take part in the union operation.  This
differs from
     the union option to mount(8) which only  applies  the  union
operation to
     the mount point itself, and then only for lookups.

EXAMPLES    [Toc]    [Back]

     The commands

           # mount -t cd9660 -o ro /dev/cd0a /usr/src
           # mount -t union /var/obj /usr/src

     mount  the  CD-ROM  drive /dev/cd0a on /usr/src and then attaches /var/obj
     on top.  For most purposes the effect of this is to make the
source tree
     appear writable even though it is stored on a CD-ROM.

     The command

           # mount -t union -o -b /sys $HOME/sys

     attaches  the  system source tree below the sys directory in
the user's
     home directory.  This allows individual users to  make  private changes to
     the source, and build new kernels, without those changes becoming visible
     to other users.  Note that the files in the lower layer  remain accessible
     via /sys.

SEE ALSO    [Toc]    [Back]

      
      
     intro(2),   mount(2),   fstab(5),  mount(8),  mount_null(8),
umount(8)

HISTORY    [Toc]    [Back]

     The mount_union command first appeared in 4.4BSD.

BUGS    [Toc]    [Back]

     Without whiteout support from the filesystem backing the upper layer,
     there  is  no way that delete and rename operations on lower
layer objects
     can be done.  EROFS is returned for these kind of operations
along with
     any  others which would make modifications to the lower layer, such as
     chmod(1).

     Running find(1) over a union tree  has  the  side-effect  of
creating a tree
     of shadow directories in the upper layer.

OpenBSD      3.6                          March      27,     1994
[ Back ]
 Similar pages
Name OS Title
mount_unionfs FreeBSD mount union file systems
mount Linux mount and unmount filesystems.
mountall IRIX mount multiple filesystems
mount IRIX mount and unmount filesystems
automount IRIX automatically mount NFS filesystems
exports FreeBSD define remote mount points for NFS mount requests
exports OpenBSD define remote mount points for NFS mount requests
exports Tru64 Defines remote mount points for NFS mount requests
dmG728Encode IRIX implements the ITU (International Telecommunication Union)
dmG728Decode IRIX implements the ITU (International Telecommunication Union)
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service