linux下nfs服务器的搭建

NFS的全名叫network file system即网络文件系统。由sun公司开发,目前主流版本为V4,nfs监听在tcp2049端口。

不过nfs只负责数据的共享,网络上各个主机的连接及各自的ip端口信息是由另一个小伙伴帮忙管理的,他叫rpc--remote protocol call 即远程过程调用。

step 1.

装包:

yum install nfs-utils

yum install rpcbind

 

step 2.

配置/etc/exports

格式:共享路径 共享对象 (选项)

选项包括:ro,rw,sync,async,root_squash,no_root_squash,wdelay,all_squash

其中默认选项为ro,sync,wdelay,root_squash

ro:共享目录只读

rw:共享目录可读写

sync:确保内存中的数据完全写入磁盘后返回成功。

async:内存中数据没完全写入磁盘也返回成功。

wdelay:多个写入请求合并后写入磁盘

root_squash:客户端root账号访问时,服务器显示为nfsnobody

no_root_squash:客户端root,服务器端还是root

all_squash:不管客户端啥账号,服务器端一律为nfsnobody

 

step3.挂载nfs共享

挂载目录:mount -t nfs -o 选项 server:/目录  /本地目录

更新fstab文件使下次重启生效:echo server:/目录  /本地目录   nfs  defaults  0  0>>/etc/fstab

 

step4.防火墙设定

因为防火墙只能对特定端口做策略,而nfs和rpcbind通信会生成随机端口,为了固定端口,需要配置/etc/sysconfig/nfs文件

限定其中的:MOUNT_PORT  LOCKD_TCPPORT  LOCKED_UDPPORT  STATD_PORT 

并且放行rpcbind的111端口和nfs的2049端口

 

小技巧:exportfs -r 重新读取export文件

    exportfs -v 显示详细信息

参考文献:《Linux 运维之道》 丁明一 编著

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。