NFS简介:
NFS是Network File System的简写,即网络文件系统.
网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。
好处:本地使用更少的磁盘空间
组成:至少两个部分组成:一台服务器和一台(或更多客户机)。客户机远程访问存在服务器上的数据。
实验环境:准备两台虚拟机
虚拟机一:NFS服务器 IP地址:192.168.4.254
虚拟机二:客户端 IP地址:192.168.4.6
实验目的:
一:将服务器中root目录用NFS共享给客户端,使客户端root用户使用默认权限查看共享
的root目录
//搭建NFS共享所需的软件包
[root@dhcpsvr ~]# rpm -q nfs-utils
nfs-utils-1.0.9-66.el5
[root@dhcpsvr ~]# rpm -q portmap
portmap-4.0-65.2.2.1
[root@dhcpsvr ~]# vim /etc/exports //设置共享的配置文件
[root@dhcpsvr ~]# cat /etc/exports
/root 192.168.4.6(rw,sync) //共享目录/root 权限可读,同步写入
//重新启动服务
[root@dhcpsvr ~]# service portmap restart
[root@dhcpsvr ~]# service nfs restart
//在服务器中查看服务端的共享列表
[root@dhcpsvr ~]# showmount –e //如果查看不了可跟服务器的IP地址或在hosts文件中
Export list for dhcpsvr: 添加一条IP地址和主机名
/root 192.168.4.6
客户端测试: //客户端只需按照portmap软件包
[root@pc205 ~]# rpm -q portmap
portmap-4.0-65.2.2.1
[root@pc205 ~]# service portmap restart
在客户端查看共享列表:
[root@pc205 ~]# showmount -e 192.168.4.254
Export list for 192.168.4.254:
/root 192.168.4.6
[root@pc205 ~]# mkdir /mnt/nfsdir
[root@pc205 ~]# mount 192.168.4.254:/root /mnt/nfsdir/ //将其挂载到本地
[root@pc205 ~]# ls /mnt/nfsdir/
ls: /mnt/nfsdir/: 权限不够
//总结:搭建NFS时,服务端需要安装两个软件包(nfs共享软件包,portmap辅助软件包),客户端只需安装辅助软件包。将其挂载到本地,测试访问时,显示权限不够,这是因为将本地的root用户的权限降为nfsnobody,所以本地root用户没有权限对此共享的文件做任何操作。
措施:修改设置共享的配置文件添加一条权限
二:基于上一个实验做以下配置添加no_root_squash权限,再次查看共享的root目录
服务端:
[root@dhcpsvr ~]# vim /etc/exports
[root@dhcpsvr ~]# cat /etc/exports
/root 192.168.4.6(rw,sync,no_root_squash) //添加一条保留root用户的权限
[root@dhcpsvr ~]# exportfs –rv //重新发布给客户端
exporting 192.168.4.6:/root
客户端在次查看:
[root@pc205 ~]# cd /mnt/nfsdir/
[root@pc205 nfsdir]# ls
abcdefghigk.txt Desktop install.log.syslog
anaconda-ks.cfg install.log RECOVERED_FILES
squash相关权限验证
** 对于客户机的root来说,NFS服务器默认就将其视为nfsnobody
取消方法:添加 no_root_squash
** 对于客户机的普通用户来说,NFS服务器不做squash处理
取消方法:添加 all_squash
1, 在服务端新增共享/part
[root@svr3 ~]# mkdir -m 777 /part //创建共享文件权限任何用户可读可写可执行
[root@svr3 ~]# vim /etc/exports //通过NFS共享
[root@svr3 ~]# cat /etc/exports | tail -1
/part 192.168.4.0/24(rw) //只允许4.0网段可读可写
[root@svr3 ~]# exportfs –rv //重新发布共享列表
2, 客户端测试
[root@svr1 ~]# mkdir /mnt/nfsdir2
[root@svr1 ~]# mount 192.168.4.254:/part /mnt/nfsdir2 //将共享挂载到本机
[root@svr1 ~]# su – zhangsan //普通用户测试
[zhangsan@svr1 ~]$ cd /mnt/nfsdir2
[zhangsan@svr1 nfsdir2]$ touch zhs.txt
[zhangsan@svr1 nfsdir2]$ ll zhs.txt //查看属主属于zhangsan
-rw-rw-r-- 1 zhangsan zhangsan 0 07-15 19:53 zhs.txt
在服务端查看
//设置一个用户lisi的id与zhangsan的Id相同,查看zhangsan创建的文件的属主改成lisi
[root@svr3 ~]# ll /part/zhs.txt
-rw-rw-r-- 1 lisi lisi 0 07-15 19:53 /part/zhs.txt
在服务端修改NFS共享设置:
[root@svr3 ~]# vim /etc/exports
[root@svr3 ~]# cat /etc/exports | tail -1
/part 192.168.4.0/24(rw,all_squash) //在共享中添加一条将所有访问的用户都降为nfsnobody
[root@svr3 ~]# exportfs -rv
客户端测试:
[zhangsan@svr1 nfsdir2]$ cd /mnt/nfsdir2
[zhangsan@svr1 nfsdir2]$ touch zhs-new.txt
[zhangsan@svr1 nfsdir2]$ ls -lh zhs-new.txt
-rw-rw-r-- 1 nfsnobody nfsnobody 0 07-15 19:57 zhs-new.txt //用户zhangsan创建的文件的属主已经降为nfsnobody
服务端测试
[root@svr3 ~]# ll /part/zhs-new.txt
-rw-rw-r-- 1 nfsnobody nfsnobody 0 07-15 19:57 /part/zhs-new.txt
//总结:影响权限的两个方面:
目录的文件系统权限(rwx,acl)和NFS共享权限
阅读(2256) | 评论(0) | 转发(0) |