2 .\" Copyright (c) 1997-2006 Erez Zadok
3 .\" Copyright (c) 1990 Jan-Simon Pendry
4 .\" Copyright (c) 1990 Imperial College of Science, Technology & Medicine
5 .\" Copyright (c) 1990 The Regents of the University of California.
6 .\" All rights reserved.
8 .\" This code is derived from software contributed to Berkeley by
9 .\" Jan-Simon Pendry at Imperial College, London.
11 .\" Redistribution and use in source and binary forms, with or without
12 .\" modification, are permitted provided that the following conditions
14 .\" 1. Redistributions of source code must retain the above copyright
15 .\" notice, this list of conditions and the following disclaimer.
16 .\" 2. Redistributions in binary form must reproduce the above copyright
17 .\" notice, this list of conditions and the following disclaimer in the
18 .\" documentation and/or other materials provided with the distribution.
19 .\" 3. All advertising materials mentioning features or use of this software
20 .\" must display the following acknowledgment:
21 .\" This product includes software developed by the University of
22 .\" California, Berkeley and its contributors.
23 .\" 4. Neither the name of the University nor the names of its contributors
24 .\" may be used to endorse or promote products derived from this software
25 .\" without specific prior written permission.
27 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
28 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
31 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
39 .\" %W% (Berkeley) %G%
41 .\" $Id: amd.conf.5,v 1.39.2.5 2006/04/21 01:12:04 ezk Exp $
57 file is the configuration file for
59 as part of the am-utils suite.
64 contains runtime configuration information for the
68 The file consists of sections and parameters.
69 A section begins with the
70 name of the section in square brackets and continues until the next section
71 begins or the end of the file is reached.
72 Sections contain parameters of the
74 .Dq Ar name No = Ar value .
76 The file is line-based \[em] that is, each newline-terminated line represents
77 either a comment, a section name or a parameter.
81 Section, parameter names and their values are case sensitive.
83 Only the first equals sign in a parameter is significant.
85 or after the first equals sign is discarded.
87 internal whitespace in section and parameter names is irrelevant.
89 and trailing whitespace in a parameter value is discarded.
91 whitespace within a parameter value is not allowed, unless the whole
92 parameter value is quoted with double quotes as in
93 .Dq Ar name No = Qq Li "some\ value" .
95 Any line beginning with a pound sign (#) is ignored, as are lines containing
98 The values following the equals sign in parameters are all either a string
99 (no quotes needed if string does not include spaces) or a boolean, which may
102 Case is significant in all values.
104 cache timeouts are numeric.
106 .Ss "The [global] section"
107 Parameters in this section either apply to
109 as a whole, or to all other
110 regular map sections which follow.
111 There should be only one global section
112 defined in one configuration file.
114 It is highly recommended that this section be specified first in the
116 If it is not, then regular map sections which precede
117 it will not use global values defined later.
118 .Ss "Regular [/map] sections"
119 Parameters in regular (non-global) sections apply to a single map entry.
120 For example, if the map section
122 is defined, then all parameters following it will be applied to the
125 -managed mount point.
127 .Ss "Parameters common to all sections"
128 These parameters can be specified either in the global or a map specific
130 Entries specified in a map-specific section override the default
131 value or one defined in the global section.
132 If such a common parameter is
133 specified only in the global section, it is applicable to all regular map
134 sections that follow.
136 .It Va browsable_dirs Pq string, default=no
141 top-level mount points will be browsable to
144 This means you could run for example
146 and see what keys are available to mount in that directory.
152 entry, wildcard entries, and those with a
154 in them are not included.
157 to this option, all but
160 Note that if you run a command which will attempt to
162 the entries, such as often done by
167 will attempt to mount
170 This is often called a
172 .It Va map_defaults Pq string, default no empty
173 This option sets a string to be used as the map's /defaults entry,
174 overriding any /defaults specified in the map.
175 This allows local users to
176 override map defaults without modifying maps globally.
177 .It Va map_options Pq string, default no options
178 This option is the same as specifying map options on the command line to
181 .Dq Li "cache:=all" .
182 .It Va map_type Pq string, default search all map types
185 will initialize the map only for the type given.
187 useful to avoid the default map search type used by
190 and can have undesired side-effects such as initializing
196 .Bl -tag -width ".Cm nisplus" -compact
202 Hesiod name service from MIT
204 Lightweight Directory Access Protocol
206 (New) dbm style hash files
208 Network Information Services (version 2)
210 Network Information Services Plus (version 3)
216 .It Va mount_type Pq string, default=nfs
219 mount types default to
226 map mount points, for the local host it is running on.
231 will be an autofs server for those mount points.
232 .It Va autofs_use_lofs Pq string, default=yes
237 will use lofs-type (loopback) mounts
238 for type:=link mounts.
239 This has the advantage of mounting in place, and
240 users get to the see the same pathname that they chdir'ed into.
246 will use symlinks instead: that code is more
247 tested, but negates autofs's big advantage of in-place mounts.
248 .It Va search_path Pq string, default no search path
249 This provides a (colon-delimited) search path for file maps.
251 path, sites can allow for local map customizations and overrides, and can
253 distributed maps in several locations as needed.
254 .It Va selectors_in_defaults Pq boolean, default=no
257 then the /defaults entry of maps will search for and process any
258 selectors before setting defaults for all other keys in that map.
260 when you want to set different options for a complete map based on some
262 For example, you may want to better the NFS performance over
263 slow slip-based networks as follows:
266 wire==slip-net;opts:=intr,rsize=1024,wsize=1024 \\
267 wire!=slip-net;opts:=intr,rsize=8192,wsize=8192
269 Deprecated form: selectors_on_default
271 .Ss "Parameters applicable to the global section only"
273 .It Va arch Pq string, default to compiled in value
278 Allows you to override the value of the
282 .It Va auto_attrcache Pq numeric, default=0
283 Specify in seconds (or units of 0.1 seconds, depending on the OS), what is
284 the (kernel-side) NFS attribute cache timeout for
288 A value of 0 is supposed to turn off attribute caching, meaning
291 will be consulted via a kernel-RPC each time someone stat()'s
292 the mount point (which could be abused as a denial-of-service attack).
293 Warning: some OSs are incapable of turning off the NFS attribute cache
297 may not work reliably under heavy load.
301 document in the Am-utils distribution for more details.
302 .It Va auto_dir Pq string, default= Ns Pa /a
307 This sets the private directory where
310 sub-directories for its real mount points.
311 .It Va cache_duration Pq numeric, default=300
316 Sets the duration in seconds that looked-up or mounted map
317 entries remain in the cache.
318 .It Va cluster Pq string, default no cluster
323 Specifies the alternate
326 .It Va debug_mtab_file Pq string, default= Ns Pa /tmp/mnttab
327 Path to mtab file that is used by
329 to store a list of mounted
330 file systems during debug-mtab mode.
331 This option only applies
332 to systems that store mtab information on disk.
333 .It Va debug_options Pq string, default no debug options
338 Specify any debugging options for
341 am-utils was configured for debugging using the
346 option alone can be turned on via
347 .Fl Fl enable-debug Ns = Ns Cm mem .
348 Otherwise debugging options are ignored.
350 comma delimited, and can be preceded by the string
354 You can get the list of supported debugging options by running
358 .Bl -tag -width ".Cm xdrtrace" -compact
371 info service specific debugging
374 trace memory allocations
382 full debug but no daemon
384 trace protocol and NFS mount arguments
388 .It Va dismount_interval Pq numeric, default=120
393 Specify, in seconds, the time between attempts to dismount
394 file systems that have exceeded their cached times.
395 .It Va domain_strip Pq boolean, default=yes
399 name part referred to by ${rhost} is stripped off.
401 useful to keep logs and smaller.
405 part is left changed.
406 This is useful when using multiple domains with
407 the same maps (as you may have hosts whose domain-stripped name is
409 .It Va exec_map_timeout Pq numeric, default=10
410 The timeout in seconds that
412 will wait for an executable map program before an answer is returned from
413 that program (or script).
414 This value should be set to as small as possible
415 while still allowing normal replies to be returned before the timer expires,
416 because during the time that the executable map program is queried,
418 is essentially waiting and is thus not responding to any other queries.
419 .It Va forced_unmounts Pq boolean, default=no
422 and the client OS supports forced or lazy unmounts, then
424 will attempt to use them if it gets any of three serious error conditions
425 when trying to unmount an existing mount point or mount on top of one:
430 This could be useful to recover from serious conditions such as hardware
431 failure of mounted disks, or NFS servers which are down permanently, were
432 migrated, or changed their IP address.
437 are forcibly unmounted using this option, which is useful to recover
440 .It Va full_os Pq string, default to compiled in value
441 The full name of the operating system, along with its version.
443 to override the compiled-in full name and version of the operating system.
444 Useful when the compiled-in name is not desired.
445 For example, the full
446 operating system name on Linux comes up as
448 but you can override it to
450 .It Va fully_qualified_hosts Pq string, default=no
454 will perform RPC authentication using fully-qualified host names.
456 necessary for some systems, and especially when performing cross-domain
458 For this function to work, the
460 variable ${hostd} is used, requiring that ${domain} not be null.
461 .It Va hesiod_base Pq string, default=automount
462 Specify the base name for hesiod maps.
463 .It Va karch Pq string, default to karch of the system
468 Allows you to override the kernel-architecture of your
470 Useful for example on Sun (Sparc) machines, where you can build one
472 binary and run it on multiple machines, yet you want each one to get
475 variable set (for example, sun4c, sun4m, sun4u, etc.)
481 to figure out the kernel architecture of
483 .It Va ldap_base Pq string, default not set
484 Specify the base name for LDAP.
485 This often includes LDAP-specific
486 values such as country and organization.
487 .It Va ldap_cache_maxmem Pq numeric, default=131072
488 Specify the maximum memory
490 should use to cache LDAP entries.
491 .It Va ldap_cache_seconds Pq numeric, default=0
492 Specify the number of seconds to keep entries in the cache.
493 .It Va ldap_hostports Pq string, default not set
494 Specify the LDAP host and port values.
495 .It Va ldap_proto_version Pq numeric, default=2
496 Specify the version of the LDAP protocol to use.
497 .It Va local_domain Pq string, default no sub-domain
502 Specify the local domain name.
503 If this option is not given
504 the domain name is determined from the hostname by removing the first
505 component of the fully-qualified host name.
506 .It Va localhost_address Pq string, default to localhost or 127.0.0.1
507 Specify the name or IP address for
509 to use when connecting the sockets
510 for the local NFS server and the RPC server.
511 This defaults to 127.0.0.1 or
512 whatever the host reports as its local address.
513 This parameter is useful on
514 hosts with multiple addresses where you want to force
518 .It Va log_file Pq string, default= Ns Pa /dev/stderr
523 Specify a file name to log
530 will send its events to the standard error file descriptor.
535 will record its events with the system logger
537 The default syslog facility used is
540 wish to change it, append its name to the log file name, delimited by a
548 will log messages via
552 facility (if it exists on the system).
553 .It Va log_options Pq string, default no logging options
558 Specify any logging options for
561 delimited, and can be preceded by the string
563 to negate their meaning.
566 logging option is only available if am-utils was configured with
567 .Fl Fl enable-debug .
568 You can get the list of supported debugging and logging
573 .Bl -tag -width ".Cm warning" -compact
579 non-fatal system errors
587 additional statistical information
589 non-fatal user errors
595 .It Va map_reload_interval Pq numeric, default=3600
596 The number of seconds that
598 will wait before it checks to see if any maps
599 have changed at their source (NIS servers, LDAP servers, files, etc.).
601 will reload only those maps that have changed.
602 .It Va nfs_allow_any_interface Pq string, default=no
605 accepts local NFS packets only from 127.0.0.1.
611 will accept local NFS packets from any
612 local interface; this is useful on hosts that may have multiple interfaces
613 where the system is forced to send all outgoing packets (even those bound to
614 the same host) via an address other than 127.0.0.1.
615 .It Va nfs_allow_insecure_port Pq string, default=no
618 will refuse requests coming from unprivileged ports (i.e.\&
619 ports >= 1024 on Unix systems), so that only privileged users and the kernel
620 can send NFS requests to it.
621 However, some kernels (certain versions of
622 Darwin, MacOS X, and Linux) have bugs that cause them to use unprivileged
623 ports in certain situations, which causes
625 to stop dead in its tracks.
626 This parameter allows
628 to operate normally even on such systems, at the
629 expense of a slight decrease in the security of its operations.
632 .Dq Li "ignoring request from foo:1234, port not reserved"
635 log, try enabling this parameter and give it another go.
636 .It Va nfs_proto Pq string, default to trying version tcp then udp
639 tries TCP and then UDP.
640 This option forces the overall
642 protocol used to TCP or UDP.
643 It overrides what is in the
648 is compiled with NFSv3 support that may not be stable.
650 this option you can turn off the complete usage of NFSv3 dynamically
651 (without having to recompile
653 until such time as NFSv3 support is
655 .It Va nfs_retransmit_counter Pq numeric, default=11
660 .Fl t Ar timeout.retransmit
663 Specifies the number of NFS retransmissions that the kernel will use to
666 .It Va nfs_retransmit_counter_udp Pq numeric, default=11
668 .Va nfs_retransmit_counter
669 option, but for all UDP mounts only.
670 .It Va nfs_retransmit_counter_tcp Pq numeric, default=11
672 .Va nfs_retransmit_counter
673 option, but for all TCP mounts only.
674 .It Va nfs_retransmit_counter_toplvl Pq numeric, default=11
676 .Va nfs_retransmit_counter
679 top-level UDP mounts.
680 .It Va nfs_retry_interval Pq numeric, default=8
685 .Fl t Ar timeout.retransmit
692 of seconds, between NFS/RPC retries (for UDP and TCP).
693 This is the value that the kernel will use to
698 relies on the kernel RPC retransmit mechanism to trigger mount retries.
700 .Va nfs_retransmit_counter
702 .Va nfs_retry_interval
703 parameters change the overall retry interval.
704 Too long an interval gives
705 poor interactive response; too short an interval causes excessive retries.
706 .It Va nfs_retry_interval_udp Pq numeric, default=8
708 .Va nfs_retry_interval
709 option, but for all UDP mounts only.
710 .It Va nfs_retry_interval_tcp Pq numeric, default=8
712 .It nfs_retry_interval
713 option, but for all TCP mounts only.
714 .It Va nfs_retry_interval_toplvl Pq numeric, default=8
716 .It nfs_retry_interval
719 top-level UDP mounts.
720 .It Va nfs_vers Pq numeric, default to trying version 3 then 2
723 tries version 3 and then version 2.
724 This option forces the
727 protocol used to version 3 or 2.
728 It overrides what is in the
730 maps, and is useful when
732 is compiled with NFSv3 support that may not
734 With this option you can turn off the complete usage of NFSv3
735 dynamically (without having to recompile
737 until such time as NFSv3
738 support is desired again.
739 .It Va nis_domain Pq string, default to local Tn NIS domain name
744 Specify an alternative
746 domain from which to fetch the
749 The default is the system domain name.
750 This option is ignored if
752 support is not available.
753 .It Va normalize_hostnames Pq boolean, default=no
760 then the name referred to by
762 is normalized relative to the host database before being used.
764 to translate aliases into
767 .It Va normalize_slashes Pq boolean, default=yes
772 will condense all multiple
774 (slash) characters into
775 one and remove all trailing slashes.
781 strings that may contain repeated or trailing slashes.
783 sometimes useful with SMB mounts, which often require multiple slash
784 characters in pathnames.
785 .It Va os Pq string, default to compiled in value
790 Allows you to override the compiled-in name of the operating
792 Useful when the built-in name is not desired for backward
793 compatibility reasons.
794 For example, if the build in name is
796 you can override it to
798 and use older maps which were written with the
800 .It Va osver Pq string, default to compiled in value
805 Overrides the compiled-in version number of the operating
807 Useful when the built in version is not desired for backward
808 compatibility reasons.
809 For example, if the build in version is
811 you can override it to
813 and use older maps that were written with
815 .It Va pid_file Pq string, default= Ns Pa /dev/stdout
816 Specify a file to store the process ID of the running daemon into.
820 will print its process ID onto the standard output.
825 Note that the PID of a running
828 also be retrieved via
830 This file is used only if the
833 .It Va plock Pq boolean, default=yes
840 lock the running executable pages of
845 performance, systems that support the
852 This way there is less chance that
853 the operating system will schedule, page out, and swap the
858 performance, at the cost of reserving the
861 process (making it unavailable for other processes).
862 .It Va portmap_program Pq numeric, default=300019
863 Specify an alternate Port-mapper RPC program number, other than the official
865 This is useful when running multiple
873 mode, without affecting the primary
876 For safety reasons, the alternate program numbers that
877 can be specified must be in the range 300019-300029, inclusive.
883 which can be used to specify an alternate program number of an
888 can fully control any number of
890 processes running on the same host.
891 .It Va preferred_amq_port Pq numeric, default=0
892 Specify an alternate Port-mapper RPC port number for
896 This is used for both UDP and TCP.
897 Setting this value to 0 (or
898 not defining it) will cause
900 to select an arbitrary port number.
903 RPC service port to a specific number is useful in firewalled or NAT'ed
904 environments, where you need to know which port
907 .It Va print_pid Pq boolean, default=no
915 will print its process ID upon starting.
916 .It Va print_version Pq boolean, default=no
921 but the version prints and
927 will print its version information string, which includes some
928 configuration and compilation values.
929 .It Va restart_mounts Pq boolean, default=no
937 will scan the mount table to determine which file systems are currently
939 Whenever one of these would have been auto-mounted,
942 .It Va show_statfs_entries Pq boolean, default=no
945 then all maps which are browsable will also show the number of
946 entries (keys) they have when
949 (This is accomplished by returning
950 non-zero values to the
953 .It Va truncate_log Pq boolean, default=no
956 then the log file (if it is a regular file), will be truncated
958 .It Va unmount_on_exit Pq boolean, default=no
963 will attempt to unmount all file systems which it knows
970 mounted file systems intact.
973 does not know about file systems mounted before it starts up,
979 .It Va use_tcpwrappers Pq boolean, default=yes
984 will use the tcpd/libwrap tcpwrappers library
985 (if available) to control
993 .It Va vendor Pq string, default to compiled in value
994 The name of the vendor of the operating system.
995 Overrides the compiled-in
997 Useful when the compiled-in name is not desired.
999 most Intel based systems set the vendor name to
1001 but you can set it to
1004 .Ss "Parameters applicable to regular map sections"
1006 .It Va map_name Pq string, must be specified
1007 Name of the map where the keys are located.
1008 .It Va tag Pq string, default no tag
1009 Each map entry in the configuration file can be tagged.
1011 specified, that map section will always be processed by
1016 will process the map if the
1020 and the value given to that command-line option
1021 matches that in the map section.
1026 configuration I use daily.
1028 # GLOBAL OPTIONS SECTION
1030 normalize_hostnames = no
1032 restart_mounts = yes
1034 log_file = /var/log/amd
1036 #debug_options = all
1038 selectors_in_defaults = yes
1039 # config.guess picks up "sunos5" and I don't want to edit my maps yet
1041 # if you print_version after setting up "os", it will show it.
1044 search_path = /etc/amdmaps:/usr/lib/amd:/usr/local/AMD/lib
1045 browsable_dirs = yes
1047 # DEFINE AN AMD MOUNT POINT
1061 map_name = amd.import
1065 map_name = amd.tftpboot
1068 .Xr hosts_access 5 ,
1077 .%B "Linux NFS and Automounter Administration"
1078 .%O ISBN 0-7821-2739-8
1083 .Pa http://www.am-utils.org/
1085 .%T Amd \- The 4.4 BSD Automounter
1090 utility first appeared in
1093 .An Erez Zadok Aq ezk@cs.sunysb.edu ,
1094 Computer Science Department, Stony Brook University, Stony Brook, New York, USA.
1096 Other authors and contributors to am-utils are listed in the
1098 file distributed with am-utils.