标签:权限控制 用户 部分 服务配置 进入 只读 测试 rpc tmp
NFS服务会经常用到,它用于在网络上共享存储。
17.1 服务端配置NFS
配置NFS比较简单,只需要编辑配置文件/etc/exports。
首先修改配置文件(默认该文件为空),如下所示:
//写入以下内容
/home/nfstestdir 192.168.50.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
这个配置文件就一行,共分为三部分。第一部分是本地要共享出去的目录,第二部分是允许访问的主机IP,第三部分就是小括号里面的一些权限选项。
口rw:表示读/写。
口ro:表示只读。
口sync:同步模式,表示内存中的数据实时写入磁盘。
口async:非同步模式,表示把内存中的数据定期写入磁盘。
口no_root_squash:加上这个选项后,root用户就会对共享的目录拥有至高的权限控制,就像是对本机的目录操作一样。安全性较低
口root_squash:与no_root_squash选项对应,表示root用户对共享目录的权限不高,只有普通用户的权限,即限制了root。
口all_squash:表示不管使用NFS的用户是谁,其身份都会被限定为一个指定的普通用户身份。
口anonuid/anongid:要和root_squash以及all_squash选项一同使用,用于指定使用NFS的用户被限定后的uid和gid,但前提是本机的/etc/passwd中存在相应的uid和gid。
分析一下刚刚配置的/etc/exports文件。假设要共享的目录为/home/nfstestdir,信任的主机为192.168.50.0/24这个网段,权限为读/写,同步模式,限定所有使用者,并且限定的uid和gid都为1000。
编辑好配置文件后创建相关目录并启动NFS服务,如下所示:
在启动NFS服务之前,需要先启动rpcbind服务。
17.2 客户端挂载NFS
现在有两台虚拟机IP地址分别为192.168.50.15和192.168.50.17,其中提供NFS服务的是192.168.50.15。在客户端挂载NFS之前,我们需要先查看服务端共享了哪些目录。客户端(50.17)安装nfs-utils包后,可以使用showmount命令查看,如下所示:
使用showmount -e IP就可以查看NFS的共享情况,从上例我们可以看到192.168.50.15的共享目录为/home/nfstestdir,信任主机为192.168.50.0/24这个网段。
然后在客户端(50.17)挂载NFS,如图所示:
使用命令df -h可以看到增加了一个/mnt分区,它就是NFS共享的目录了。进入到/mnt/目录下,并创建测试文件:
这是因为在服务端(50.15)上创建的/home/nfstestdir目录权限不合适,挂载后相当于被限制为uid为1000的用户,解决该问题需要在服务端(50.15)上修改/home/nfstestdir目录权限:
然后再到客户端上(50.17)创建测试文件:
可以看到创建的新文件aminglinux.txt所有者和所属组为aming,其uid和gid都为1000。
17.3 命令exportfs
exportfs命令的常用选项为-a、-r、-u和-v,各选项的含义如下:
口-a:表示全部挂载或者卸载。
口-r:表示重新挂载。
口-u:表示卸载某一个目录。
口-v:表示显示共享的目录。
当改变/etc/exports配置文件后,使用exportfs命令挂载不需要重启NFS服务。接下来修改服务端(50.15)的配置文件,如下所示:
/tmp/ 192.168.50.0/24(rw,sync,no_root_squash)
然后在服务端(50.15)上执行如下命令:
在上一节用到了mount命令。其实用mount命令来挂载NFS服务是有讲究的,它要用-t nfs来指定挂载的类型为nfs。另外在挂载NFS服务时,常用-o nolock选项(即不加锁)。例如在客户端(50.17)上执行如下命令:
你还可以把要挂载的NFS目录写到客户端上的/etc/fstab文件中,挂载时只需要执行mount -a命令。例如在/etc/fstab文件里增加一行,
由于刚刚已挂载了NFS,需要先卸载,执行如下命令:
然后重新挂载,执行如下命令:
这样操作的好处是以后开机会自动挂载NFS。刚刚挂载的/aminglinux/目录在服务端设置为了no_root_squash,它并不会限制root用户,也就是说使用root用户创建文件时,跟在客户端本机上创建的一样。
可以看到1.txt的所有者和所属组全部为root。
标签:权限控制 用户 部分 服务配置 进入 只读 测试 rpc tmp
原文地址:https://www.cnblogs.com/mzj0609/p/14115092.html