NFS服务,是网络文件系统,适用企业内部共享(rpcinfo -p查看NFS端口,NFS随机的端口太多,不利于防火墙策略创建)
NFS:Network File System 网络文件系统,基于内核的文件系统。Sun公司开发,通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,基于RPC(Remote Procedure Call Protocol远程过程调用)实现
RPC采用C/S模式,客户机请求程序调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行
NFS优势:节省本地存储空间,将常用的数据,如home目录,存放在NFS服务器上且可以通过网络访问,本地终端将可减少自身存储空间的使用

服务端
/etc/exports 定义共享资源的格式
vim /etc/exports
/data/nfs1 (rw) 是表示所有ip,可指定不同的ip,例:/data/test 192.168.0.1(ro) 192.168.0.2(rw) *(ro)
exprotfs -r 重载配置文件 -v 查看配置文件详细信息
service nfs start
NFS文件系统实验_第1张图片
客户端
showmount -e 192.168.36.7 查看对应主机的配置信息
mount 192.168.36.7:/data/nfs1 /mnt 挂载至本地使用
挂载后权限拒绝,root_squash压榨root用户权限,本机以root身份创建的ntf服务中的文件权限为nfsnobody,把文件修改成对nfsnobody有权限即可,只压榨root,不压缩id为非用户
NFS文件系统实验
发现可以成功挂载,但无法成功创建文件,因为挂载后权限拒绝,root_squash压榨root用户权限,本机以root身份创建的ntf服务中的文件权限为nfsnobody,把文件修改成对nfsnobody有权限即可,只压榨root,不压缩id为非用户,chown nfsnobody:nfsnobody /data/nfs1
NFS文件系统实验
成功创建,且属主属组为nfsnobody
NFS文件系统实验
也可以通过对/etc/exports挂载选项加入no_root_squash中使root权限不去压榨
NFS文件系统实验
测试成功,无需重新挂载
NFS文件系统实验

测试多主机共享家目录
服务端配置192.168.0.10
[root@centos6 ~ 18:38:24]#mkdir /home/test
[root@centos6 ~ 18:38:47]#cp -r /etc/skel/. /home/test
[root@centos6 ~ 18:39:04]#ls -lA /home/test
total 12
-rw-r--r-- 1 root root 18 May 10 18:39 .bash_logout
-rw-r--r-- 1 root root 176 May 10 18:39 .bash_profile
-rw-r--r-- 1 root root 124 May 10 18:39 .bashrc
[root@centos6 ~ 18:39:33]#exportfs -r
[root@centos6 ~ 18:40:02]#chown -R test:test /home/test
[root@centos6 ~ 18:41:50]#chown test:test /home/test
NFS文件系统实验_第2张图片
客户端测试192.168.0.10
[root@centos6 mnt 19:10:29]#mount 192.168.0.10:/home/test /home/test
[test@centos6 ~ 19:14:03]$df
df: `/mnt': Stale file handle
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 20027260 1939848 17063412 11% /
tmpfs 431876 0 431876 0% /dev/shm
/dev/sda1 194241 33997 150004 19% /boot
/dev/sda3 10190136 23028 9642820 1% /data
192.168.0.10:/home/test
20027264 1939584 17063680 11% /home/test
[test@centos6 ~ 19:14:05]$touch 123
[test@centos6 ~ 19:14:09]$ls -l
total 0
-rw-rw-r-- 1 test test 0 May 10 18:43 123