在linux系统中要如何的给网络文件系统(NFS)配置一个基本的自动挂载功能。想知道的朋友可以继续阅读本
LINUX系统中使用autofs挂载NFS共享的方法
大多数 Linux 文件系统在引导时挂载,并在系统运行时保持挂载状态。对于已在 fstab 中配置的任何远程文件系统也是如此。但是,有时你可能希望仅按需挂载远程文件系统。例如,通过减少网络带宽使用来提高性能,或出于原因隐藏或混淆某些目录。autofs 软件包提供此功能。在本文中,我将介绍如何配置基本的自动挂载。
首先做点假设:假设有台 NFS 服务器 tree. 已经启动并运行。另外假设一个名为 ourfiles 的数据目录还有供 Carl 和 Sarah 使用的用户目录,它们都由服务器共享。
一些实践可以使工作更好:服务器上的用户和任何客户端工作站上的帐号有相同的用户 ID。此外,你的工作站和服务器应有相同的域名。检查相关配置文件应该确认。
1
2
3
4
5
6
7
8
9
<p>alan@workstation1:~$ sudo getent passwd carl sarah</p>
<p>[sudo] password for alan:</p>
<p>carl:x:1020:1020:Carl,,,:/home/carl:/bin/bash</p>
<p>sarah:x:1021:1021:Sarah,,,:/home/sarah:/bin/bash</p>
<p>alan@workstation1:~$ sudo getent hosts</p>
<p>127.0.0.1 localhost</p>
<p>127.0.1.1 workstation1. workstation1</p>
<p>10.10.1.5 tree. tree</p>
如你所见,客户端工作站和 NFS 服务器都在 hosts 文件中配置。我假设这是一个基本的家庭甚至小型办公室网络,可能缺乏适合的内部域名服务(即 DNS)。
安装软件包
你只需要安装两个软件包:用于 NFS 客户端的 nfs-common 和提供自动挂载的 autofs。
1
<p>alan@workstation1:~$ sudo apt-get install nfs-common autofs</p>
你可以验证 autofs 相关的文件是否已放在 /etc 目录中:
1
2
3
4
5
6
7
<p>alan@workstation1:~$ cd /etc; ll auto*</p>
<p>-rw-r--r-- 1 root root 12596 Nov 19 2015 autofs.conf</p>
<p>-rw-r--r-- 1 root root 857 Mar 10 2017 auto.master</p>
<p>-rw-r--r-- 1 root root 708 Jul 6 2017 auto.misc</p>
<p>-rwxr-xr-x 1 root root 1039 Nov 19 2015 *</p>
<p>-rwxr-xr-x 1 root root 2191 Nov 19 2015 auto.smb*</p>
<p>alan@workstation1:/etc$</p>
现在你需要编辑其中几个文件并添加 auto.home 文件。首先,将以下两行添加到文件 auto.master 中:
1
2
<p>/mnt/tree /etc/auto.misc</p>
<p>/home/tree /etc/auto.home</p>
专业:管理企业网络 网站运维 机房综合布线 无线覆盖解决方案
每行以挂载 NFS 共享的目录开头。继续创建这些目录:
1
<p>alan@workstatio