使用NFS需要启用RPC(remoteprocedure call),RPC可以指定每个NFS功能所对应的端口号,重启RPC后,RPC所管理的所有NFS功能服务都需重新向RPC注册。
设置NFS需要安装nfs-utils和portmap程序,使用rpm –q可以查看是否安装。
- nfs-utils:提供rpc.nfsd和rpc.mountd两个daemon与其他document说明文件。
- rpc.nfsd:管理client是否能够登入主机,及对登入者ID的辨别。
- rpc.mountd:管理NFS文件系统,读取/etc/exports对比client取得相应的权限。
- portmap:端口映射;在启动rpc之前做好端口映射工作。
NFS的配置文件:
- /etc/exports:NFS配置文件
- /var/lib/nfs/*tab:NFS服务器日志放置路径;etab记录共享出来的目录完整权限设置值;xtab记录曾经连接到此NFS主机的相关客户端数据
NFS的两个命令:
- /usr/sbin/exportfs:维护NFS共享资源;重新共享/etc/exports变更目录或将NFS server共享目录卸载或重新共享
- /usr/sbin/showmount:在客户端查看NFS服务器共享出来的目录资源
/etc/exports配置文件
/etc/exports配置文件说明
共享目录必须使用绝对路径,权限部分依照不同的权限共享给不同的主机,括号内是设置权限参数的位置,权限不止一个时,使用 , 隔开,主机名和括号连在一起。
主机名设置可以使用网段:192.168.1.0/24或完整IP:192.168.1.23;也可以使用主机名称,但此主机名称需要存在于/etc/hosts中或使用DNS可以找到,找到IP即可,主机名支持通配符,如*?
权限参数说明:
- Rw:read-write可读写的权限
- Ro:read-only只读权限
- no_root_squash:登入nfs主机使用共享目录的用户,如果是用户root,对于此共享目录具有root权限,不建议使用。
- root_squash:登入nfs主机使用共享目录的用户,如果是用户root,此用户权限将被压缩为匿名用户,其UID和GID都会被压缩为nobody(nfsnobody)系统账号的身份。
- all_squash:共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
- no_all_squash 保留共享文件的UID和GID(默认)。
- anonuid:xxx;指定nfs服务器/etc/passwd文件中匿名用户的UID。
- anongid:xxx;指定nfs服务器/etc/passwd文件中匿名用户的GID。
- sync:数据同步写入到内存与硬盘中。
- async:数据先暂存于内存中,而非直接写入硬盘。
- secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置)。
- insecure:允许客户端从大于1024的tcp/ip端口连接服务器。
- wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置)。
- no_wdelay:若有写操作则立即执行,与sync配合使用。
- hide:在NFS共享目录中不共享其子目录。
- no_hide:共享NFS目录的子目录。
- subtree_check:如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)。
- no_subtree_check:和上面相对,不检查父目录权限。
- subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置)。
- no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率。
权限说明:
1.NFS server和NFS client具有相同的UID和账号
如果NFS server和NFS client具有相同共享文件账号和相同UID,客户端登入NFS server时,就会拥有/etc/exports设置的权限
2.NFS server和NFS client具有不同的账号
如果NFS client不拥有NFS server共享文件账号,或NFS client的账号在NFS server不存在,是否可以读写共享目录,需要查看NFS server的权限而定,其身份会变为匿名用户nobody
3.NFS client的身份为root
默认情况下,客户端的root身份会被压缩成匿名用户nobody
创建共享目录
创建或修改/etc/exports配置文件
重新修改 /etc/exports,执行 exportfs [-aruv] 命令
语法:exportfs [-aruv]
参数说明:
- -a :全部挂载(或卸除) /etc/exports 档案内的设定
- -r :重新挂载 /etc/exports 里面的设定,此外,亦同步更新 /etc/exports 及/var/lib/nfs/xtab 的内容!
- -u :卸除某一目录
- -v :在 export 的时候,将分享的目录显示到屏幕上!
服务器端使用showmount命令查询nfs的共享状态
Iptables 防火墙
启动NFS
启动自动挂载nfs文件系统
到此这篇nfs客户端服务(nfs客户端软件)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/hd-yjs/66597.html