阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

如何使用autofs挂载NFS共享

123次阅读
没有评论

共计 2442 个字符,预计需要花费 7 分钟才能阅读完成。

大多数 Linux 文件系统都是在引导时挂载的,并且在系统运行时仍然挂载。在 fstab 文件中配置的任何远程文件系统也是如此。但是,有时您可能希望只在需求上挂载远程文件系统—例如,通过减少网络带宽使用来提高性能,或者出于安全原因隐藏或混淆某些目录。包 autofs 提供了这个特性。在本文中,我将描述如何启动和运行基本的自动加载配置。

首先,假设 NFS 服务器 linux.linuxidc.com 已经启动并运行。还假设这个服务器共享一个名为 ourfiles 的数据目录和两个用于 linuxidc 和 Sarah 的用户目录。

一些最佳实践将使事情更好地工作: 在服务器上和任何客户端工作站上为用户使用相同的用户 ID 是一个好主意,因为他们有一个帐户。另外,您的工作站和服务器应该具有相同的域名。检查相关配置文件应予以确认。

alan@linuxidc:~$ sudo getent passwd linuxidc sarah
 [sudo] password for alan:
 linuxidc:x:1020:1020:linuxidc,,,:/home/linuxidc:/bin/bash
 sarah:x:1021:1021:Sarah,,,:/home/sarah:/bin/bash

 alan@linuxidc:~$ sudo getent hosts
 127.0.0.1      localhost
 127.0.1.1      linuxidc.linuxidc.com linuxidc
 10.10.1.5      linux.linuxidc.com tree

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

安装包

您只需要安装两个包:NFS 客户端函数的常用 NFS 包,以及提供 automount 函数的 autofs 包。

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

您可以验证 autofs 文件已被放置在 etc 目录:

alan@linuxidc:~$ 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@linuxidc:/etc$

配置 autofs

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

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

每一行都以 NFS 共享所在的目录开头。继续创建这些目录:

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

第二步,在 auto.misc 文件中添加以下行:

ourfiles        -fstype=nfs    tree:/share/ourfiles

这一行指示 autofs 在 auto 中匹配的位置挂载 ourfiles 共享。用于 auto.misc 的主文件。如上所示,这些文件可以在目录 /mnt/ 树 /ourfiles 中找到。

第三,创建文件自动。家与以下线:

*              -fstype=nfs    tree:/home/&

这一行指示 autofs 在 auto 中匹配的位置挂载用户共享。自动.home 的主文件。在本例中,linuxidc 和 Sarah 的文件将分别在目录 /home/tree/linuxidc 或 /home/tree/sarah 中可用。星号 (称为通配符) 使每个用户的共享在登录时自动挂载成为可能。& and 也作为通配符在服务器端表示用户的目录。它们的主目录应该相应地映射到 passwd 文件中。如果您喜欢本地主目录,则不必这样做; 相反,用户可以将其用作特定文件的简单远程存储。

最后,重新启动 autofs 守护进程,使其能够识别并加载这些配置文件更改。

alan@linuxidc:/etc$ sudo service autofs restart

测试 autofs

如果您更改到文件中列出的目录之一,则自动。掌握并运行 ls 命令,您不会立即看到任何东西。例如,将目录 (cd) 更改为 /mnt/tree。首先,ls 的输出不会显示任何内容,但是在运行 cd ourfiles 之后,ourfiles 共享目录将自动挂载。cd 命令也将被执行,您将被放置到新挂载的目录中。

linuxidc@linuxidc:~$ cd /mnt/tree
 linuxidc@linuxidc:/mnt/tree$ ls
 linuxidc@linuxidc:/mnt/tree$ cd ourfiles
 linuxidc@linuxidc:/mnt/tree/ourfiles$

为了进一步确认正在工作,mount 命令将显示挂载共享的详细信息。

linuxidc@linuxidc:~$ 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)

对于 linuxidc 和 Sarah 来说,/home/tree 目录也会以同样的方式工作。

我发现在我的文件管理器中书签这些目录很有用,以便更快地访问。

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2442字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中