Blame man/auto.master.5.in

Packit 8480eb
.\" t
Packit 8480eb
.TH AUTO.MASTER 5 "11 Apr 2006"
Packit 8480eb
.SH NAME
Packit 8480eb
auto.master \- Master Map for automounter consulted by autofs
Packit 8480eb
.SH "DESCRIPTION"
Packit 8480eb
The
Packit 8480eb
.B auto.master
Packit 8480eb
map is consulted to set up automount managed mount points when the
Packit 8480eb
.nh
Packit 8480eb
.BR autofs (8)
Packit 8480eb
.hy
Packit 8480eb
script is invoked or the
Packit 8480eb
.nh
Packit 8480eb
.BR automount (8)
Packit 8480eb
.hy
Packit 8480eb
program is run. Each line describes a mount point and refers to an
Packit 8480eb
autofs map describing file systems to be mounted under the mount
Packit 8480eb
point.
Packit 8480eb
.P
Packit 8480eb
The default location of the master map is
Packit 8480eb
.nh
Packit 8480eb
.B @@autofsmapdir@@/auto.master
Packit 8480eb
.hy
Packit 8480eb
but an alternate name may be given on the command line when running
Packit 8480eb
the automounter and the default master map may changed by setting the
Packit 8480eb
.nh
Packit 8480eb
.B "MASTER_MAP_NAME"
Packit 8480eb
.hy
Packit 8480eb
configuration variable in
Packit 8480eb
.nh
Packit 8480eb
.B @@autofsconfdir@@/autofs.
Packit 8480eb
.hy
Packit 8480eb
If the master map name has no path then the system Name Service Switch configuration
Packit 8480eb
will be consulted and each of the sources searched in line with the rules
Packit 8480eb
given in the Name Service Switch configuration.
Packit 8480eb
.P
Packit 8480eb
Access to mounts in maps is governed by a key.
Packit 8480eb
.P
Packit 8480eb
For direct maps the mount point is always specified as:
Packit 8480eb
.P
Packit 8480eb
.BR /-
Packit 8480eb
.P
Packit 8480eb
and the key used within the direct map is the full path to the mount point. The direct map
Packit 8480eb
may have multiple entries in the master map.
Packit 8480eb
.P
Packit 8480eb
For indirect maps access is by using the path scheme:
Packit 8480eb
.P
Packit 8480eb
.BR /mount-point/key
Packit 8480eb
.P
Packit 8480eb
where
Packit 8480eb
.I mount-point
Packit 8480eb
is one of the entries listed in the master map. The
Packit 8480eb
.I key
Packit 8480eb
is a single directory component and is matched against entries in the
Packit 8480eb
map given in the entry (See
Packit 8480eb
.BR autofs (5)).
Packit 8480eb
.P
Packit 8480eb
Additionally, a map may be included from its source as if it were itself
Packit 8480eb
present in the master map by including a line of the form:
Packit 8480eb
.P
Packit 8480eb
.BR + [ maptype [, format ]:] map\  [ options ]
Packit 8480eb
.P
Packit 8480eb
and 
Packit 8480eb
.BR automount (8)
Packit 8480eb
will process the map according to the specification described below for
Packit 8480eb
map entries. Indirect map entries must be unique in the master map so
Packit 8480eb
second and subsequent entries for an indirect mount point are ignored by
Packit 8480eb
.BR automount (8).
Packit Service 06904b
.TP
Packit Service 06904b
.B NOTE:
Packit Service 06904b
autofs currently does not collapse multiple slashes in paths, so it is
Packit Service 06904b
important to ensure paths used in maps are correct. If unnecessary multiple
Packit Service 06904b
slashes are present in a path it can lead to unexpected failures such as
Packit Service 06904b
an inability to expire automounts. An exception to this is a trailing slash
Packit Service 06904b
at the end of the automount point path in the master map which will be
Packit Service 06904b
removed if present.
Packit 8480eb
.SH "FORMAT"
Packit 8480eb
Master map entries have three fields separated by an arbitrary number
Packit 8480eb
of spaces or tabs. Lines beginning with # are comments. The first field
Packit 8480eb
is the mount point described above and the second field is the name of
Packit 8480eb
the map to be consulted for the mount point followed by the third field
Packit 8480eb
which contains options to be applied to all entries in the map.
Packit 8480eb
.P
Packit 8480eb
The format of a master map entry is:
Packit 8480eb
.TP
Packit 8480eb
.BR mount-point\  [ map-type [, format ]:] map\  [ options ]
Packit 8480eb
.TP
Packit 8480eb
.B mount-point
Packit 8480eb
Base location for the \fBautofs\fP filesystem to be mounted.  For
Packit 8480eb
indirect maps this directory will be created (as with \fBmkdir \-p\fP)
Packit 8480eb
and is removed when the \fBautofs\fP filesystem is umounted.
Packit 8480eb
.TP
Packit 8480eb
.B map-type
Packit 8480eb
Type of map used for this mount point.  The following are
Packit 8480eb
valid map types:
Packit 8480eb
.RS
Packit 8480eb
.TP
Packit 8480eb
.B file
Packit 8480eb
The map is a regular text file.
Packit 8480eb
.TP
Packit 8480eb
.B program
Packit 8480eb
The map is an executable program, which is passed a key on the command
Packit 8480eb
line and returns an entry (everything besides the key) on stdout if successful.
Packit 8480eb
Optinally, the keyword exec may be used as a synonym for program to avoid
Packit 8480eb
confusion with amd formated maps mount type program.
Packit 8480eb
.TP
Packit 8480eb
.B yp
Packit 8480eb
The map is a NIS (YP) database.
Packit 8480eb
.TP
Packit 8480eb
.B nisplus
Packit 8480eb
The map is a NIS+ database.
Packit 8480eb
.TP
Packit 8480eb
.B hesiod
Packit 8480eb
The map is a hesiod database whose
Packit 8480eb
.B filsys
Packit 8480eb
entries are used for maps.
Packit 8480eb
.TP
Packit 8480eb
.B ldap \fPor\fB ldaps
Packit 8480eb
The map is stored in an LDAP directory. If \fBldaps\fP is used the
Packit 8480eb
appropriate certificate must be configured in the LDAP client.
Packit 8480eb
.TP
Packit 8480eb
.B multi
Packit 8480eb
This map type allows the specification of multiple maps separated
Packit 8480eb
by "--". These maps are searched in order to resolve key lookups.
Packit 8480eb
.TP
Packit 8480eb
.B dir
Packit 8480eb
This map type can be used at
Packit 8480eb
.BR +
Packit 8480eb
master map including notation. The contents of files under given directory are included
Packit 8480eb
to the master map. The name of file to be included must be ended with ".autofs". A file
Packit 8480eb
will be ignored if its name is not ended with the suffix. In addition a dot file, a file
Packit 8480eb
which name is started with "." is also ignored.
Packit 8480eb
.RE
Packit 8480eb
.TP
Packit 8480eb
.B format
Packit 8480eb
.br
Packit 8480eb
Format of the map data; currently the formats recognized are \fBsun\fP,
Packit 8480eb
which is a subset of the Sun automounter map format, \fBhesiod\fP, for
Packit 8480eb
hesiod filesys entries and \fBamd\fP for amd formated map entries.
Packit 8480eb
If the format is left unspecified, it defaults to \fBsun\fP for all map
Packit 8480eb
types except \fBhesiod\fP unless it is a top level \fBamd\fP mount that
Packit 8480eb
has a configuration entry for the mount point path, in which case the
Packit 8480eb
format used is \fBamd\fP.
Packit 8480eb
.TP
Packit 8480eb
.B map
Packit 8480eb
.br
Packit 8480eb
Name of the map to use.  This is an absolute UNIX pathname
Packit 8480eb
for maps of types \fBfile\fP, \fBdir\fP, or \fBprogram\fP, and the name of a database
Packit 8480eb
in the case for maps of type \fByp\fP, \fBnisplus\fP, or \fBhesiod\fP or
Packit 8480eb
the \fBdn\fP of an LDAP entry for maps of type \fBldap\fP.
Packit 8480eb
.TP
Packit 8480eb
.B options
Packit 8480eb
.br
Packit 8480eb
Any remaining command line arguments without leading dashes (\-) are
Packit 8480eb
taken as options (\fI\-o\fP) to \fBmount\fP.  Arguments with leading
Packit 8480eb
dashes are considered options for the maps and are passed to automount (8).
Packit 8480eb
.sp
Packit 8480eb
The \fBsun\fP format supports the following options:
Packit 8480eb
.RS
Packit 8480eb
.TP
Packit 8480eb
.I "\-Dvariable=value"
Packit 8480eb
Replace \fIvariable\fP with \fIvalue\fP in map substitutions.
Packit 8480eb
.TP
Packit 8480eb
.I "\-strict"
Packit 8480eb
Treat errors when mounting file systems as fatal. This is important when
Packit 8480eb
multiple file systems should be mounted (`multimounts'). If this option
Packit 8480eb
is given, no file system is mounted at all if at least one file system
Packit 8480eb
can't be mounted.
Packit 8480eb
.TP
Packit 8480eb
.I "[no]browse"
Packit 8480eb
This is an autofs specific option that is a pseudo mount option and
Packit 8480eb
so is given without a leading dash. Use of the browse option pre-creates
Packit 8480eb
mount point directories for indirect mount maps so the map keys can be
Packit 8480eb
seen in a directory listing without being mounted. Use of this option
Packit 8480eb
can cause performance problem if the indirect map is large so it should
Packit 8480eb
be used with caution. The internal program default is to enable browse
Packit 8480eb
mode for indirect mounts but the default installed configuration overrides
Packit 8480eb
this by setting BROWSE_MODE to "no" because of the potential performance
Packit 8480eb
problem. This option does the same as the deprecated --ghost option, the
Packit 8480eb
browse option is preferred because it is used by other autofs implementations.
Packit 8480eb
.TP
Packit 8480eb
.I "nobind"
Packit 8480eb
This is an autofs specific option that is a pseudo mount option and
Packit 8480eb
so is given without a leading dash. It may be used either in the master
Packit 8480eb
map entry (so it effects all the map entries) or with individual map
Packit 8480eb
entries to prevent bind mounting of local NFS filesystems. For direct
Packit 8480eb
mount maps the option is only effective if specified on the first direct
Packit 8480eb
map entry and is applied to all direct mount maps in the master map. It
Packit 8480eb
is ignored if given on subsequent direct map entries. It may be used
Packit 8480eb
on individual map entries of both types. Preventing bind mounts of NFS
Packit 8480eb
file systems can no longer be done by using the "port=" option, the
Packit 8480eb
nobind option must be used instead.
Packit 8480eb
.TP
Packit 8480eb
.I "symlink"
Packit 8480eb
This option makes bind mounting use a symlink instead of an actual bind
Packit 8480eb
mount. It is an autofs specific option that is a pseudo mount option and
Packit 8480eb
so is given without a leading dash. It may be used with indirect map
Packit 8480eb
entries only, either in the master map (so it effects all map entries)
Packit 8480eb
or with individual map entries. The option is ignored for direct mounts
Packit 8480eb
and non-root offest mount entries.
Packit 8480eb
.TP
Packit Service ca07dc
.I "strictexpire"
Packit Service ca07dc
Use a strict expire policy for this automount. Using this option means
Packit Service ca07dc
that last use of autofs directory entries will not be updated during
Packit Service ca07dc
path walks so that mounts in an automount won't be kept mounted by
Packit Service ca07dc
applications scanning the mount tree. Note that this doesn't completely
Packit Service ca07dc
resolve the problem of expired automounts being immediately re-mounted
Packit Service ca07dc
due to application accesses triggered by the expire itself.
Packit Service ca07dc
.TP
Packit Service e4aa99
.I slave \fPor\fI private
Packit Service e4aa99
This option allows mount propagation of bind mounts to be set to
Packit Service e4aa99
either \fIslave\fP or \fIprivate\fP. This option may be needed when using
Packit Service e4aa99
multi-mounts that have bind mounts that bind to a file system that is
Packit Service e4aa99
propagation shared. This is becuase the bind mount will have the same
Packit Service e4aa99
properties as its target which causes problems for offset mounts. When
Packit Service e4aa99
this happens an unwanted offset mount is propagated back to the target
Packit Service e4aa99
file system resulting in a deadlock when attempting to access the offset.
Packit Service e4aa99
This option is a an autofs pseudo mount option that can be used in the
Packit Service e4aa99
master map only. By default bind mounts will inherit the mount propagation
Packit Service e4aa99
of the target file system.
Packit Service e4aa99
.TP
Packit 8480eb
.I "\-r, \-\-random-multimount-selection"
Packit 8480eb
Enables the use of random selection when choosing a host from a
Packit 8480eb
list of replicated servers. This option is applied to this mount
Packit 8480eb
only, overriding the global setting that may be specified on the
Packit 8480eb
command line.
Packit 8480eb
.TP
Packit 8480eb
.I "\-w, \-\-use-weight-only"
Packit 8480eb
Use only specified weights for server selection where more than one
Packit 8480eb
server is specified in the map entry. If no server weights are given
Packit 8480eb
then each available server will be tried in the order listed, within
Packit 8480eb
proximity.
Packit 8480eb
.TP
Packit 8480eb
.I "\-t, \-\-timeout <seconds>"
Packit 8480eb
Set the expire timeout for map entries. This option can be used to
Packit 8480eb
override the global default given either on the command line
Packit 8480eb
or in the configuration.
Packit 8480eb
.TP
Packit 8480eb
.I "\-n, \-\-negative\-timeout <seconds>"
Packit 8480eb
Set the timeout for caching failed key lookups. This option can be
Packit 8480eb
used to override the global default given either on the command line
Packit 8480eb
or in the configuration.
Packit 8480eb
.TP
Packit 8480eb
.I "\-\-mode <octal_mode>"
Packit 8480eb
Set the directory mode for the base location of the \fBautofs\fP mount point.
Packit 8480eb
If this option is given, \fBautofs\fP will chmod that directory with this
Packit 8480eb
mode.
Packit 8480eb
.SH BUILTIN MAP \-hosts
Packit 8480eb
If "\-hosts" is given as the map then accessing a key under the mount point
Packit 8480eb
which corresponds to a hostname will allow access to the exports of that
Packit 8480eb
host. The hosts map cannot be dynamically updated and requires a HUP signal
Packit 8480eb
to be sent to the daemon for it to check hosts for an update. Due to possible
Packit 8480eb
hierarchic dependencies within a mount tree, it might not be completely
Packit 8480eb
updated during the HUP signal processing.
Packit 8480eb
.P
Packit 8480eb
For example, with an entry in the master map of
Packit 8480eb
.nh
Packit 8480eb
.B /net  \-hosts
Packit 8480eb
.hy
Packit 8480eb
accessing /net/myserver will mount exports from myserver on directories below
Packit 8480eb
/net/myserver.
Packit 8480eb
.P
Packit 8480eb
NOTE: mounts done from a hosts map will be mounted with the "nosuid,nodev,intr" options
Packit 8480eb
unless overridden by explicily specifying the "suid", "dev" or "nointr" options in the
Packit 8480eb
master map entry.
Packit 8480eb
.SH LDAP MAPS
Packit 8480eb
If the map type \fBldap\fP is specified the mapname is of the form
Packit 8480eb
\fB[//servername/]dn\fP, where the optional \fBservername\fP is
Packit 8480eb
the name of the LDAP server to query, and \fBdn\fP is the Distinguished
Packit 8480eb
Name of a subtree to search for map entries.
Packit 8480eb
The old style
Packit 8480eb
.nh
Packit 8480eb
.B ldap:servername:mapname
Packit 8480eb
.hy
Packit 8480eb
is also understood. Alternatively, the type can be obtained from the Name Service Switch
Packit 8480eb
configuration, in which case the map name alone must be given.
Packit 8480eb
.P
Packit 8480eb
If no schema is set in the autofs configuration then autofs will check
Packit 8480eb
each of the commonly used schema for a valid entry and if one is found
Packit 8480eb
it will used for subsequent lookups.
Packit 8480eb
.P
Packit 8480eb
There are three common schemas in use:
Packit 8480eb
.TP
Packit 8480eb
.I nisMap
Packit 8480eb
.br
Packit 8480eb
Entries in the \fBnisMap\fP schema are \fBnisObject\fP objects in
Packit 8480eb
the specified subtree, where the \fBcn\fP attribute is the key
Packit 8480eb
(the wildcard key is "/"), and the \fBnisMapEntry\fP attribute
Packit 8480eb
contains the information used by the automounter.
Packit 8480eb
.TP
Packit 8480eb
.I automountMap
Packit 8480eb
The \fBautomountMap\fP schema has two variations that differ in the attribute
Packit 8480eb
used for the map key. Entries in the automountMap schema are \fBautomount\fP
Packit 8480eb
objects in the specified subtree, where the \fBcn\fP or \fBautomountKey\fP
Packit 8480eb
attribute (depending on local usage) is the key (the wildcard key is "/"),
Packit 8480eb
and the \fBautomountInformation\fP attribute contains the information used
Packit 8480eb
by the automounter. Note that the \fBcn\fP attribute is case insensitive.
Packit 8480eb
.P
Packit 8480eb
The object classes and attributes used for accessing automount maps in
Packit 8480eb
LDAP can be changed by setting entries in the autofs configuration
Packit 8480eb
located in
Packit 8480eb
.nh
Packit 8480eb
.BR @@autofsconfdir@@/autofs.conf .
Packit 8480eb
.hy
Packit 8480eb
.TP
Packit 8480eb
.B NOTE:
Packit 8480eb
If a schema is given in the configuration then all the schema configuration
Packit 8480eb
values must be set, any partial schema specification will be ignored.
Packit 8480eb
.TP
Packit 8480eb
For \fBamd\fP format maps a different schema is used:
Packit 8480eb
.TP
Packit 8480eb
.I amdMap
Packit 8480eb
.br
Packit 8480eb
The \fBamdmap\fP schema contains attributes \fBamdmapName\fP, \fBamdmapKey\fP
Packit 8480eb
and \fBamdmapValue\fP where \fBamdmapName\fP contains the name of the containing
Packit 8480eb
map, \fBamdmapKey\fP contains the map key and \fBamdmapValue\fP contains the
Packit 8480eb
map entry.
Packit 8480eb
.SH LDAP AUTHENTICATION, ENCRYPTED AND CERTIFIED CONNECTIONS
Packit 8480eb
LDAP authenticated binds, TLS encrypted connections and certification
Packit 8480eb
may be used by setting appropriate values in the autofs authentication
Packit 8480eb
configuration file and configuring the LDAP client with appropriate
Packit 8480eb
settings.  The default location of this file is
Packit 8480eb
.nh
Packit 8480eb
.BR @@autofsmapdir@@/autofs_ldap_auth.conf .
Packit 8480eb
.hy
Packit 8480eb
.P
Packit 8480eb
If this file exists it will be used to establish whether TLS or authentication
Packit 8480eb
should be used.
Packit 8480eb
.P
Packit 8480eb
An example of this file is:
Packit 8480eb
.sp
Packit 8480eb
.RS +.2i
Packit 8480eb
.ta 1.0i
Packit 8480eb
.nf
Packit 8480eb
Packit 8480eb
Packit 8480eb
        usetls="yes"
Packit 8480eb
        tlsrequired="no"
Packit 8480eb
        authrequired="no"
Packit 8480eb
        authtype="DIGEST-MD5"
Packit 8480eb
        user="xyz"
Packit 8480eb
        secret="abc"
Packit 8480eb
/>
Packit 8480eb
.fi
Packit 8480eb
.RE
Packit 8480eb
.sp
Packit 8480eb
If TLS encryption is to be used the location of the Certificate Authority
Packit 8480eb
certificate must be set within the LDAP client configuration in 
Packit 8480eb
order to validate the server certificate. If, in addition, a certified
Packit 8480eb
connection is to be used then the client certificate and private key file
Packit 8480eb
locations must also be configured within the LDAP client.
Packit 8480eb
.P
Packit 8480eb
In OpenLDAP these may be configured in the \fBldap.conf\fP file or in the
Packit 8480eb
per-user configuration. For example it may be sensible to use the system
Packit 8480eb
wide configuration for the location of the Certificate Authority certificate
Packit 8480eb
and set the location of the client certificate and private key
Packit 8480eb
in the per-user configuration. The location of these files and the configuration
Packit 8480eb
entry requirements is system dependent so the documentation for your
Packit 8480eb
installation will need to be consulted to get further information.
Packit 8480eb
.P
Packit 8480eb
See
Packit 8480eb
.B autofs_ldap_auth.conf (5)
Packit 8480eb
for more information.
Packit 8480eb
.SH EXAMPLE
Packit 8480eb
.sp
Packit 8480eb
.RS +.2i
Packit 8480eb
.ta 1.0i
Packit 8480eb
.nf
Packit 8480eb
/-	auto.data
Packit 8480eb
/home	/etc/auto.home
Packit 8480eb
/mnt	yp:mnt.map
Packit 8480eb
.fi
Packit 8480eb
.RE
Packit 8480eb
.sp
Packit 8480eb
This will generate two mountpoints for 
Packit 8480eb
.IR /home
Packit 8480eb
and
Packit 8480eb
.IR /mnt
Packit 8480eb
and install direct mount triggers for each entry in the direct mount map
Packit 8480eb
.IR auto.data .
Packit 8480eb
All accesses to
Packit 8480eb
.I /home
Packit 8480eb
will lead to the consultation of the map in
Packit 8480eb
.IR /etc/auto.home
Packit 8480eb
and all accesses to
Packit 8480eb
.I /mnt
Packit 8480eb
will consult the NIS map
Packit 8480eb
.IR mnt.map .
Packit 8480eb
All accesses to paths in the map
Packit 8480eb
.IR auto.data
Packit 8480eb
will trigger mounts when they are accessed and the Name Service Switch
Packit 8480eb
configuration will be used to locate the source of the map
Packit 8480eb
.IR auto.data .
Packit 8480eb
.SH "SEE ALSO"
Packit 8480eb
.BR automount (8),
Packit 8480eb
.BR autofs (5),
Packit 8480eb
.BR autofs (8),
Packit 8480eb
.BR autofs.conf (5),
Packit 8480eb
.BR autofs_ldap_auth.conf (5).
Packit 8480eb
.SH AUTHOR
Packit 8480eb
This manual page was written by Christoph Lameter <chris@waterf.org>,
Packit 8480eb
for the Debian GNU/Linux system.  Edited by <hpa@transmeta.com> and
Packit 8480eb
Ian Kent <raven@themaw.net> .