Use automounter to mount remote filesystems automatically
Automounting NFS Filesystems(Use Automounter to mount remote filesystems)
The Linux automounter automatically mounts filesystems the first time you access them. You can configure the automounter to mount remote filesystems as well, using NFS. If network activity is costly, such as when you pay by the minute, you might want to configure the automounter to mount NFS filesystems. The automounter works by monitoring a particular directory (called an automount point) and taking action whenever a user changes into one of its subdirectories.
The automount Process
What is the process for Automounting NFS filesystems in Red Hat Linux?
In Red Hat Linux, automounting NFS filesystems can be achieved using the autofs service. Here are the general steps to configure automounting of NFS filesystems in Red Hat Linux:
Install the autofs package using the package manager of your choice, if it's not already installed.
Edit the "/etc/auto.master" file to add a line that specifies the mount point for the NFS filesystems. For example, to mount the NFS filesystem at "/mnt/nfs", add the following line to the end of the file:
/mnt/nfs /etc/auto.nfs
Create a new file named "/etc/auto.nfs" (or whatever name you specified in step 2) and add a line for each NFS filesystem that you want to mount. Each line should specify the mount point, the server and path of the NFS share, and any options that should be passed to the NFS client. For example:
sharename -fstype=nfs server:/path/to/share
Note that "sharename" can be any name that you want to use to identify the share.
Save the changes to the "/etc/auto.nfs" file.
Start the autofs service using the following command:
systemctl start autofs
You can also enable the service to start automatically at boot time using the following command:
systemctl enable autofs
After completing these steps, the NFS filesystem should be automatically mounted at the specified mount point when accessed by a user or application. If there are any issues with the configuration, you can check the logs in "/var/log/messages" or use the "systemctl status autofs" command to view the status of the autofs service.
The following series of imagesillustrates how the automount process works:
Workflow Summary
When a user accesses an automount directory, the system consults the /etc/auto.master file
The system looks up the automount point in /etc/auto.master file, then consults the associated map file. In this example
The map file pairs keys to locations. When the user accesses on the listed keys, the automounter pulls files from the associated location.
In this example, the files were located on a network server.
Auto-Mounting an NFS Share
The following procedure illustrates how to configure autofs to auto-mount an NFS share available on your network. It assumes you are familiar with NFS exports.
Edit the master map file /etc/auto.master:
sudo vim /etc/auto.master
Add a new entry for the new NFS mount at the end of /etc/auto.master:
/nfs/etc/auto.nfs --timeout=10
It tells autofs that the base mount point is /nfs, the NFS shares are specified in the /etc/auto.nfs map, and that all shares in this map will be automatically unmounted after 10 seconds of inactivity.
Create a new map file for NFS shares:
sudo vim /etc/auto.nfs
/etc/auto.nfs normally contains a separate line for each NFS share.
Add the line describing the mount point and the NFS share network address:
export jupiter.com:/home/geeko/doc/export
The above line means that the /home/geeko/doc/export directory on the jupiter.com host will be auto-mounted to the /nfs/export directory on the local host (/nfs is taken from the auto.master map) when requested. The /nfs/export directory will be created automatically by autofs.
Optionally comment out the related line in /etc/fstab if you previously mounted the same NFS share statically.
The line should look similar to this:
#jupiter.com:/home/geeko/doc/export /nfs/export nfs defaults 0 0
Reload autofs and check if it works:
sudo systemctl restart autofs
# ls -l /nfs/export
total 20
drwxr-xr-x 6 1001 users 4096 Oct 25 08:56 ./
drwxr-xr-x 3 root root 0 Apr 1 09:47 ../
drwxr-xr-x 5 1001 users 4096 Jan 14 2013 .images/
drwxr-xr-x 10 1001 users 4096 Aug 16 2013 .profiled/
drwxr-xr-x 3 1001 users 4096 Aug 30 2013 .tmp/
drwxr-xr-x 4 1001 users 4096 Oct 25 08:56 SLE-12-manual/
If you can see the list of files on the remote share, then autofs is functioning.
Configuring the automounter
To get automounting working, you need to:
Configure /etc/auto.master to monitor directories you wish to automount. The format for this file is: automount_point map_file. To monitor /proj for accesses, you'd put /proj /etc/auto.proj.
Configure each map file. For example, /etc/auto.proj might contain docs serv:/proj/docs and
open serv:/proj/open_projects
.
Whenever a user accesses /proj/docs or /proj/open, automounter will mount the filesystems via NFS.
The next lesson discusses how to resolve NFS problems.
Using NFS Automounter
Before moving on to the next lesson, click the Exercise link below to practice using the Automounter to configure automatic remote file access.
Using NFS Automounter
This exercise asked you to configure the /etc/auto.master file to monitor the /projects directory on your local machine. You have opened the /etc/auto.master file, now you need to add the automount point to map file association by typing
/projects/etc/auto.projects
.
You save the file and then open /etc/auto.projects. Mount the server's directories whenever users access docs or sources.
First, type
serv:/export/docs
and press Enter. Then type sources serv:/export/source and press Enter. This is the end of the Simulation.
Mounting NFS File Systems using autofs
A third option for mounting an NFS share is the use of the autofs service. Autofs uses the automount daemon to manage your mount points by only mounting them dynamically when they are accessed. Autofs consults the master map configuration file /etc/auto.master to determine which mount points are defined. It then starts an automount process with the appropriate parameters for each mount point. Each line in the master map defines a mount point and a separate map file that defines the file systems to be mounted under this mount point. For example, the
/etc/auto.misc
file might define mount points in the /misc directory; this relationship would be defined in the
/etc/auto.master file.
Each entry in auto.master has three fields. The first field is the mount point. The second field is the location of the map file, and the third field is optional. The third field can contain information such as a timeout value. For example, to mount the directory /proj52 on the remote machine penguin.example.net at the mount point /misc/myproject on your machine, add the following line to auto.master: