003.NFS配置实例

一 NFS常见服务管理

1.1 启动NFS

  1 [root@imxhy ~]# systemctl start nfs #CentOS7.x系列启动
  2 
  3 [root@imxhy ~]# service nfs start #CentOS6.x系列启动

1.2 状态查看

  1 [root@imxhy ~]# systemctl status nfs #CentOS7.x系列查看
  2 
  3 [root@imxhy ~]# ervice nfs status #CentOS6.x系列查看

1.3 停止服务

  1 [root@imxhy ~]# systemctl stop nfs #CentOS7.x系列停止
  2 
  3 [root@imxhy ~]# service nfs stop #CentOS6.x系列停止

1.4 设置开机启动

  1 [root@imxhy ~]# systemctl enable nfs #CentOS7.x系列自启动
  2 
  3 [root@imxhy ~]# chkconfig nfs on #CentOS6.x系列自启动

二 安装NFS

[root@imxhy ~]# yum -y install nfs-utils*

三 根据需求配置

需求:创建一个NSF共享路径为/mywork的文件服务器,使得所有访问者隐射为匿名用户nfsnobody,并拥有读写权限,并且访问者将此为根目录。

四 创建共享目录

  1 [root@imxhy ~]# mkdir /mywork #创建用于NFS共享的目录
  2 
  3 [root@imxhy ~]# chown nfsnobody /mywork/ #将目录所属人改为nfsnobody,强烈不建议直接将权限改为777
  4 
  5 [root@imxhy ~]# vi /etc/exports #按照需求修改配置文件
  6 
  7 /mywork 192.168.10.0/24(rw,all_squash,sync,fsid=0)
  8 
  9 #fsid=0表示将/mywork目录包装成根目录

五 检查并关闭防火墙

5.1 检查

  1 [root@imxhy ~]# exportfs
  2 
  3 /mywork 192.168.10.0/24

5.2 关闭SELinux和防火墙

  1 [root@imxhy ~]# setenforce 0
  2 
  3 [root@imxhy ~]# iptables -F

5.3 重启服务

  1 [root@imxhy ~]# systemctl restart nfs

六 验证测试

6.1 客户端安装nfs

  1 [root@imxhy ~]# yum -y install nfs-utils.x86_64 #安装完之后客户端不需要启动nfs服务
  2 
  3 [root@imxhy ~]# showmount -e 192.168.10.10 #测试是否能链接
  4 
  5 Export list for 192.168.10.10:
  6 
  7 /mywork 192.168.10.0/24

6.2 客户端挂载到本机

  1 [root@imxhy ~]# mkdir /data
  2 
  3 [root@imxhy ~]# mount -t nfs 192.168.10.10:/mywork /data/
  4 
  5 [root@imxhy ~]# vi /etc/fstab #开机挂载
  6 
  7 192.168.10.10:/mywork /data nfs defaults 0 0
  8 
  9 #也可添加tcp使nfs使用tcp协议传输
 10 
 11 [root@imxhy ~]# mount -a
 12 
 13 [root@imxhy ~]# df -Th
 14 
 15 Filesystem Type Size Used Avail Use% Mounted on
 16 
 17 ……
 18 
 19 192.168.10.10:/mywork nfs 18G 5.9G 12G 33% /data
 20 
 21 [root@imxhy ~]# cd /data/
 22 
 23 [root@imxhy data]# touch test.txt
 24 
 25 [root@imxhy data]# ls -l
 26 
 27 total 0
 28 
 29 -rw-r--r--. 1 nfsnobody nfsnobody 0 Sep 3 01:04 test.txt

附:权限分析

附.1 客户端连接时候,对普通用户的检查

  • 如果明确设定了普通用户被压缩的身份,那么此时客户端用户的身份转换为指定用户;
  • 如果NFS server上面有同名用户,那么此时客户端登录账户的身份转换为NFS server上面的同名用户;
  • 如果没有明确指定,也没有同名用户,那么此时用户身份被压缩成nfsnobody;

附.2 客户端连接的时候,对root的检查

  • 如果设置no_root_squash,那么此时root用户的身份被压缩为NFS server上面的root;
  • 如果设置了all_squash、anonuid、anongid,此时root 身份被压缩为指定用户;
  • 如果没有明确指定,此时root用户被压缩为nfsnobody;
  • 如果同时指定no_root_squash与all_squash 用户将被压缩为 nfsnobody,如果设置了anonuid、anongid将被压缩到所指定的用户与组;

你可能感兴趣的:(003.NFS配置实例)