FS服务(Windows 客户端+Linux 服务端)
Windows 客户端
1.添加NFS服务
2.进入CMD界面查看NFS添加是否成功。
3.挂载远程文件目录至本地
4.卸载挂载文件
Linux服务端
1.查看Linux系统是否安装rcpbind,nfs组件(如未安装请先安装)。
配置文件目录
/etc/exports // NFS服务的主要配置文件
备注:默认情况下此文件是空文件,需要自己配置。
具体格式如下:
<输出目录> [客户端 选项(访问权限,用户映射,其他)]
1.输出目录 NFS系统要共享的目录 /nfs/share
2.客户端 主要针对谁可以使用NFS资源的主机
2.1指定ip地址的主机:192.168.199.200
2.2指定子网中的所有主机:192.168.199.0/24 192.168.200.0/255.255.255.0
2.3指定域名的主机:cdshell.test.cn
2.4指定域中的所有主机:.test.cn
2.5所有主机:
3.访问权限
3.1设置输出目录只读:ro
3.2设置输出目录读写:rw
4.用户映射
all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody);
no_all_squash:与all_squash取反,,即什么用户访问即记录是什么用户访问(默认设置);
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置);
no_root_squash:与rootsquash取反;
async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率,应与async配合使用;(默认设置);
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
no_wdelay:若有写操作则立即执行,应与sync配合使用;
subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置);
no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;
具体事例:
/nfs/share * (rw,all_squash,async)
服务设置开机启动
常用命令
1、exportfs
如果我们在启动了NFS之后又修改了/etc/exports,是不是还要重新启动nfs呢?这个时候我们就可以用exportfs 命令来使改动立刻生效,该命令格式如下:
#exportfs [-aruv]
-a 全部挂载或卸载 /etc/exports中的内容
-r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab
-u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
-v 在export的时候,将详细的信息输出到屏幕上。
具体例子:
exportfs -au 卸载所有共享目录
exportfs -rv 重新共享所有目录并输出详细信息
2、nfsstat
查看NFS的运行状态,对于调整NFS的运行有很大帮助。
3、rpcinfo
查看rpc执行信息,可以用于检测rpc运行情况的工具,利用rpcinfo -p 可以查看出RPC开启的端口所提供的程序有哪些。
4、showmount
-a 显示已经于客户端连接上的目录信息
-e IP或者hostname 显示此IP地址分享出来的目录
5、netstat
可以查看出nfs服务开启的端口,其中nfs 开启的是2049,portmap 开启的是111,其余则是rpc开启的。
最后注意两点,虽然通过权限设置可以让普通用户访问,但是挂载的时候默认情况下只有root可以去挂载,普通用户可以执行sudo。
NFS server 关机的时候一点要确保NFS服务关闭,没有客户端处于连接状态!通过showmount -a 可以查看,如果有的话用kill killall pkill 来结束,(-9 强制结束)
6 showmount -e //默认查看自己共享的服务
showmount -a //显示已经与客户端连接上的目录信息
7.客户端挂载NFS服务器中的共享目录
mount 192.168.1.108:/home/david/ /tmp/david/
8 查看挂载点mount |grep nfs
转载于:https://blog.51cto.com/sirstma/2120755