8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / man / man1m / automount.1m
blob717d4fafe18435f6f972d647b512ae78fdd380ac
1 .\"
2 .\" The contents of this file are subject to the terms of the
3 .\" Common Development and Distribution License (the "License").
4 .\" You may not use this file except in compliance with the License.
5 .\"
6 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
7 .\" or http://www.opensolaris.org/os/licensing.
8 .\" See the License for the specific language governing permissions
9 .\" and limitations under the License.
10 .\"
11 .\" When distributing Covered Code, include this CDDL HEADER in each
12 .\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
13 .\" If applicable, add the following below this CDDL HEADER, with the
14 .\" fields enclosed by brackets "[]" replaced with your own identifying
15 .\" information: Portions Copyright [yyyy] [name of copyright owner]
16 .\"
17 .\"
18 .\" Copyright 1989 AT&T
19 .\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
20 .\" Copyright 2016 Nexenta Systems, Inc.
21 .\"
22 .Dd February 25, 2017
23 .Dt AUTOMOUNT 1M
24 .Os
25 .Sh NAME
26 .Nm automount
27 .Nd install automatic mount points
28 .Sh SYNOPSIS
29 .Nm
30 .Op Fl v
31 .Op Fl t Ar duration
32 .Sh DESCRIPTION
33 The
34 .Nm
35 utility installs
36 .Nm autofs
37 mount points and associates an automount map with each mount point.
38 It starts the
39 .Xr automountd 1M
40 daemon if it finds any non-trivial entries in either local or distributed
41 automount maps and if the daemon is not already running.
42 The
43 .Nm autofs
44 file system monitors attempts to access directories within it and notifies the
45 .Xr automountd 1M
46 daemon.
47 The daemon uses the map to locate a file system, which it then mounts at the
48 point of reference within the
49 .Nm autofs
50 file system.
51 A map can be assigned to an
52 .Nm autofs
53 mount using an entry in the
54 .Pa /etc/auto_master
55 map or a direct map.
56 .Pp
57 If the file system is not accessed within an appropriate interval
58 .Pq 10 minutes by default ,
59 the
60 .Nm automountd
61 daemon unmounts the file system.
62 .Pp
63 The file
64 .Pa /etc/auto_master
65 determines the locations of all
66 .Nm autofs
67 mount points.
68 By default, this file contains three entries:
69 .Bd -literal -offset indent
70 # Master map for automounter
72 +auto_master
73 /net    -hosts -nosuid
74 /home   auto_home
75 .Ed
76 .Pp
77 The
78 .Sy +auto_master
79 entry is a reference to an external NIS master map.
80 If one exists, then its entries are read as if they occurred in place of the
81 .Sy +auto_master
82 entry.
83 The remaining entries in the master file specify a directory on which an
84 .Nm autofs
85 mount will be made followed by the automounter map to be associated with it.
86 Optional mount options may be supplied as an optional third field in the each
87 entry.
88 These options are used for any entries in the map that do not specify mount
89 options explicitly.
90 The
91 .Nm
92 command is usually run without arguments.
93 It compares the entries
94 .Pa /etc/auto_master
95 with the current list of
96 .Nm autofs
97 mounts in
98 .Pa /etc/mnttab
99 and adds, removes or updates
100 .Nm autofs
101 mounts to bring the
102 .Pa /etc/mnttab
103 up to date with the
104 .Pa /etc/auto_master .
105 At boot time it installs all
106 .Nm autofs
107 mounts from the master map.
108 Subsequently, it may be run to install
109 .Nm autofs
110 mounts for new entries in the master map or the direct map, or to perform
111 unmounts for entries that have been removed from these maps.
112 .Ss Automount with Solaris Trusted Extensions
113 If a system is configured with Solaris Trusted Extensions, additional
114 processing is performed to facilitate multilevel home directory access.
115 A list of zones whose labels are dominated by the current zone is generated and
116 default
117 .Sy auto_home
118 automount maps are generated if they do not currently exist.
119 These automount maps are named
120 .Sy auto_home_ Ns Ar zonename ,
121 where
122 .Ar zonename
123 is the name of each zone's lower-level zone.
125 .Nm autofs
126 mount of each such
127 .Sy auto_home
128 map is then performed, regardless of whether it is explicitly or implicitly
129 listed in the master map.
130 Instead of
131 .Nm autofs
132 mounting the standard
133 .Sy auto_home
134 map, the zone uses an
135 .Pa auto_home
136 file appended with its own zone name.
137 Each zone's
138 .Sy auto_home
139 map is uniquely named so that it can be maintained and shared by all zones using
140 a common name server.
142 By default, the home directories of lower-level zones are mounted read-only
143 under
144 .Pa /zone/ Ns Ar zonename Ns Pa /export/home
145 when each zone is booted.
146 The default
147 .Sy auto_home_ Ns Ar zonename
148 automount map specifies that path as the source directory for an
149 .Nm lofs
150 remount onto
151 .Pa /zone/ Ns Ar zonename Ns Pa /home/ Ns Ar username .
152 For example, the file
153 .Pa auto_home_public ,
154 as generated from a higher level zone would contain:
155 .Bd -literal -offset indent
156 +auto_home_public
157 *       -fstype=lofs    :/zone/public/export/home/&
160 When a home directory is referenced and the name does not match any other keys
161 in the
162 .Sy auto_home_public
163 map, it will match this loopback mount specification.
164 If this loopback match occurs and the name corresponds to a valid user whose
165 home directory does not exist in the public zone, the directory is automatically
166 created on behalf of the user.
167 .Sh OPTIONS
168 The following options are supported:
169 .Bl -tag -width Ds
170 .It Fl v
171 Verbose mode.
172 Notifies of
173 .Nm autofs
174 mounts, unmounts, or other non-essential information.
175 .It Fl t Ar duration
176 Specifies a
177 .Ar duration ,
178 in seconds, that a file system is to remain mounted when not in use.
179 The default is
180 .Sy 10
181 minutes.
183 .Sh USAGE
184 .Ss Map Entry Format
185 A simple map entry
186 .Pq mapping
187 takes the form:
188 .Bd -literal -offset indent
189 .Ar key Oo Fl Ns Ar mount-options Oc Ar location Ns ...
192 where
193 .Ar key
194 is the full pathname of the directory to mount when used in a direct map, or the
195 simple name of a subdirectory in an indirect map.
196 .Ar mount-options
197 is a comma-separated list of
198 .Nm mount
199 options, and
200 .Ar location
201 specifies a file system from which the directory may be mounted.
202 In the case of a simple NFS mount, the options that can be used are specified in
203 .Xr mount_nfs 1M ,
205 .Ar location
206 takes the form:
208 .Dl Ar host Ns : Ns Ar pathname
210 .Ar host
211 is the name of the host from which to mount the file system, and
212 .Ar pathname
213 is the absolute pathname of the directory to mount.
215 Options to other file systems are documented in the other
216 .Nm mount_*
217 reference manual pages.
218 .Ss Replicated File Systems
219 Multiple
220 .Ar location
221 fields can be specified for replicated NFS file systems, in which case
223 and the kernel will each try to use that information to increase availability.
224 If the read-only flag is set in the map entry,
225 .Nm automountd
226 mounts a list of locations that the kernel may use, sorted by several criteria.
227 Only locations available at mount time will be mounted, and thus be available to
228 the kernel.
229 When a server does not respond, the kernel will switch to an alternate server.
230 The sort ordering of
232 is used to determine how the next server is chosen.
233 If the read-only flag is not set,
235 will mount the best single location, chosen by the same sort ordering, and new
236 servers will only be chosen when an unmount has been possible, and a remount is
237 done.
238 Servers on the same local subnet are given the strongest preference, and servers
239 on the local net are given the second strongest preference.
240 Among servers equally far away, response times will determine the order if no
241 weighting factors
242 .Pq see below
243 are used.
245 If the list includes server locations using both the NFS Version 2 Protocol and
246 the NFS Version 3 Protocol,
248 will choose only a subset of the server locations on the list, so that all
249 entries will be the same protocol.
250 It will choose servers with the NFS Version 3 Protocol so long as an NFS Version
251 2 Protocol server on a local subnet will not be ignored.
252 See the FIXME for additional details.
254 If each
255 .Ar location
256 in the list shares the same
257 .Ar pathname
258 then a single
259 .Ar location
260 may be used with a comma-separated list of hostnames:
261 .Bd -literal -offset indent
262 .Ar hostname Ns , Ns Ar hostname Ns ...: Ns Ar pathname
265 Requests for a server may be weighted, with the weighting factor appended to
266 the server name as an integer in parentheses.
267 Servers without a weighting are assumed to have a value of zero
268 .Pq most likely to be selected .
269 Progressively higher values decrease the chance of being selected.
270 In the example,
271 .Bd -literal -offset indent
272 man -ro alpha,bravo,charlie(1),delta(4):/usr/man
275 hosts
276 .Sy alpha
278 .Sy bravo
279 have the highest priority; host
280 .Sy delta
281 has the lowest.
283 Server proximity takes priority in the selection process.
284 In the example above, if the server
285 .Sy delta
286 is on the same network segment as the client, but the others are on different
287 network segments, then
288 .Sy delta
289 will be selected; the weighting value is ignored.
290 The weighting has effect only when selecting between servers with the same
291 network proximity.
292 The automounter always selects the localhost over other servers on the same
293 network segment, regardless of weighting.
295 In cases where each server has a different export point, the weighting can
296 still be applied.
297 For example:
298 .Bd -literal -offset indent
299 man     -ro     alpha:/usr/man bravo,charlie(1):/usr/share/man \e
300                 delta(3):/export/man
303 A mapping can be continued across input lines by escaping the NEWLINE with a
304 backslash
305 .Pq Qq Sy \e .
306 Comments begin with a number sign
307 .Pq Qq Sy #
308 and end at the subsequent NEWLINE.
309 .Ss Map Key Substitution
310 The ampersand
311 .Pq Qq Sy \*(Am
312 character is expanded to the value of the
313 .Ar key
314 field for the entry in which it occurs.
315 In this case:
316 .Bd -literal -offset indent
317 jane    sparcserver:/home/&
321 .Sy \*(Am
322 expands to
323 .Sy jane .
324 .Ss Wildcard Key
325 The asterisk
326 .Pq Qq Sy *
327 character, when supplied as the
328 .Ar key
329 field, is recognized as the catch-all entry.
330 Such an entry will match any key not previously matched.
331 For instance, if the following entry appeared in the indirect map for
332 .Pa /config :
333 .Bd -literal -offset indent
334 *       &:/export/config/&
337 this would allow automatic mounts in
338 .Pa /config
339 of any remote file system whose location could be specified as:
340 .Bd -literal -offset indent
341 .Ar hostname Ns : Ns Pa /export/config/ Ns Ar hostname
344 Note that the wildcard key does not work in conjunction with the
345 .Fl browse
346 option.
347 .Ss Variable Substitution
348 Client specific variables can be used within an
350 map.
351 For instance, if
352 .Sy $HOST
353 appeared within a map,
355 would expand it to its current value for the client's host name.
356 Supported variables are:
357 .Bl -column "PLATFORM" "arch -k or uname -m"
358 .It Sy NAME Ta Sy OUTPUT OF Ta Sy DESCRIPTION (EXAMPLE)
359 .It Ev ARCH
360 .Ta Nm arch
361 .Ta architecture name
362 .Pq Qq Sy sun4
363 .It Ev CPU
364 .Ta Nm uname Fl p
365 .Ta processor type
366 .Pq Qq Sy sparc
367 .It Ev HOST
368 .Ta Nm uname Fl n
369 .Ta host name
370 .Pq Qq Sy myhost
371 .It Ev KARCH
372 .Ta Nm arch Fl k No or Nm uname Fl m
373 .Ta kernel architecture name or machine hardware name
374 .Pq Qq Sy sun4u
375 .It Ev OSNAME
376 .Ta Nm uname Fl s
377 .Ta OS name
378 .Pq Qq Sy SunOS
379 .It Ev OSREL
380 .Ta Nm name Fl r
381 .Ta OS release name
382 .Pq Qq Sy 5.3
383 .It Ev OSVERS
384 .Ta Nm uname Fl v
385 .Ta OS version
386 .Pq Qq Sy beta1.0
387 .It Ev NATISA
388 .Ta Nm isainfo Fl n
389 .Ta native instruction set architecture for the system
390 .Pq Qq Sy sparcv9
391 .It Ev PLATFORM
392 .Ta Nm uname Fl i
393 .Ta platform name
394 .Pq Qq Sy SUNW,Sun-Fire-V240
397 If a reference needs to be protected from affixed characters, you can surround
398 the variable name with curly braces
399 .Pq Qq Sy \(lC Ns Sy \(rC .
400 .Ss Multiple Mounts
401 A multiple mount entry takes the form:
402 .Bd -literal -offset indent
403 .Ar key Oo Fl Ns Ar mount-options Oc Oo Oo Ar mountpoint Oc
404 .Oo Fl Ns Ar mount-options Oc  Ar location Ns ... Oc Ns ...
407 The initial
408 .Ar mountpoint
409 is optional for the first mount and mandatory for all subsequent mounts.
410 The optional
411 .Ar mountpoint
412 is taken as a pathname relative to the directory named by
413 .Ar key .
415 .Ar mountpoint
416 is omitted in the first occurrence, a
417 .Ar mountpoint
419 .Pa /
420 .Pq root
421 is implied.
423 Given an entry in the indirect map for
424 .Pa /src :
425 .Bd -literal -offset indent
426 beta    -ro \e
427         /               svr1,svr2:/export/src/beta  \e
428         /1.0            svr1,svr2:/export/src/beta/1.0 \e
429         /1.0/man        svr1,svr2:/export/src/beta/1.0/man
432 All offsets must exist on the server under
433 .Sy beta .
435 will automatically mount
436 .Pa /src/beta ,
437 .Pa /src/beta/1.0 ,
439 .Pa /src/beta/1.0/man ,
440 as needed, from either
441 .Sy svr1
443 .Sy svr2 ,
444 whichever host is nearest and responds first.
445 .Ss Other File System Types
446 The automounter assumes NFS mounts as a default file system type.
447 Other file system types can be described using the
448 .Sy fstype
449 mount option.
450 Other mount options specific to this file system type can be combined with the
451 .Sy fstype
452 option.
453 The location field must contain information specific to the file system type.
454 If the location field begins with a slash, a colon character must be prepended,
455 for instance, to mount a CD file system:
456 .Bd -literal -offset indent
457 cdrom   -fstype=hsfs,ro :/dev/sr0
460 or to perform an
461 .Nm autofs
462 mount:
463 .Bd -literal -offset indent
464 src     -fstype=autofs  auto_src
467 Use this procedure only if you are not using Volume Manager.
469 See the
470 .Sx NOTES
471 section for information on option inheritance.
472 .Ss Indirect Maps
473 An indirect map allows you to specify mappings for the subdirectories you wish
474 to mount under the
475 .Ar directory
476 indicated on the command line.
477 In an indirect map, each
478 .Ar key
479 consists of a simple name that refers to one or more file systems that are to be
480 mounted as needed.
481 .Ss Direct Maps
482 Entries in a direct map are associated directly with
483 .Nm autofs
484 mount points.
485 Each
486 .Ar key
487 is the full pathname of an
488 .Nm autofs
489 mount point.
490 The direct map as a whole is not associated with any single directory.
492 Direct maps are distinguished from indirect maps by the
493 .Sy \-
494 key.
495 For example:
496 .Bd -literal -offset indent
497 # Master map for automounter
499 +auto_master
500 /net    -hosts          -nosuid,nobrowse
501 /home   auto_home       -nobrowse
502 /-      auto_direct
504 .Ss Included Maps
505 The contents of another map can be included within a map with an entry of the
506 form
507 .Bd -literal -offset indent
508 .No + Ns Ar mapname
512 .Ar mapname
513 begins with a slash, it is assumed to be the pathname of a local file.
514 Otherwise, the location of the map is determined by the policy of the name
515 service switch according to the entry for the automounter in
516 .Pa /etc/nsswitch.conf ,
517 such as
518 .Bd -literal -offset indent
519 automount: files nis
522 If the name service is
523 .Sy files ,
524 then the name is assumed to be that of a local file in
525 .Pa /etc .
526 If the key being searched for is not found in the included map, the search
527 continues with the next entry.
528 .Ss Special Maps
529 There are two special maps available:
530 .Sy -hosts
532 .Sy -null .
534 .Sy -hosts
535 map is used with the
536 .Pa /net
537 directory and assumes that the map key is the hostname of an NFS server.
539 .Nm automountd
540 daemon dynamically constructs a map entry from the server's list of exported
541 file systems.
542 References to a directory under
543 .Pa /net/hermes
544 will refer to the corresponding directory relative to
545 .Sy hermes
546 root.
549 .Sy -null
550 map cancels a previous map for the directory indicated.
551 This is most useful in the
552 .Pa /etc/auto_master
553 for cancelling entries that would otherwise be inherited from the
554 .Sy +auto_master
555 include entry.
556 To be effective, the
557 .Sy -null
558 entries must be inserted before the included map entry.
559 .Ss Executable Maps
560 Local maps that have the execute bit set in their file permissions will be
561 executed by the automounter and provided with a key to be looked up as an
562 argument.
563 The executable map is expected to return the content of an automounter map entry
564 on its stdout or no output if the entry cannot be determined.
565 A direct map cannot be made executable.
566 .Ss Configuration and the auto_master Map
567 When initiated without arguments,
569 consults the master map for a list of
570 .Nm autofs
571 mount points and their maps.
572 It mounts any
573 .Nm autofs
574 mounts that are not already mounted, and unmounts
575 .Nm autofs
576 mounts that have been removed from the master map or direct map.
578 The master map is assumed to be called
579 .Sy auto_master
580 and its location is determined by the name service switch policy.
581 Normally the master map is located initially as a local file
582 .Pa /etc/auto_master .
583 .Ss Browsing
585 .Nm automountd
586 daemon supports browsability of indirect maps.
587 This allows all of the potential mount points to be visible, whether or not they
588 are mounted.
590 .Sy -nobrowse
591 option can be added to any indirect
592 .Nm autofs
593 map to disable browsing.
594 For example:
595 .Bd -literal -offset indent
596 /net    -hosts          -nosuid,nobrowse
597 /home   auto_home
600 In this case, any
601 .Ar hostname Ns s
602 would only be visible in
603 .Pa /net
604 after they are mounted, but all potential mount points would be visible under
605 .Pa /home .
607 .Sy -browse
608 option enables browsability of
609 .Nm autofs
610 file systems.
611 This is the default for all indirect maps.
614 .Sy -browse
615 option does not work in conjunction with the wildcard key.
616 .Ss Restricting Mount Maps
617 Options specified for a map are used as the default options for all the entries
618 in that map.
619 They are ignored when map entries specify their own mount options.
621 In some cases, however, it is desirable to force
622 .Sy nosuid , nodevices , nosetuid ,
624 .Sy noexec
625 for a complete mount map and its submounts.
626 This can be done by specifying the additional mount option,
627 .Sy -restrict .
628 .Bd -literal -offset indent
629 /home   auto_home       -restrict,nosuid,hard
633 .Sy -restrict
634 option forces the inheritance of all the restrictive options
635 .Sy nosuid , nodevices , nosetuid ,
637 .Sy noexec
638 as well as the restrict option itself.
639 In this particular example, the
640 .Sy nosuid
642 .Sy restrict
643 option are inherited but the
644 .Sy hard
645 option is not.
647 .Sy restrict
648 option also prevents the execution of
649 .Qq executable maps
650 and is enforced for auto mounts established by programs with fewer than all
651 privileges available in their zone.
652 .Sh FILES
653 .Bl -tag -width Ds
654 .It Pa /etc/auto_master
655 Master automount map.
656 .It Pa /etc/auto_home
657 Map to support automounted home directories.
658 .It Pa /etc/nsswitch.conf
659 Name service switch configuration file.
661 .Xr nsswitch.conf 4 .
663 .Sh EXIT STATUS
664 .Ex -std
665 .Sh SEE ALSO
666 .Xr isainfo 1 ,
667 .Xr ls 1 ,
668 .Xr svcs 1 ,
669 .Xr uname 1 ,
670 .Xr automountd 1M ,
671 .Xr mount 1M ,
672 .Xr mount_nfs 1M ,
673 .Xr svcadm 1M ,
674 .Xr autofs 4 ,
675 .Xr attributes 5 ,
676 .Xr nfssec 5 ,
677 .Xr smf 5
678 .Sh NOTES
679 .Nm autofs
680 mount points must not be hierarchically related.
682 does not allow an
683 .Nm autofs
684 mount point to be created within another
685 .Nm autofs
686 mount.
688 Since each direct map entry results in a new
689 .Nm autofs
690 mount such maps should be kept short.
692 Entries in both direct and indirect maps can be modified at any time.
693 The new information is used when
694 .Nm automountd
695 next uses the map entry to do a mount.
697 New entries added to a master map or direct map will not be useful until the
698 automount command is run to install them as new
699 .Nm autofs
700 mount points.
701 New entries added to an indirect map may be used immediately.
703 As of the Solaris 2.6 release, a listing
704 .Po see
705 .Xr ls 1
707 of the
708 .Nm autofs
709 directory associated with an indirect map shows all potential mountable
710 entries.
711 The attributes associated with the potential mountable entries are temporary.
712 The real file system attributes will only be shown once the file system has been
713 mounted.
715 Default mount options can be assigned to an entire map when specified as an
716 optional third field in the master map.
717 These options apply only to map entries that have no mount options.
718 Note that map entities with options override the default options, as at this
719 time, the options do not concatenate.
720 The concatenation feature is planned for a future release.
722 When operating on a map that invokes an NFS mount, the default number of
723 retries for the automounter is 0, that is, a single mount attempt, with no
724 retries.
725 Note that this is significantly different from the default
726 .Pq 10000
727 for the
728 .Xr mount_nfs 1M
729 utility.
731 The Network Information Service
732 .Pq NIS
733 was formerly known as Sun Yellow Pages
734 .Pq YP .
735 The functionality of the two remains the same.
739 service is managed by the service management facility,
740 .Xr smf 5 ,
741 under the service identifier:
742 .Bd -literal -offset indent
743 svc:/system/filesystem/autofs:default
746 Administrative actions on this service, such as enabling, disabling, or
747 requesting restart, can be performed using
748 .Xr svcadm 1M .
749 The service's status can be queried using the
750 .Xr svcs 1
751 command.