autofs-5.1.9

Introduction to Autofs

Autofs controls the operation of the automount daemons. The automount daemons automatically mount filesystems when they are accessed and unmount them after a period of inactivity. This is done based on a set of pre-configured maps.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.

Package Information

Autofs Dependencies

Required

libtirpc-1.3.6 and rpcsvc-proto-1.4.4

Optional

nfs-utils-2.8.1, libnsl-2.0.1, libxml2-2.13.5, MIT Kerberos V5-1.21.3, OpenLDAP-2.6.9 (client only), and Cyrus SASL-2.1.28

Kernel Configuration

Verify that automounter kernel support has been enabled:

File systems --->
  <*/M> Kernel automounter support (supports v3, v4 and v5)          [AUTOFS_FS]

Optionally, enable the following options in the kernel configuration:

File systems --->
  [*] Network File Systems --->                            [NETWORK_FILESYSTEMS]
    <*/M> NFS client support                                            [NFS_FS]
    <*/M> SMB3 and CIFS support (advanced network filesystem)             [CIFS]

Recompile and install the new kernel, if necessary.

Installation of Autofs

Install Autofs by running the following commands:

./configure --prefix=/usr             \
            --with-mapdir=/etc/autofs \
            --with-libtirpc           \
            --without-openldap        \
            --mandir=/usr/share/man   &&
make

This package does not come with a test suite.

Now, as the root user:

make install
[Caution]

Caution

If autofs is already installed on your system, be sure to backup your configuration files. They'll be overwritten by the following command.

Install the default configuration files, still as the root user:

make install_samples

Command Explanations

--with-libtirpc: This switch forces the package to use libtirpc for RPC functionality instead of relying on implementation from Glibc, which was removed in LFS 8.1.

--without-openldap: This switch disables openldap if found. If openldap is desired, omit this switch. Note that openldap support in autofs requires MIT Kerberos V5-1.21.3.

Configuring Autofs

Config Files

/etc/sysconfig/autofs.conf, /etc/autofs/auto.master, /etc/autofs/auto.misc, and /etc/autofs/auto.net

Configuration Information

The installation process creates auto.master, auto.misc, auto.smb, and auto.net. Replace the auto.master file with the following commands as the root user:

mv /etc/autofs/auto.master /etc/autofs/auto.master.bak &&
cat > /etc/autofs/auto.master << "EOF"
# Begin /etc/autofs/auto.master

/media/auto  /etc/autofs/auto.misc  --ghost
#/home        /etc/autofs/auto.home

# End /etc/autofs/auto.master
EOF

This file creates a new media directory, /media/auto that will overlay any existing directory of the same name. In this example, the file, /etc/autofs/auto.misc, has a line:

cd   -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

that will mount a cdrom as /media/auto/cd if that directory is accessed. The --ghost option tells the automounter to create ghost versions (i.e. empty directories) of all the mount points listed in the configuration file regardless whether any of the file systems are actually mounted or not. This is very convenient and highly recommended, because it will show you the available auto-mountable file systems as existing directories, even when their file systems aren't currently mounted. Without the --ghost option, you'll have to remember the names of the directories. As soon as you try to access one of them, the directory will be created and the file system will be mounted. When the file system gets unmounted again, the directory is destroyed too, unless the --ghost option was given.

[Note]

Note

An alternative method would be to specify another automount location such as /var/lib/auto/cdrom and create a symbolic link from /media/cdrom to the automount location.

The auto.misc file must be configured to your working hardware. The loaded configuration file should load your cdrom if /dev/cdrom is active or it can be edited to match your device setup. Examples for floppies are available in the file and easily activated. Documentation for this file is available using the man 5 autofs command.

In the second line, if enabled, a user's home directory would be mounted via NFS upon login. The /etc/home.auto would need to exist and have an entry similar to:

joe  example.org:/export/home/joe

where the directory /export/home/joe is exported via NFS from the system example.org. NFS shares are covered on the next page.

This package could also be used to mount SMB shares, however that feature is not configured in these instructions. For additional configuration information, see the man pages for auto.master(5). There are also web resources such as this AUTOFS HOWTO available.

Boot Script

autofs installs its own boot script, but it has no capability for logging or visual conformance with other BLFS scripts. It will be replaced by an enhanced version.

Install the /etc/init.d/autofs mount script included with the blfs-bootscripts-20240913 package.

make install-autofs

The time-out variable is set in /etc/sysconfig/autofs.conf. The installed file sets a default of 60 seconds of inactivity before unmounting the device. A much shorter time may be necessary to protect buffer writing to a floppy if users tend to remove the media prior to the timeout setting.

Contents

Installed Program: automount
Installed Libraries: libautofs.so. lookup_dir.so, lookup_file.so, lookup_files.so (symlink to lookup_file.so), lookup_hosts.so, lookup_ldap.so (optional), lookup_multi.so, lookup_nis.so (symlink to lookup_yp.so), lookup_program.so, lookup_userhome.so, lookup_yp.so, mount_afs.so, mount_autofs.so, mount_bind.so, mount_changer.so, mount_ext2.so, mount_ext3.so (symlink to mount_ext2.so), mount_ext4.so (symlink to mount_ext2.so), mount_generic.so, mount_nfs.so, mount_nfs4.so (symlink to mount_nfs.so), parse_amd.so, and parse_sun.so
Installed Directories: /usr/lib/autofs and /etc/autofs

Short Descriptions

automount

is the daemon that performs the mounting when a request is made for the device