概述
network filesystem
tcp/ip协议传输
rpc
远程过程调用
管理nfs端口
111端口
nfs
2049
应用场景
用于集群架构中的数据存储
网站的静态文件(图片,文本、视频、音频)
用于局域网
安装
yum install -y rpcbind
yum install -y nfs-utils
启动服务(如果报错,把这两个服务停掉,然后按照顺序启动)
先启动nfs服务
再启动rpcbind服务
目录结构
/etc/nfs.conf(nfs的主配置文件)
/etc/exports(存储配置文件)
语法:dirPath IP/Prefix(argument1,argument2...)
参数:
rw | 指定共享目录具备可读写权限 |
ro | 指定只读 |
sync | 立即同步 |
async | 异步同步 数据存储信息-->内存中-->写入磁盘,容易造成数据丢失 |
all_squash | 将所有用户的操作文件全部映射为指定的用户nobody |
no_all_squash | 所有用户操作文件是什么用户就保留什么用户权限,不转换用户身份 |
root_squash | 指定root用户需要转换身份 |
no_root_squash | root用户不需要转换身份 |
anonuid | 用于指定用户身份映射到的用户的uid |
anongid | 用于指定用户组身份映射到的用户组的gid |
命令解析
exportfs | 共享存储管理命令 |
showmount | -e:显示nfs共享目录 |
配置
vim /etc/exports
/share 192.168.115.0/24(rw,sync,no_root_squash)
客户端访问
查看nfs服务器的共享目录
showmount -e 192.168.115.128(nfs服务器IP)
挂载
手动挂载:
mount 192.168.115.128:/share /mnt
自动挂载:
vim /etc/fstab
192.168.115.128:/share /mnt nfs4 defaults,_netdev 0 0
mount -a
实验
1)3台主机:1台服务器,2台客户端
服务器:拥有zhangsan、lisi两个用户
客户端1:拥有zhangsan用户
客户端2:拥有lisi用户
要求:实现用户家目录共享
主机创建用户:zhangsan、lisi
客户端1创建用户zhangsan
客户端2创建用户lisi
服务端更改配置
vim /etc/exports
重启并查看
客户端zhangsan
root用户挂载后切换zhangsan用户
创建任意文件测试
查看服务器端数据传输过来测试成功
lisi客户端操作相同
2)3台主机:1台服务器,2台客户端
服务器:将/test目录共享
客户端1、客户端2:在/mnt目录下实现资源共享
服务器修改配置文件
vim /etc/exports
/test 192.168.115.0/24(rw,sync,no_root_squash)
mkidr /test
查看是否启动,重启服务
客户端访问
查看nfs服务器的共享目录
showmount -e 192.168.1.1(nfs服务器IP)
挂载
手动挂载
mount 192.168.1.1:/test /mnt
自动挂载
vim /etc/fstab
192.168.115.128:/share /mnt nfs4 defaults,_netdev 0 0
mount -a
验证
客户端1、2空目录
随便创建个目录
主机客户机2 分别验证