From d6d9d254f9e7de3035a09310bfea540932b7567b Mon Sep 17 00:00:00 2001 From: BA1001 Date: Fri, 23 Dec 2022 13:14:11 +0000 Subject: [PATCH] Add AutoFS --- etc/auto.master##hostname.pi01 | 38 ++ etc/auto.master.d##hostname.pi01/auto.das | 2 + etc/auto.master.d##hostname.pi01/das.autofs | 1 + etc/autofs.conf##hostname.pi01 | 435 ++++++++++++++++++++ 4 files changed, 476 insertions(+) create mode 100644 etc/auto.master##hostname.pi01 create mode 100644 etc/auto.master.d##hostname.pi01/auto.das create mode 100644 etc/auto.master.d##hostname.pi01/das.autofs create mode 100644 etc/autofs.conf##hostname.pi01 diff --git a/etc/auto.master##hostname.pi01 b/etc/auto.master##hostname.pi01 new file mode 100644 index 0000000..13208f2 --- /dev/null +++ b/etc/auto.master##hostname.pi01 @@ -0,0 +1,38 @@ +# +# Sample auto.master file +# This is a 'master' automounter map and it has the following format: +# mount-point [map-type[,format]:]map [options] +# For details of the format look at auto.master(5). +# +#/misc /etc/auto.misc +# +# NOTE: mounts done from a hosts map will be mounted with the +# "nosuid" and "nodev" options unless the "suid" and "dev" +# options are explicitly given. +# +#/net -hosts +# +# Include /etc/auto.master.d/*.autofs +# To add an extra map using this mechanism you will need to add +# two configuration items - one /etc/auto.master.d/extra.autofs file +# (using the same line format as the auto.master file) +# and a separate mount map (e.g. /etc/auto.extra or an auto.extra NIS map) +# that is referred to by the extra.autofs file. +# ++dir:/etc/auto.master.d +# +# If you have fedfs set up and the related binaries, either +# built as part of autofs or installed from another package, +# uncomment this line to use the fedfs program map to access +# your fedfs mounts. +#/nfs4 /usr/sbin/fedfs-map-nfs4 nobind +# +# Include central master map if it can be found using +# nsswitch sources. +# +# Note that if there are entries for /net or /misc (as +# above) in the included master map any keys that are the +# same will not be seen as the first read key seen takes +# precedence. +# ++auto.master diff --git a/etc/auto.master.d##hostname.pi01/auto.das b/etc/auto.master.d##hostname.pi01/auto.das new file mode 100644 index 0000000..ceae308 --- /dev/null +++ b/etc/auto.master.d##hostname.pi01/auto.das @@ -0,0 +1,2 @@ +hdd3tb -fstype=ext4,rw :/dev/disk/by-uuid/1f2719c5-e32c-429d-83c8-9a38921fde5a +usb64gb -fstype=ext4,rw :/dev/disk/by-uuid/de37650f-bf6a-48b7-b6ea-4dafa966b289 diff --git a/etc/auto.master.d##hostname.pi01/das.autofs b/etc/auto.master.d##hostname.pi01/das.autofs new file mode 100644 index 0000000..b0a9a10 --- /dev/null +++ b/etc/auto.master.d##hostname.pi01/das.autofs @@ -0,0 +1 @@ +/mnt/das /etc/auto.master.d/auto.das --timeout 300 diff --git a/etc/autofs.conf##hostname.pi01 b/etc/autofs.conf##hostname.pi01 new file mode 100644 index 0000000..4f9a7c7 --- /dev/null +++ b/etc/autofs.conf##hostname.pi01 @@ -0,0 +1,435 @@ +# +# Define default options for autofs. +# +[ autofs ] +# +# master_map_name - default map name for the master map. +# +master_map_name = /etc/auto.master +# +# timeout - set the default mount timeout in seconds. The internal +# program default is 10 minutes, but the default installed +# configuration overrides this and sets the timeout to 5 +# minutes to be consistent with earlier autofs releases. +# +timeout = 300 +# +# master_wait - set the default maximum number of retries (actual +# iterations is half this, each is delayed by 2 seconds +# before retrying) waiting for the master map to become +# available if it cannot be read at program start +# (default 10, then continue). This can be longer +# if the map source itself waits for availability +# (such as sss). +# +#master_wait = 10 +# +# negative_timeout - set the default negative timeout for +# failed mount attempts (default 60). +# +#negative_timeout = 60 +# +# mount_verbose - use the -v flag when calling mount(8) and log some +# process information about the requestor and its +# parent. +# +#mount_verbose = no +# +# mount_wait - time to wait for a response from mount(8). +# Setting this timeout can cause problems when +# mount would otherwise wait for a server that +# is temporarily unavailable, such as when it's +# restarting. The default setting (-1) of waiting +# for mount(8) usually results in a wait of around +# 3 minutes. +# +#mount_wait = -1 +# +# umount_wait - time to wait for a response from umount(8). +# +#umount_wait = 12 +# +# browse_mode - maps are browsable by default. +# +browse_mode = no +# +# mount_nfs_default_protocol - set the default protocol that mount.nfs(8) +# uses when performing a mount. Autofs needs +# to know the default NFS protocol that +# mount.nfs(8) uses so it can do special case +# handling for its availability probe for +# different NFS protocols. Since we can't +# identify the default automatically we need +# to set it in our configuration. +# +#mount_nfs_default_protocol = 3 +# +# append_options - append to global options instead of replace. +# +#append_options = yes +# +# logging - set default log level "none", "verbose" or "debug" +# +#logging = none +# +# force_standard_program_map_env - disable the use of the "AUTOFS_" +# prefix for standard environment variables when +# executing a program map. Since program maps +# are run as the privileged user this opens +# automount(8) to potential user privilege +# escalation when the program map is written +# in a language that can load components from, +# for example, a user home directory. +# +# force_standard_program_map_env = no +# +# use_mount_request_log_id - Set whether to use a mount request log +# id so that log entries for specific mount +# requests can be easily identified in logs +# that have multiple concurrent requests. +# +#use_mount_request_log_id = no +# +# Define base dn for map dn lookup. +# +# Define server URIs +# +# ldap_uri - space separated list of server uris of the form +# ://[/] where can be ldap +# or ldaps. The option can be given multiple times. +# Map entries that include a server name override +# this option. +# +# This configuration option can also be used to +# request autofs lookup SRV RRs for a domain of +# the form :///[]. Note that a +# trailing "/" is not allowed when using this form. +# If the domain dn is not specified the dns domain +# name (if any) is used to construct the domain dn +# for the SRV RR lookup. The server list returned +# from an SRV RR lookup is refreshed according to +# the minimum ttl found in the SRV RR records or +# after one hour, whichever is less. +# +#ldap_uri = "" +# +# ldap_timeout - timeout value for the synchronous API calls +# (default is LDAP library default). +# +#ldap_timeout = -1 +# +# ldap_network_timeout - set the network response timeout (default 8). +# +#ldap_network_timeout = 8 +# +# search_base - base dn to use for searching for map search dn. +# Multiple entries can be given and they are checked +# in the order they occur here. +# +#search_base = "" +# +# Define the LDAP schema to used for lookups +# +# If no schema is set autofs will check each of the schemas +# below in the order given to try and locate an appropriate +# basdn for lookups. If you want to minimize the number of +# queries to the server set the values here. +# +#map_object_class = nisMap +#entry_object_class = nisObject +#map_attribute = nisMapName +#entry_attribute = cn +#value_attribute= nisMapEntry +# +# Other common LDAP naming +# +#map_object_class = automountMap +#entry_object_class = automount +#map_attribute = ou +#entry_attribute = cn +#value_attribute= automountInformation +# +#map_object_class = automountMap +#entry_object_class = automount +#map_attribute = automountMapName +#entry_attribute = automountKey +#value_attribute= automountInformation +# +# auth_conf_file - set the default location for the SASL +# authentication configuration file. +# +#auth_conf_file = /etc/autofs_ldap_auth.conf +# +# map_hash_table_size - set the map cache hash table size. +# Should be a power of 2 with a ratio of +# close to 1:8 for acceptable performance +# with maps up to around 8000 entries. +# See autofs.conf(5) for more details. +# +#map_hash_table_size = 1024 +# +# use_hostname_for_mounts - nfs mounts where the host name resolves +# to more than one IP address normally need +# to use the IP address to ensure a mount to +# a host that isn't responding isn't done. +# If that behaviour is not wanted then set +# this to "yes", default is "no". +# +#use_hostname_for_mounts = "no" +# +# disable_not_found_message - The original request to add this log message +# needed it to be unconditional. That produces, IMHO, +# unnecessary noise in the log so a configuration option +# has been added to provide the ability to turn it off. +# The default is "no" to maintain the current behaviour. +# +#disable_not_found_message = "no" +# +# use_ignore_mount_option - This option is used to enable the use of autofs +# pseudo option "disable". This option is used as a +# hint to user space that the mount entry should be +# ommitted from mount table listings. The default is +# "no" to avoid unexpected changes in behaviour and +# so is an opt-in setting. +# +#use_ignore_mount_option = no +# +# sss_master_map_wait - When sssd is starting up it can sometimes return +# "no such entry" for a short time until it has read +# in the LDAP map information. Internal default is 0 +# (don't wait) or 10 if sss supports returning EHSTDOWN. +# If there is a problem with autofs not finding the +# master map at startup (when it should) then try setting +# this to 10 or more. If the sss library supports returning +# EHOSTDOWN when the provider is down then this value +# is how long to wait between retries reading the +# master map. When reading dependent maps or looking +# up a map key this value is multiplied by the number +# of retries that would be used when reading the master +# map. (Default, 0 or 10 if sss suppprts returning +# EHOSTDOWN). +# +#sss_master_map_wait = 0 +# +# Options for the amd parser within autofs. +# +# amd configuration options that are aren't used, haven't been +# implemented or have different behaviour within autofs. +# +# A number of the amd configuration options are not used by autofs, +# some because they are not relevant within autofs, some because +# they are done differently in autofs and others that are not yet +# implemented. +# +# Since "mount_type" is always autofs (because there's no user space +# NFS server) the configuration entries relating to that aren't used. +# Also, server availability is done differently within autofs so the +# options that relate to the amd server monitoring sub-system are +# also not used. +# +# These options are mount_type, auto_attrcache, portmap_program, +# nfs_vers_ping, nfs_allow_any_interface, nfs_allow_insecure_port, +# nfs_proto, nfs_retransmit_counter, nfs_retransmit_counter_udp, +# nfs_retransmit_counter_tcp, nfs_retransmit_counter_toplvl, +# nfs_retry_interval, nfs_retry_interval_udp, nfs_retry_interval_tcp, +# nfs_retry_interval_toplvl and nfs_vers. +# +# +# Other options that are not used within the autofs implementation: +# +# log_file, truncate_log - autofs used either stderr when running in +# the foreground or sends its output to syslog so an alternate +# log file (or truncating the log) can't be used. +# +# print_pid - there's no corresponding option for this within autofs. +# +# use_tcpwrappers, show_statfs_entries - there's no user space NFS +# server to control access to so this option isn't relevant. +# The show_statfs_entries can't be implemented for the same +# reason. +# +# debug_mtab_file - there's no user space NFS server and autofs +# avoids using file based mtab whenever possible. +# +# sun_map_syntax - obviously, are provided by autofs itself. +# +# plock, show_statfs_entries, preferred_amq_port - not supported. +# +# ldap_cache_maxmem, ldap_cache_seconds - external ldap caching +# is not used by autofs. +# +# ldap_proto_version - autofs always attempts to use the highest +# available ldap protocol version. +# +# cache_duration, map_reload_interval, map_options - the map +# entry cache is continually updated and stale entries +# cleaned on re-load, which is done when map changes are +# detected so these configuration entries are not used +# by autofs. +# +# localhost_address - is not used within autofs. This +# configuration option was only used in the amd user +# space server code and is not relevant within autofs. +# +# +# Options that are handled differently within autofs: +# +# pid_file - must be given as a command line option on startup. +# +# print_version - program version and feature information is obtained +# by using the automount command line option "-V". +# +# debug_options, log_options - autofs has somewhat more limited +# logging and debug logging options. When the log_options +# options is encountered it is converted to the nearest +# matching autofs logging option. Since the configuration +# option debug_options would be handled the same way it +# is ignored. +# +# restart_mounts - has no sensible meaning within autofs because autofs +# always tries to re-connect to existing mounts. While this +# has its own set of problems not re-connecting to existing +# mounts always results in a non-functional automount tree if +# mounts were busy at the last shutdown (as is also the case +# with amd when using mount_type autofs). +# +# forced_unmounts - detaching mounts often causes serious problems +# for users of existing mounts. It is used by autofs in some +# cases, either at the explicit request of the user (with a +# command line or init option) and in some special cases during +# program operation but is avoided whenever possible. +# +# +# A number of configuration options are not yet implemented: +# +# fully_qualified_hosts - not yet implemented. +# +# unmount_on_exit - since autofs always tries to re-connect +# to mounts left mounted from a previous shutdown this +# is a sensible option to implement and that will be +# done. +# +# exec_map_timeout - a timeout is not currently used for +# for program maps, might be implemented. +# +# tag - the tag option is not implemented within autofs. +# +# +# Supported options: +# +# arch, karch, os, osver - these options default to what is returned +# from uname(2) and can be overridden if required. +# +# full_os - has no default and must be set in the configuration +# if used in maps. +# +# cluster - if not set defaults to the host domain name. This option +# corresponds to the HP_UX cluster name (according to the amd +# source) and is probably not used in Linux but is set anyway. +# +# vendor - has a default value of "unknown", it must be set in the +# configuration if used in maps. +# +# auto_dir - is the base name of the mount tree used for external +# mounts that are sometimes needed by amd maps. Its default +# value is "/a". +# +# map_type - specifies the autofs map source, such as file, nis, +# ldap etc. and has no default value set. +# +# map_defaults - is used to override /defaults entries within maps +# and can be used to provide different defaults on specific +# machines without having to modify centrally managed maps. +# It is empty by default. +# +# search_path - colon seperated paths to search for maps that +# are not specified as a full path. +# +# dismount_interval - is equivalent to the autofs timeout option. It +# is only possible to use this with type "auto" mounts due +# to the way the autofs kernel module performs expiry. It +# takes its default value from the autofs internal default +# of 600 seconds. +# +# browsable_dirs - make map keys visible in directory listings. +# Note that support for the "fullybrowsable" option cannot +# be added using the existing kernel to user space autofs +# implementation. +# +# autofs_use_lofs - if set to "yes" autofs will attempt to use bind +# mounts for type "link" entries when possible. +# +# nis_domain - allows setting of a domain name other than the system +# default. +# +# local_domain - is used to override (or set) the host domain name. +# +# normalize_hostnames - if set to "yes" then the contents of ${rhost} +# is translated in its official host name. +# +# domain_strip - if set to "yes" the domain name part of the host +# is stripped when normalizing hostnames. This can be useful +# when using of the same maps in a multiple domain environment. +# +# normalize_slashes - is set to "yes" by default and will collapse +# multiple unescaped occurrences of "/" to a single "/". +# +# selectors_in_defaults, selectors_on_default - has a default value +# of "no". If set to "yes" then any defaults entry will be +# checked for selectors to determine the values to be used. +# selectors_in_defaults is the preferred option to use. +# +# ldap_base - has no default value. It must be set to the base dn +# that is used for queries if ldap is to be used as a map +# source. +# +# ldap_hostports - has no default value set. It must be set to +# the URI of the LDAP server to be used for lookups when +# ldap is used a map source. It may contain a comma or +# space seperated list of LDAP URIs. +# +# hesiod_base - the base name used for hesiod map sources. +# +# Additional configuration options added: +# +# linux_ufs_mount_type - set the default system filesystem type that's +# used for mount type ufs. There's no simple way to determine +# what the system default filesystem is and am-utils needs to +# be continually updated to do this and can easily get it wrong +# anyway. +# +# +# Define global options for the amd parser within autofs. +# +[ amd ] +# +# Override the internal default with the same timeout that +# is used by the override in the autofs configuration, sanity +# only change. +# +dismount_interval = 300 +# +# map_type = file +# +# Overriding this can cause autofs to use less resources because +# it will use symlinks instead of bind mounts in certain cases. +# You should ensure that the autofs kernel module you are using +# supports expiration of symlinks for best results (although this +# appears to work reasonably well most of the time without the +# update). +# +# autofs_use_lofs = yes +# +# Several configuration options can be set per mount point. +# In particulr map_type, map_name, map_defaults, search_path, +# browsable_dirs, dismount_interval and selectors_in_defaults +# (not all of which are currently implemented, see above). +# +# Also, if a section for an amd mount point is defined here +# it isn't necessary to specify the format in the corresponding +# master map entry and the format will be inherited for type +# "auto" mounts. +# +#[ /example/mount ] +#dismount_interval = 60 +#map_type = nis