123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215 |
- .TH BIND 1
- .SH NAME
- bind, mount, unmount \- change name space
- .SH SYNOPSIS
- .B bind
- [
- .I option ...
- ]
- .I new old
- .PP
- .B mount
- [
- .I option ...
- ]
- .I servename old
- [
- .I spec
- ]
- .PP
- .B unmount
- [
- .I new
- ]
- .I old
- .SH DESCRIPTION
- .I Bind
- and
- .I mount
- modify the file name space of the current process
- and other processes in the same name space group
- (see
- .IR fork (2)).
- For both calls,
- .I old
- is the name of an existing file or directory in the
- current name space where the modification is to be made.
- .PP
- For
- .IR bind ,
- .I new
- is the name of another (or possibly the same)
- existing file or directory in
- the current name space.
- After a successful
- .IR bind ,
- the file name
- .I old
- is an alias for the object originally named by
- .IR new ;
- if the modification doesn't hide it,
- .I new
- will also still refer to its original file.
- The evaluation of
- .I new
- (see
- .IR intro (2))
- happens at the time of the
- .IR bind ,
- not when the binding is later used.
- .PP
- The
- .I servename
- argument to
- .I mount
- is the name of a file that, when opened, yields an
- existing connection to a file server.
- Almost always,
- .I servename
- will be a file in
- .B /srv
- (see
- .IR srv (3)).
- In the discussion below,
- .I new
- refers to the file named by the
- .I new
- argument to
- .I bind
- or the root directory of the service
- available in
- .I servename
- after a
- .IR mount .
- Either both
- .I old
- and
- .I new
- files must be directories,
- or both must not be directories.
- .PP
- Options control aspects of the modification to the name space:
- .TP 10
- (none)
- Replace the
- .I old
- file by the new one.
- Henceforth, an evaluation of
- .I old
- will be translated to the new file.
- If they are directories (for
- .IR mount ,
- this condition is true by definition),
- .I old
- becomes a
- .I "union directory"
- consisting of one directory (the new file).
- .TP
- .B -b
- Both files must be directories.
- Add the new directory to the beginning
- of the union directory represented by the old file.
- .TP
- .B -a
- Both files must be directories.
- Add the new directory to the end
- of the union directory represented by the old file.
- .TP
- .B -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
- .B -c
- flag.
- If that directory does not have write permission, the create fails.
- .TP
- .B -C
- (Only in
- .IR mount .)
- By default, file contents are always retrieved from the server.
- With this option, the kernel may instead use a local cache to satisfy
- .IR read (5)
- requests for files accessible through this mount point.
- The currency of cached data for a file is verified at each
- .IR open (5)
- of the file from this client machine.
- .TP
- .B -q
- Exit silently if the
- .B bind
- or
- .B mount
- operation fails.
- .PD
- .PP
- .I Mount
- takes two additional options.
- The first,
- .B -k
- .IR keypattern ,
- constrains the set of
- .IR factotum (4)
- keys used for an authenticated mount.
- The second,
- .BR -n ,
- causes
- .I mount
- to skip authentication entirely.
- .PP
- The
- .I spec
- argument to
- .I mount
- is passed in the
- .IR attach (5)
- message to the server, and selects among different
- file trees served by the server.
- .PP
- The
- .IR srv (3)
- service registry device, normally bound to
- .BR /srv ,
- is a convenient rendezvous point for services that can be mounted.
- After bootstrap, the file
- .B /srv/boot
- contains the communications port to the file system from which
- the system was loaded.
- .PP
- The effects of
- .I bind
- and
- .I mount
- can be undone with the
- .I unmount
- command.
- If two arguments are given to
- .IR unmount ,
- the effect is to undo a
- .I bind
- or
- .I mount
- with the same arguments.
- If only one argument is given,
- everything bound to or mounted upon
- .I old
- is unmounted.
- .SH EXAMPLES
- To compile a program with the C library from July 16, 1992:
- .IP
- .EX
- mount /srv/boot /n/dump main/archive
- bind /n/dump/1992/0716/mips/lib/libc.a /mips/lib/libc.a
- mk
- .EE
- .SH SOURCE
- .B /sys/src/cmd/bind.c
- .br
- .B /sys/src/cmd/mount.c
- .br
- .B /sys/src/cmd/unmount.c
- .SH SEE ALSO
- .IR bind (2),
- .IR open (2),
- .IR srv (3),
- .IR srv (4)
|