CENTOS7 安装配置 NFS

来源:互联网 发布:淘宝上卖什么最火 编辑:程序博客网 时间:2024/06/04 17:45

环境

nps 192.168.1.97
client 192.168.1.98

yum 安装

yum -y install nfs-utils rpcbind

nfs 的配置文件 /etc/expots
默认为空

vi /etc/exports

添加共享的配置条目
/opt/test/ 192.168.1.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)

或者
/opt/test/ 192.168.1.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)

另外,可以创建一个不能登录的用户来作为文件共享的用户

useradd -M -s /sbin/nologin mynfs

-M:不创建家目录
-s:指定用户登陆时使用的shell,nologin就是登陆不了

id -u mynfs

可以看到新建的用户的UID,默认GID与UID相同,可以把上面的默认UID、GID换掉,可选

使配置生效

exportfs -r

注:配置文件说明:
/opt/test 为共享目录
192.168.1.0/24 可以为一个网段,一个IP,也可以是域名,域名支持通配符 如: *.qq.com
rw:read-write,可读写;
ro:read-only,只读;
sync:文件同时写入硬盘和内存;
async:文件暂存于内存,而不是直接写入内存;
no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
anonuid:匿名用户的UID值,可以在此处自行设定。
anongid:匿名用户的GID值。

启动 nfs

先启动RPC服务

service rpcbind start

再启动NFS服务

service nfs start

设置成开机启动

chkconfig rpcbind on
chkconfig nfs on

客户端挂载:

最小化安装的CENTOS没有NFS客户端,先安装NFS客户端

yum install nfs-utils nfs-utils-lib

查看NFS服务端可挂载

showmount -e 192.168.1.97

Export list for 192.168.1.97: /opt/test 192.168.1.0/24

客户端挂载命令

mount -t nfs 192.168.1.97:/opt/test /mnt

客户端在挂载的时候遇到的一个问题如下,可能是网络不太稳定,NFS默认是用UDP协议,换成TCP协议即可:

mount -t nfs 192.168.1.97:/opt/test /mnt -o proto=tcp -o nolock

常用命令

查看nfs配置的参数

cat /var/lib/nfs/etab

查看当前NFS被挂载的情况

cat /var/lib/nfs/rmtab