Linux系统下如何使用autofs挂载NFS共享

如何在网络文件系统上配置基本自动挂载功能。

网络文件系统(NFS,Network File System)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远程主机的共享分区(目录)进行操作。

NFS ( Network File System ) 是由 Linux 、 UNIX 及其他类似操作系统使用的互联网标准####协议 , 可作为它们的本地网络文件系统。它是一种活动扩展之下的开放标准 , 可支持本地 Linux ####权限和文件。


Linux系统下如何使用autofs挂载NFS共享_第1张图片

请输入图片描述


大多数Linux文件系统在引导时挂载,并在系统运行时保持挂载状态。对于已在fstab文件中配置的任何远程文件系统也是如此。但是,有时您可能希望仅按需安装远程文件系统 - 例如,通过减少网络带宽使用来提高性能,或出于安全原因隐藏或混淆某些目录。包autofs提供此功能。在本文中,我将介绍如何启动和运行基本的自动挂载配置。

首先,一些假设:假设命名的NFS服务器tree.mydatacenter.net已启动并正在运行。还假设ourfiles此服务器共享一个名为的数据目录和两个用户目录(Carl和Sarah)。一些最佳实践将使工作更好一些:最好为服务器上的用户和他们拥有帐户的任何客户端工作站使用相同的用户ID。此外,您的工作站和服务器应具有相同的域名。检查相关配置文件应该确认。


如果想深入学习Linux就可以去购买《Linux就该这么学》这本书系统的学习能获取更加详细的专业知识,有助于积累经验。


root @ centos7:〜$ sudo getent passwd carl sarah

[sudo]密码为password:

carl:x:1020:1020:Carl ,,,:/ home / carl:/ bin / bash

sarah:x:1021:1021:Sarah, ,,:/ home / sarah:/ bin / bash


root @ centos7:〜$ sudo getent hosts

127.0.0.1 localhost

127.0.1.1 work. Mydatnet.com work

10.10.1.5 www.mydatnet.com centos

如您所见,客户端工作站和NFS服务器都在hosts文件中配置。我假设一个基本的家庭甚至小型办公室网络,可能缺乏适当的内部域名服务(即DNS)。

详细的安装步骤如下: 您只需要安装两个软件包:nfs-common用于NFS客户端功能,并autofs提供automount功能。

root @ centos7:~$ sudo apt-get install nfs-common autofs

您可以验证autofs文件是否已放在etc目录中:

root @ centos7:〜# cd / etc; ll auto *

-rw-r - r-- 1 root root 12596 2015年11月19日autofs.conf

-rw-r - r-- 1 root root 857 2017年3月10日auto.master

-rw-r - r-- 1 root root 708 Jul 6 2017 auto.misc

-rwxr-xr-x 1 root root 1039 Nov 19 2015 auto.net *

-rwxr-xr-x 1 root root 2191 Nov 19 2015 auto.smb *

root @ centos7:/ etc #

配置autofs步骤如下:现在您需要编辑其中几个文件并添加该文件auto.home。首先,将以下两行添加到文件中auto.master:

/ mnt / tree /etc/auto.misc

/ home / tree /etc/auto.home


每行以安装NFS共享的目录开头。继续创建这些目录:

root @ centos7:/etc# sudo mkdir /mnt/tree /home/tree


其次,将以下行添加到文件中auto.misc:

ourfiles        -fstype=nfs     tree:/share/ourfiles


此行指示autofs将ourfiles共享安装在auto.master文件中匹配的位置auto.misc。如上所示,这些文件将在目录中提供/mnt/tree/ourfiles。


第三,auto.home使用以下行创建文件:

*               -fstype=nfs     tree:/home/&


此行指示autofs在auto.master文件中匹配的位置安装用户共享auto.home。在这种情况下,Carl和Sarah的文件将分别在目录/home/tree/carl或文件中提供/home/tree/sarah。型号(称为通配符)使每个用户的共享可以在登录时自动挂载。&符号也可以作为表示服务器端用户目录的通配符。他们的主目录应该相应地映射到passwd文件中。如果您更喜欢本地主目录,则无需执行此操作; 相反,用户可以将其用作特定文件的简单远程存储。


最后,重新启动autofs守护程序,以便识别并加载这些配置文件更改。

root @ centos7: 〜# /etc$ sudo service autofs restart


测试autofs

如果更改为文件中列出的某个目录auto.master并运行该ls命令,则不会立即看到任何内容。例如,将目录更改(cd)为/mnt/tree。首先,输出ls不会显示任何内容,但在运行后cd ourfiles,ourfiles将自动挂载共享目录。该cd命令也将被执行,您将被放入新安装的目录中。


root @ centos7:〜# cd / mnt / tree

root @ centos7:〜# / mnt / tree $ ls

root @ centos7:〜# / mnt / tree $ cd ourfiles

root @ centos7:〜# / mnt / tree / ourfiles $


为了进一步确认操作正常,该mount命令将显示已安装共享的详细信息。

root @ centos7:〜# mount

tree:/ mnt / share / ourfiles on / mnt / tree / ourfiles type nfs4(rw,relatime,vers = 4.0,rsize = 131072,wsize = 131072,namlen = 255,hard,proto = tcp ,Timeo酒店= 600,重传= 2,仲= SYS,clientaddr = 10.10.1.22,local_lock =无,ADDR = 10.10.1.5)


该/home/tree目录对Carl和Sarah的工作方式相同。我发现在我的文件管理器中为这些目录添加书签以便更快地访问是有用的。

你可能感兴趣的:(Linux系统下如何使用autofs挂载NFS共享)