centos7 安装nfs

本实验环境:NFS server   A- 172.16.169.128

                      NFS Client    B- 172.16.169.139

                         C- 172.16.169.131

一.在A机上安装NFS服务器所需的软件包:

yum install -y nfs-utils 

(实际上需要安装两个包nfs-utils和rpcbind, 不过当使用yum安装nfs-utils时会把rpcbind一起安装上)

二.编辑exports文件,添加B和C

/home/nfs 172.16.169.129(rw,sync,fsid=0)  172.16.169.131(rw,sync,fsid=0) 

/home/nfs:这个是本地要共享出去的目录,后面的ip是允许访问的主机ip,可以是一个ip也可以是一个ip段:172.16.169.0/24

括号中部分:rw表示可读写,ro只读;

                 sync :同步模式,内存中数据时时写入磁盘;async :不同步,把内存中数据定期写入磁盘中;

      no_root_squash :加上这个选项后,root用户就会对共享的目录拥有至高的权限控制,就像是对本机的目录操作一样。不安全,不建议使用;root_squash:和上面的选项对应,root用户对共享目录的权限不高,只有普通用户的权限,即限制了root;all_squash:不管使用NFS的用户是谁,他的身份都会被限定成为一个指定的普通用户身份;

      anonuid/anongid :要和root_squash 以及all_squash一同使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd中存在这个uid和gid。

      fsid=0表示将/home/nfs整个目录包装成根目录

还可以 :

/opt/test/ 172.16.169.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)

三.启动A上的nfs服务

先为rpcbind和nfs做开机启动:    
systemctl enable rpcbind.service    
systemctl enable nfs-server.service    

然后分别启动rpcbind和nfs服务:   
systemctl start rpcbind.service    
systemctl start nfs-server.service

确认NFS服务器启动成功:   
rpcinfo -p    
通过查看service列中是否有nfs服务来确认NFS是否启动。

showmount -e 172.16.169.128        

查看可挂载目录及可连接的IP,显示有B和C的ip就是成功

四.关闭A机上的防火墙或者给防火墙配置nfs的通过规则

还是关闭简单啊!详细请看http://www.cnblogs.com/bky185392793/p/7395866.html

systemctl stop firewalld.service

五.B和C上配置

1、安装nfs,并启动服务。

yum install -y nfs-utils

systemctl enable rpcbind.service

systemctl start rpcbind.service

客户端不需要启动nfs服务,只需要启动rpcbind服务.

2、检查 NFS 服务器端是否有目录共享

showmount -e 172.16.169.128

3、使用 mount 挂载A服务器端的目录/home/nfs到客户端B的目录/home/nfs下

mkdir /home/nfs   
mount -t nfs 172.16.169.128:/home/nfs/ /home/nfs/ 

df -h查看容量

4、挂载完成,可以正常访问本机下的/home/nfs,如果在服务端A在共享目录/home/nfs中写入文件,B、C机上可以看到,但是不能在这个目录中写入文件.

在服务端A建立一个共享目录,允许ABC都写入

1.B和C上的root用户ID号

2.在A上创建一个/home/nfs1

mkdir /home/nfs1

编辑/etc/exports

添加一条

/home/nfs1 172.16.169.0/24(rw,sync,all_squash,anonuid=0,anongid=0)

anonuid=0,anongid=0为root用户id

3.生效配置

exportfs -arv

此条命令不需重启nfs服务直接生效配置

参数如下:-a :全部挂载或者卸载;      
                  -r :重新挂载;      
                  -u :卸载某一个目录;      
                  -v :显示共享的目录

使用showmount -e 172.16.169.128可以查看到新添加的

4.B和C新挂载一个目录

重新创建一个/home/nfs1

挂载上新的

mount -t nfs 172.16.169.128:/home/nfs1 /home/nfs1

在A上创建一个文件其余挂载点均可看到

(卸载挂载:umount /home/nfs1)

实现开机挂载,编辑/etc/fstab

172.16.169.128:/home/nfs           /home/nfs       nfs      nolock   0  0
172.16.169.128:/home/nfs1         /home/nfs1     nfs1    nolock   0  0

重新挂载

mount -a(此条命令是挂载 fstab 中的所有文件系统)

原文地址:https://www.cnblogs.com/bky185392793/p/7406104.html