glenda.party
term% ls -F
term% cat index.txt
BIND(1)                     General Commands Manual                    BIND(1)



NAME
       bind, mount, unmount - change name space

SYNOPSIS
       bind [ option ...  ] new old

       mount [ option ...  ] servename old [ spec ]

       unmount [ new ] old

DESCRIPTION
       Bind  and  mount  modify the file name space of the current process and
       other processes in the same name space group (see fork(2)).   For  both
       calls,  old is the name of an existing file or directory in the current
       name space where the modification is to be made.

       For bind, new is the name of another (or possibly  the  same)  existing
       file  or directory in the current name space.  After a successful bind,
       the file name old is an alias for the object originally named  by  new;
       if  the  modification doesn't hide it, new will also still refer to its
       original file.  The evaluation of new (see  intro(2))  happens  at  the
       time of the bind, not when the binding is later used.

       The  servename  argument  to  mount  is  the  name of a file that, when
       opened, yields an existing connection to a file server.  Almost always,
       servename  will  be a file in /srv (see srv(3)).  In the discussion be‐
       low, new refers to the file named by the new argument to  bind  or  the
       root  directory  of  the  service available in servename after a mount.
       Either both old and new files must be directories, or both must not  be
       directories.

       Options control aspects of the modification to the name space:

       (none)    Replace  the old file by the new one.  Henceforth, an evalua‐
                 tion of old will be translated to the new file.  If they  are
                 directories  (for  mount,  this  condition is true by defini‐
                 tion), old becomes a union directory consisting of one direc‐
                 tory (the new file).

       -b        Both files must be directories.  Add the new directory to the
                 beginning of the union directory represented by the old file.

       -a        Both files must be directories.  Add the new directory to the
                 end of the union directory represented by the old file.

       -c        This  can  be  used in addition to any of the above to permit
                 creation in a union directory.  When a new file is created in
                 a  union  directory, it is placed in the first element of the
                 union that has been bound or mounted with the  -c  flag.   If
                 that  directory  does  not  have write permission, the create
                 fails.

       -C        (Only in mount.)  By default, file contents  are  always  re‐
                 trieved  from  the  server.  With this option, the kernel may
                 instead use a local cache to  satisfy  read(5)  requests  for
                 files  accessible  through this mount point.  The currency of
                 cached data for a file is verified at  each  open(5)  of  the
                 file from this client machine.

       -q        Exit silently if the bind or mount operation fails.

       Mount  takes  two  additional  options.  The first, -k keypattern, con‐
       strains the set of factotum(4) keys used for  an  authenticated  mount.
       The second, -n, causes mount to skip authentication entirely.

       The  spec  argument  to mount is passed in the attach(5) message to the
       server, and selects among different file trees served by the server.

       The srv(3) service registry device, normally bound to /srv, is a conve‐
       nient  rendezvous  point for services that can be mounted.  After boot‐
       strap, the file /srv/boot contains the communications port to the  file
       system from which the system was loaded.

       The  effects  of bind and mount can be undone with the unmount command.
       If two arguments are given to unmount, the effect is to undo a bind  or
       mount  with  the same arguments.  If only one argument is given, every‐
       thing bound to or mounted upon old is unmounted.

EXAMPLES
       To compile a program with the C library from July 16, 1992:

              mount /srv/boot /n/dump main/archive
              bind /n/dump/1992/0716/mips/lib/libc.a /mips/lib/libc.a
              mk

SOURCE
       /sys/src/cmd/bind.c
       /sys/src/cmd/mount.c
       /sys/src/cmd/unmount.c

SEE ALSO
       bind(2), open(2), srv(3), srv(4)



                                                                       BIND(1)