NFS 的软件结构
NFS 这个咚咚真的是很简单,上面我们提到的 NFS 软件中,配置文件只有一个,执行档也不多, 记录文件也三三两两而已吶!赶紧先来看一看吧! ^_^
- 主要配置文件:/etc/exports
这个档案就是 NFS 的主要配置文件了!不过,系统并没有默认值,所以这个档案『 不一定会存在』,你可能必须要使用 vim 主动的建立起这个档案喔!我们等一下要谈的设定也仅只是这个档案而已吶!
- NFS 文件系统维护指令:/usr/sbin/exportfs
这个是维护 NFS 分享资源的指令,我们可以利用这个指令重新分享 /etc/exports 变更的目录资源、将 NFS Server 分享的目录卸除或重新分享等等,这个指令是 NFS 系统里面相当重要的一个喔!至于指令的用法我们在底下会介绍。
- 分享资源的登录档:/var/lib/nfs/*tab
在 NFS 服务器的登录文件都放置到 /var/lib/nfs/ 目录里面,在该目录下有两个比较重要的登录档, 一个是 etab ,主要记录了 NFS 所分享出来的目录的完整权限设定值;另一个 xtab 则记录曾经链接到此 NFS 服务器的相关客户端数据。
- 客户端查询服务器分享资源的指令:/usr/sbin/showmount
这是另一个重要的 NFS 指令。exportfs 是用在 NFS Server 端,而 showmount 则主要用在 Client 端。这个 showmount 可以用来察看 NFS 分享出来的目录资源喔!
相关文件
/etc/exports: 共享配置文件
共享格式为:共享目录绝对路径 授权访问的IP或网段(权限1,权限2)
如:/test 192.168.229.0/24(ro)
权限说明:
ro 只读访问
rw 读写访问
sync 所有数据在请求时写入共享
NFS Server端
a. nfs安装
# yum install nfs-utils
# yum install rpcbind
NFS 服务端需要安装 rpcbind 和 nfs-utils
b. nfs开机启动
# systemctl enable nfs-server
c. nfs启动
由于服务间的依赖关系,启动NFS之前先要确保rpcbind启动
# systemctl is-active rpcbind
# systemctl start nfs
d. 验证启动
# systemctl is-active nfs
示例1:
以读/写的方式共享目录/test 同时只能被192.168.229.0域中系统访问
1 | mkdir /test |
修改配置文件:
1 | /test 192.168.229.0/24(rw,sync) |
1 | 刷新 |
示例2:
- 新建目录/public,以只读的方式共享目录/public 同时只能被192.168.229.0域中系统访问
- 新建目录/protected,以读/写的方式共享目录/protected 同时只能被192.168.229.0域中系统访问
1 | mkdir /public |
添加共享目录:
1 | vim /etc/exports |
修改配置:
1 | 192.168.229.0/24(ro) |
1 | exportfs -r |
NFS客户端
安装NFS 支持软件包
1 | yum install nfs-utils |
客户端只需要安装 nfs-utils 即可
查看NFS服务器的 /etc/exports 所分享的目录数据
1 | -e :显示某部主机的 /etc/exports 所分享的目录数据。 |

客户端手动挂载
1 | 创建挂载目录: |
客户端自动挂载
1 | vi /etc/fstab |
备注: 若不设置开机自动挂载NFS盘,则当服务器重启后/data/NBUMOUNT_NAS/ 将不会挂载到NFS盘上,所有Copy到/data/NBUMOUNT_NAS/ 目录下的文件将全部存放在服务器本地盘下,最终会引起服务器磁盘空间减小。