第 25 章通过 NFS 共享文件系统

目录

25.1. 术语
25.2. 安装 NFS 服务器
25.3. 配置 NFS 服务器
25.4. 配置客户端
25.5. 更多信息

摘要

在企业环境中通过网络分发和共享文件系统是一项常见任务。久经验证的网络文件系统 (NFS) 与黄页协议 NIS 协同工作。要使用可以与 LDAP 协同工作并且也可以使用 Kerberos 的更安全协议,请选中 NFSv4

NFS 与 NIS 一起使用时网络面向用户是透明的。利用 NFS,可以通过网络分发任意文件系统。进行适当的设置后,用户将发现自己始终处于同一环境中,而与当前使用的终端无关。

25.1. 术语

下面是 YaST 模块中使用的术语。

导出

由 NFS 服务器导出的目录,客户端可将其集成到系统中。

NFS 客户端

NFS 客户端是通过网络文件系统协议使用来自 NFS 服务器的 NFS 服务的系统。TCP/IP 协议已集成到 Linux 内核中;无需再安装任何其他软件。

NFS 服务器

NFS 服务器向客户端提供 NFS 服务。运行中的服务器依赖于以下守护程序:nfsd(工作)、idmapd(到 ID 的用户和组名映射,反之亦然)、statd(文件锁定)和 mountd(装入请求)。

25.2. 安装 NFS 服务器

NFS 服务器软件不会默认安装。要安装 NFS 服务器软件,请启动 YaST 并选择软件+软件管理。现在选择过滤器+模式并选择文件服务器,或使用搜索选择并搜索 NFS 服务器。确认包的安装以完成安装进程。

与 NIS 一样,NFS 也是一个客户端/服务器系统。然而,一台计算机可以充当这两种角色 - 它可以通过网络提供文件系统(导出),也可以从其他主机装入文件系统(导入)。

25.3. 配置 NFS 服务器

可通过 YaST 配置 NFS 服务器或手动配置它。NFS 还可与 Kerberos 结合来进行身份验证。

25.3.1. 采用 Kerberos 的 NFS

要对 NFS 使用 Kerberos 身份验证,必须启用 GSS 安全性。在初始 YaST“NFS 服务器”对话框中选择启用 GSS 安全。必须具有一个有效的 Kerberos 服务器才能使用此功能。YaST 不会设置服务器,而是仅使用所提供的功能。如果希望使用 Kerberos 进行身份验证,则除了 YaST 配置外,还必须首先至少完成以下步骤,才能运行 NFS 配置:

  1. 请确保服务器和客户端都在同一 Kerberos 域中。它们必须访问相同的 KDC(密钥分发中心)服务器并共享其 krb5.keytab 文件(在任何计算机上的默认位置是 /etc/krb5.keytab)。有关 Kerberos 的更多信息,请参见第 6 章 Network Authentication with Kerberos (↑安全指南)。

  2. 在客户端上用 rcgssd start 启动 gssd 服务。

有关配置采用 Kerberos 的 NFS 的更多信息,请参见第 25.5 节 “更多信息” 中的链接。

25.4. 配置客户端

要将主机配置为 NFS 客户端,无需安装其他软件。将默认安装所有需要的包。

25.4.1. 使用 YaST 导入文件系统

授权用户可以用 YaST NFS 客户端模块从 NFS 服务器将 NFS 目录装入本地文件树。单击添加并输入 NFS 服务器的主机名、要导入的目录以及在本地装入此目录的安装点。在第一个对话框中单击完成后,这些更改即会生效。

NFS 设置选项卡中,启用打开防火墙中的端口以便访问远程计算机上的服务。防火墙状态将显示在复选框旁边。使用 NFSv4 时,请确保选择了启用 NFSv4 复选框,并且 NFSv4 域名包含与 NFSv4 服务器所用相同的值。默认域为 localdomain

单击确定保存更改。请参见图 25.1 “使用 YaST 配置 NFS 客户端”

配置写入/etc/fstab,并将装入指定的文件系统。当您稍后启动 YaST 配置客户端时,它还将读取此文件中的现有配置。

图 25.1. 使用 YaST 配置 NFS 客户端

使用 YaST 配置 NFS 客户端

25.4.2. 手动导入文件系统

手动从 NFS 服务器导入文件系统的先决条件是运行 RPC 端口映射器。作为 root 用户输入 rcrpcbind start 来启动它。然后就可以使用 mount 将远程文件系统像本地分区那样装入文件系统中:

mount host:remote-pathlocal-path

例如要从 nfs.example.com 计算机导入用户目录,使用:

mount nfs.example.com:/home /home

25.4.2.1. 使用自动装入服务

autofs 守护程序可用于自动装入远程文件系统。请在 /etc/auto.master 文件中添加以下条目:

/nfsmounts /etc/auto.nfs

如果 auto.nfs 文件正确填充,/nfsmounts 目录将作为客户端上所有 NFS 装入的 root 目录。文件名为 auto.nfs 是为了方便,也可以选择其他名称。在 auto.nfs 中为所有 NFS 装入添加条目,如下所示:

localdata -fstype=nfs server1:/data
nfs4mount -fstype=nfs4 server2:/

root 身份用 rcautofs start 激活设置。对于此示例,/nfsmounts/localdataserver1/data 目录将通过 NFS 装入,server2/nfsmounts/nfs4mount 将通过 NFSv4 装入。

如果在运行 autofs 服务时编辑 /etc/auto.master 文件,则必须用 rcautofs restart 重启动自动装入程序才能使更改生效。

25.4.2.2. 手动编辑 /etc/fstab

通常,/etc/fstab 中的 NFSv3 装入项如下:

nfs.example.com:/data /local/path nfs rw,noauto 0 0

也可以将 NFSv4 装入添加到 /etc/fstab 文件中。对于这些装入,请在第三列中使用 nfs4 而不是 nfs,并确保在第一列中的 nfs.example.com: 后面用 / 指定远程文件系统。/etc/fstab 中 NFSv4 装入的示例行如下所示:

nfs.example.com:/ /local/pathv4 nfs4 rw,noauto 0 0

noauto 选项可禁止在启动时自动装入文件系统。如果您要手动安装各文件系统,可以缩短只指定安装点的安装命令:

mount /local/path

请注意,如果您没有输入 noauto 选项,系统的初始化脚本将在启动时处理这些文件系统的装入。

25.5. 更多信息

除了 exportsnfsmount 的手册页外,还可在 /usr/share/doc/packages/nfsidmap/README 中找到关于配置 NFS 服务器和客户端的信息。有关更多联机文档,请参见以下网站: