千锋扣丁学堂Linux培训详解如何使用autofs挂载NFS共享

2019-05-08 14:48:31 2588浏览

今天千锋扣丁学堂Linux培训老师给大家分享一篇关于如何使用autofs挂载NFS共享的详细介绍,首先比如给你的网络文件系统(NFS)配置一个基本的自动挂载功能。大多数Linux文件系统在引导时挂载,并在系统运行时保持挂载状态。对于已在fstab中配置的任何远程文件系统也是如此。但是,有时你可能希望仅按需挂载远程文件系统。例如,通过减少网络带宽使用来提高性能,或出于安全原因隐藏或混淆某些目录。autofs软件包提供此功能。在本文中,我将介绍如何配置基本的自动挂载。



首先做点假设:假设有台NFS服务器tree.mydatacenter.net已经启动并运行。另外假设一个名为ourfiles的数据目录还有供Carl和Sarah使用的用户目录,它们都由服务器共享。

一些最佳实践可以使工作更好:服务器上的用户和任何客户端工作站上的帐号有相同的用户ID。此外,你的工作站和服务器应有相同的域名。检查相关配置文件应该确认。

alan@workstation1:~$ sudo getent passwd carl sarah
[sudo] password for alan:
carl:x:1020:1020:Carl,,,:/home/carl:/bin/bash
sarah:x:1021:1021:Sarah,,,:/home/sarah:/bin/bash
alan@workstation1:~$ sudo getent hosts
127.0.0.1       localhost
127.0.1.1       workstation1.mydatacenter.net workstation1
10.10.1.5       tree.mydatacenter.net tree

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

安装软件包

你只需要安装两个软件包:用于NFS客户端的nfs-common和提供自动挂载的autofs。

alan@workstation1:~$ sudo apt-get install nfs-common autofs

你可以验证autofs相关的文件是否已放在/etc目录中:

alan@workstation1:~$ cd /etc; ll auto*
-rw-r--r-- 1 root root 12596 Nov 19  2015 autofs.conf
-rw-r--r-- 1 root root   857 Mar 10  2017 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*
alan@workstation1:/etc$

配置autofs

现在你需要编辑其中几个文件并添加auto.home文件。首先,将以下两行添加到文件auto.master中:

/mnt/tree  /etc/auto.misc
/home/tree  /etc/auto.home

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

alan@workstation1:/etc$ sudo mkdir /mnt/tree /home/tree

接下来,将以下行添加到文件auto.misc:

ourfiles        -fstype=nfs     tree:/share/ourfiles

该行表示autofs将挂载auto.master文件中匹配auto.misc的ourfiles共享。如上所示,这些文件将在/mnt/tree/ourfiles目录中。

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

*               -fstype=nfs     tree:/home/&

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

最后,重启autofs守护进程,以便识别并加载这些配置的更改。

alan@workstation1:/etc$ sudo service autofs restart

测试autofs

如果更改文件auto.master中的列出目录,并运行ls命令,那么不会立即看到任何内容。例如,切换到目录/mnt/tree。首先,ls的输出不会显示任何内容,但在运行cdourfiles之后,将自动挂载ourfiles共享目录。cd命令也将被执行,你将进入新挂载的目录中。

carl@workstation1:~$ cd /mnt/tree
carl@workstation1:/mnt/tree$ ls
carl@workstation1:/mnt/tree$ cd ourfiles
carl@workstation1:/mnt/tree/ourfiles$

为了进一步确认正常工作,mount命令会显示已挂载共享的细节。

carl@workstation1:~$ 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,retrans=2,sec=sys,clientaddr=10.10.1.22,local_lock=none,addr=10.10.1.5)

对于Carl和Sarah,/home/tree目录工作方式相同。

以上就是关于千锋扣丁学堂Linux培训详解如何使用autofs挂载NFS共享的全部内容,想要了解更多关于Linux开发方面内容的小伙伴,请关注扣丁学堂Linux培训官网、微信等平台,扣丁学堂IT职业在线学习教育有专业的Linux讲师为您指导,此外扣丁学堂老师精心推出的Linux视频教程定能让你快速掌握Linux从入门到精通开发实战技能。扣丁学堂Linux技术交流群:422345477。


                          【扫码进入HTML5VIP免费公开课】  


     【关注微信公众号获取更多学习资料】        【扫码进入HTML5前端开发VIP免费公开课】



查看更多关于“Linux培训资讯”的相关文章>>

标签: Linux培训 Linux视频教程 红帽Linux视频 Linux学习视频 Linux入门视频

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号