003.NFS配置实例

Posted itzgr

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了003.NFS配置实例相关的知识,希望对你有一定的参考价值。

一 NFS常见服务管理

1.1 启动NFS

  1 [[email protected] ~]# systemctl start nfs #CentOS7.x系列启动
  2 
  3 [[email protected] ~]# service nfs start #CentOS6.x系列启动

1.2 状态查看

  1 [[email protected] ~]# systemctl status nfs #CentOS7.x系列查看
  2 
  3 [[email protected] ~]# ervice nfs status #CentOS6.x系列查看

1.3 停止服务

  1 [[email protected] ~]# systemctl stop nfs #CentOS7.x系列停止
  2 
  3 [[email protected] ~]# service nfs stop #CentOS6.x系列停止

1.4 设置开机启动

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

二 安装NFS

[[email protected] ~]# yum -y install nfs-utils*

三 根据需求配置

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

四 创建共享目录

  1 [[email protected] ~]# mkdir /mywork #创建用于NFS共享的目录
  2 
  3 [[email protected] ~]# chown nfsnobody /mywork/ #将目录所属人改为nfsnobody,强烈不建议直接将权限改为777
  4 
  5 [[email protected] ~]# 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 [[email protected] ~]# exportfs
  2 
  3 /mywork 192.168.10.0/24

5.2 关闭SELinux和防火墙

  1 [[email protected] ~]# setenforce 0
  2 
  3 [[email protected] ~]# iptables -F

5.3 重启服务

  1 [[email protected] ~]# systemctl restart nfs

六 验证测试

6.1 客户端安装nfs

  1 [[email protected] ~]# yum -y install nfs-utils.x86_64 #安装完之后客户端不需要启动nfs服务
  2 
  3 [[email protected] ~]# 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 [[email protected] ~]# mkdir /data
  2 
  3 [[email protected] ~]# mount -t nfs 192.168.10.10:/mywork /data/
  4 
  5 [[email protected] ~]# vi /etc/fstab #开机挂载
  6 
  7 192.168.10.10:/mywork /data nfs defaults 0 0
  8 
  9 #也可添加tcp使nfs使用tcp协议传输
 10 
 11 [[email protected] ~]# mount -a
 12 
 13 [[email protected] ~]# 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 [[email protected] ~]# cd /data/
 22 
 23 [[email protected] data]# touch test.txt
 24 
 25 [[email protected] 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配置实例的主要内容,如果未能解决你的问题,请参考以下文章

solr分布式索引实战分片配置读取:工具类configUtil.java,读取配置代码片段,配置实例

创建片段而不从 java 代码实例化它

片段事务中的实例化错误

web前端开发JQuery常用实例代码片段(50个)

创建片段的新实例时菜单未膨胀

VSCode自定义代码片段11——vue路由的配置