目录
nfs服务介绍
案例信息
服务端部署
安装服务
启动服务
修改配置文件
重新加载配置文件
创建存储目录
客户端部署
安装服务
挂载nfs目录
测试
nfs服务介绍
nfs是网络文件系统,类似与windows的共享文件,用于存储文件。
nfs依赖于rpc服务才能正常使用,客户端、服务端都需要通过调用rpc服务。
案例信息
拓扑图:
需求说明 :
nfs服务端将/data作为存储数据的目录,允许172.16.1.0网段挂载并读写。
服务端部署
安装服务
rpcbind:rpc服务
nfs-utils:nfs服务
yum install rpcbind nfs-utils -y
启动服务
启动rpcbind服务,并查看rpc信息
systemctl start rpcbind
systemctl enable rpcbind[root@nfs01 ~]# rpcinfo -pprogram vers proto port service100000 4 tcp 111 portmapper100000 3 tcp 111 portmapper100000 2 tcp 111 portmapper100000 4 udp 111 portmapper100000 3 udp 111 portmapper100000 2 udp 111 portmapper
启动nfs服务后,nfs会向rpc注册;再次查看rpc信息,可与启动nfs服务前做对比
systemctl start nfs
systemctl enable nfs[root@nfs01 ~]# rpcinfo -pprogram vers proto port service100000 4 tcp 111 portmapper100000 3 tcp 111 portmapper100000 2 tcp 111 portmapper100000 4 udp 111 portmapper100000 3 udp 111 portmapper100000 2 udp 111 portmapper100024 1 udp 52432 status100024 1 tcp 59373 status100005 1 udp 20048 mountd100005 1 tcp 20048 mountd100005 2 udp 20048 mountd100005 2 tcp 20048 mountd100005 3 udp 20048 mountd100005 3 tcp 20048 mountd100003 3 tcp 2049 nfs100003 4 tcp 2049 nfs100227 3 tcp 2049 nfs_acl100003 3 udp 2049 nfs100003 4 udp 2049 nfs100227 3 udp 2049 nfs_acl100021 1 udp 42793 nlockmgr100021 3 udp 42793 nlockmgr100021 4 udp 42793 nlockmgr100021 1 tcp 42288 nlockmgr100021 3 tcp 42288 nlockmgr100021 4 tcp 42288 nlockmgr
修改配置文件
修改/etc/exports文件
完整的配置文件在/var/lib/nfs/etab,我们一般只需要修改/etc/exports
/data/ 172.16.1.0/24(rw)
注:
书写规则:目录 客户端地址(参数)
客户端地址:
172.16.1.0/24 网段
172.16.1.1 指定地址
常用参数:
rw:读写
ro:只读
sync:同步,直接将数据存放在硬盘
async:异步,先将数据存放在内存然后放在硬盘
root_squash:用户端是root用户访问,在服务端会被压缩为nfsnobody(默认)
no_all_squash:用户端不是root用户访问,在服务端不被压缩,保持原用户(默认)
all_squash:所有用户进行压缩
anonuid:压缩用户名,默认65534 nfsnobody
anongid:压缩用户组,默认65534 nfsnobody
服务端用户压缩过程:
重新加载配置文件
建议使用reload重新加载nfs文件(不会断开已有的客户端连接),不用重启nfs服务
当然使用restart重启服务也可以(客户端短暂断开)
systemctl reload nfs
修改/etc/exports之后并加载配置文件后,/var/lib/nfs/etab会生成完整的配置
/data 172.16.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,no_all_squash)
创建存储目录
创建目录后,需要修改目录的所有者,nfs默认的用户为nfsnobody
mkdir /data
#修改目录所有者
chown nfsnobody:nfsnobody /data
客户端部署
安装服务
yum install nfs-utils -y
挂载nfs目录
临时挂载
mount -t nfs 172.16.1.31:/data /data
注:
showmount -e 172.16.1.31 可以查看服务端哪些目录可以挂载
/proc/mount 文件存放着当前系统的挂载其概况
永久挂载
修改/etc/fstab
echo '172.16.1.31:/data /data nfs defaults 0 0' >>/etc/fstab
注意:
/etc/fstab文件为开机自动挂挂载文件
书写规则:设备名 挂载点 文件系统类型 挂载参数 是否检查 是否备份
测试
在客户端上创建文件。
[root@web01 /]# touch /data/1.txt
[root@web01 /]# ls /data/
1.txt
[root@web01 /]#