centerOs
安装: yum -y install nfs-utils rpcbind
Server
vi /etc/exports
/data 172.26.13.253(rw,no_root_squash)
解释:
分享目录 主机名称或者IP(参数1,参数2)
/arm2410s 10.22.22.*(rw,sync,no_root_squash)
可以设定的参数主要有以下这些:
rw:可读写的权限;
ro:只读的权限;
no_root_squash:登入到NFS主机的用户如果是root,该用户即拥有root权限;
root_squash:登入NFS主机的用户如果是root,该用户权限将被限定为匿名使用者nobody;
all_squash:不管登陆NFS主机的用户是何权限都会被重新设定为匿名使用者nobody。
anonuid:将登入NFS主机的用户都设定成指定的user id,此ID必须存在于/etc/passwd中。
anongid:同anonuid,但是变成group ID就是了!
sync:资料同步写入存储器中。
async:资料会先暂时存放在内存中,不会直接写入硬盘。
insecure:允许从这台机器过来的非授权访问。
例如可以编辑/etc/exports为:
/tmp *(rw,no_root_squash)
/home/public 192.168.0.(rw) (ro)
/home/test 192.168.0.100(rw)
/home/Linux *.the9.com(rw,all_squash,anonuid=40,anongid=40)
如果我们在启动了NFS之后又修改了/etc/exports,可以用exportfs命令来使改动立刻生效,该命令格式如下:
exportfs [-aruv]
-a :全部mount或者unmount /etc/exports中的内容
-r :重新mount /etc/exports中分享出来的目录
-u :umount 目录
-v :在 export 的时候,将详细的信息输出到屏幕上。
具体例子:
[root @test root]# exportfs -rv (全部重新export一次!)
exporting 192.168.0.100:/home/test
exporting 192.168.0.*:/home/public
exporting *.the9.com:/home/linux
exporting *:/home/public
exporting *:/tmp
reexporting 192.168.0.100:/home/test to kernel
具体例子:
[root @test root]#exportfs -au (全部都卸载了)
showmount
-a :这个参数是一般在NFS SERVER上使用,是用来显示已经mount上本机nfs目录的cline机器
-e :显示指定的NFS SERVER上export出来的目录
启动
#### /bin/systemctl start rpcbind.service / service rpcbind start
#### /bin/systemctl start nfs.service / service nfs start
#### systemctl enable rpcbind.service / chkconfig rpcbind on
#### systemctl enable nfs.service / chkconfig nfs on
Client
查看服务端挂载点
#### showmount -e 172.26.13.252(服务端ip)
Export list for 172.26.13.252:
/data 172.26.13.253
创建挂载目录 mkdir /data
##### mount -t nfs 172.26.13.252:/data /data
无提示 既为成功
客户端在挂载的时候遇到的一个问题如下,可能是网络不太稳定,NFS默认是用UDP协议,换成TCP协议即可:
mount -t nfs 192.168.1.97:/opt/test /mnt -o proto=tcp -o nolock
mount -o tcp,nolock 192.168.1.97:/data /data
开机挂载
vi /etc/fstab
172.26.13.252:/data /data nfs rw 0 0
或
172.26.13.252:/data /data nfs nosuid,noexec,nodev,rw,bg,soft,rsize=32768,wsize=32768 0 0