NFS服务的安装及使用
一、介绍
用于在Linux系统间共享目录,分为客户端和服务端。
NFS并且依赖 RPC。
- NFS启动时需要去
RPC 报告自己的端口
- 客户端连接的时候也需要去
RPC 寻找 NFS 的服务端口。
PRC 的默认端口是 111,会有两个服务
rpcbind.service
rpcbind.socket
| 主机名 |
ip地址 |
用途 |
| nfs-server |
192.168.10.101 |
NFS服务端 |
| nfs-client |
192.168.10.102 |
NFS客户端 |
二、安装配置
- CentOS安装
1
| yum install -y nfs-utils rpcbind
|
- Ubuntu/Debian 安装
1 2 3 4 5
| apt install nfs-kernel-server
apt install nfs-common
|
- 服务端创建共享目录
- 修改权限
1
| chown nfsnobody:nfsnobody /data/share
|
- 编辑配置文件
1
| /data/share 192.168.10.102(rw,sync,root_squash)
|
/data/share 实际的物理路径
192.168.10.102 允许访问的白名单,也可以写成网段或任何人。192.168.10.0/24,*
(.....) 权限,所有人访问的话,记得使用只读 ro
- 注意:ip和权限的括号之间没有空格。
- 启动,记得先启动
rpcbind
1
| systemctl enable --now rpcbind
|
1
| systemctl enable --now nfs
|
三、客户端挂载使用
- 查看共享的内容
1
| showmount -e 192.168.10.101
|
- 创建挂载点
- 挂载
1
| mount -t nfs 192.168.10.101:/data/share /mnt/nfs_data
|
- 验证
验证读写文件
1 2 3
| cat > /mnt/nfs_data/test.txt <<EOF This is a test file! EOF
|
- 取消挂载
如果目录在使用,则无法取消挂载。
1 2 3
| [root@nfs-client /mnt/nfs_data]# umount /mnt/nfs_data umount.nfs4: /mnt/nfs_data: device is busy [root@nfs-client /mnt/nfs_data]#
|
- 自动挂载
1
| 192.168.10.101:/data/share /mnt/nfs_data nfs defaults 0 0
|
四、使用 autofs 优化
持续的挂载会对网络、NFS服务端造成一定的压力,而 autofs 可以在用到的时候自动挂载。用不到的时候自动取消挂载。
- 安装
- 配置
二次配置
1
| /mnt/nfs_data -rw,soft,intr 192.168.10.101:/data/share
|
/mnt/nfs_data 客户端的挂载点
-rw,soft,intr 权限
192.168.10.10.1:/data/share 共享的目录
- 启动
1
| systemctl enable --now autofs
|