博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NFS 安装,设置,选项
阅读量:7155 次
发布时间:2019-06-29

本文共 3079 字,大约阅读时间需要 10 分钟。

hot3.png

14.1 NFS介绍

NFS用于在网络上共享存储

  • NFS是Network File System的缩写
  • NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本
  • NFS数据传输基于RPC协议,RPC为Remote Procedure Call的简写。
  • NFS应用场景是:A,B,C三台机器上需要保证被访问到的文件是一样的,A共享数据出来,B和C分别去挂载A共享的数据目录,从而B和C访问到的数据和A上的一致

NFS原理图

14.2 NFS服务端安装配置

服务端与客户端都需要安装nfs-util包

[root@axiang-02 ~]# yum install -y nfs-utils[root@axiang-03 ~]# yum install -y nfs-utils

新增配置文件(原来没有)

vim /etc/exports加入一行:/home/nfstestdir 192.168.133.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
  • 第一段为定义共享的目录
  • 第二段为允许访问的IP或IP段
  • 第三段即括号内容为权限选项

服务端启动

[root@axiang-02 ~]# mkdir /home/nfstestdir[root@axiang-02 ~]# chmod 777 !$  //方便实验chmod 777 /home/nfstestdir[root@axiang-02 ~]# systemctl start rpcbind[root@axiang-02 ~]# systemctl start nfs[root@axiang-02 ~]# systemctl enable rpcbind  //开机启动[root@axiang-02 ~]# systemctl enable nfs    //开机启动[root@axiang-02 ~]# netstat -lntpActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd   //111端口即rpc监听端口

14.3 NFS配置选项

  • rw 读写
  • ro 只读
  • sync 同步模式,内存数据实时写入磁盘
  • async 非同步模式
  • no_root_squash 客户端挂载NFS共享目录后,root用户不受约束,权限很大
  • root_squash 与上面选项相对,客户端上的root用户收到约束,被限定成某个普通用户
  • all_squash 客户端上所有用户在使用NFS共享目录时都被限定为一个普通用户
  • anonuid/anongid 和上面几个选项搭配使用,定义被限定用户的uid和gid

客户端挂载

安装完不用设置,需要关闭防火墙。即使放行111端口。所以建议先把两边防火墙关掉。即可使用

[root@axiang-02 ~]# iptables -F 或者 systemctl stop firewalld[root@axiang-03 ~]# iptables -F 或者 systemctl stop firewalld[root@axiang-03 ~]# showmount -e 10.1.1.8Export list for 10.1.1.8:/home/nfstestdir 10.1.1.0/24[root@axiang-03 ~]# mount -t nfs 10.1.1.8:/home/nfstestdir /mnt[root@axiang-03 ~]# df -h10.1.1.8:/home/nfstestdir   18G  7.1G   11G   40% /mnt[root@axiang-03 ~]# cd /mnt[root@axiang-03 mnt]# touch 111.txt[root@axiang-03 mnt]# ll总用量 0-rw-r--r-- 1 mysql mysql 0 8月  23 15:49 111.txt

成功共享存储。且限定用户id为1000

[root@axiang-02 ~]# ll /home/nfstestdir/总用量 0-rw-r--r-- 1 mysql mysql 0 8月  23 15:49 111.txt[root@axiang-02 ~]# id mysqluid=1000(mysql) gid=1000(mysql) 组=1000(mysql)

14.4 exportfs命令

  • exprotfs可以网络广播nfs下的磁盘操作

常用选项

  • -a 全部挂载或者全部卸载
  • -r 重新挂载
  • -u 卸载某一个目录
  • -v 显示共享目录

需要操作在服务端上

[root@axiang-02 ~]# vim /etc/exports再加入一行/tmp 10.1.1.9(rw,sync,no_root_squash)   //这里不限制root用户[root@axiang-02 ~]# exportfs -arv exporting 10.1.1.9:/tmpexporting 10.1.1.0/24:/home/nfstestdir

  • exportfs -arv 不用重启nfs服务就可以生效

客户端

[root@axiang-03 ~]# showmount -e 10.1.1.8Export list for 10.1.1.8:/home/nfstestdir 10.1.1.0/24/tmp             10.1.1.9[root@axiang-03 ~]# mount -t nfs 10.1.1.8:/tmp/ /mnt[root@axiang-03 ~]# vim /mnt/1[root@axiang-03 ~]# ls -l !$ls -l /mnt/1-rw-r--r-- 1 root root 25 8月  23 16:15 /mnt/1

14.5 NFS客户端问题

客户端文件属主属组nobody

问题:客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主、属组为nobody。

解决方法1:由于NFS 4版本会有该问题。客户端挂载时加上 -o nfsvers=3 指定使用版本3模式即可

[root@axiang-03 ~]# mount -t nfs -o nfsvers=3 10.1.1.8:/tmp/ /mnt

解决方法2:客户端和服务端vim /etc/idmapd.conf,把“#Domain = local.domain.edu” 改为 “Domain = xxx.com” (这里的xxx.com,随意定义吧),然后再重启rpcidmapd服务。CentOS7为重启rpcbind服务

转载于:https://my.oschina.net/u/3579690/blog/1519535

你可能感兴趣的文章
[BZOJ5358]/[HDU6287]口算训练
查看>>
Angular Cli 创建并且运行项目
查看>>
《几何与代数导引》例2.7.2
查看>>
Synplify 使用过程中最常用的选项及命令的介绍
查看>>
创建带属性的XML文档
查看>>
JS实现跟随鼠标的魔法文字
查看>>
[转载]谈谈关于MVP模式中V-P交互问题
查看>>
MVC中Control和View之间数据传递的方式
查看>>
centos6.9搭建lnmp环境
查看>>
linux下用eclipse开发mapreduce遇到的问题
查看>>
阻止微信浏览器下拉滑动效果(ios11.3 橡皮筋效果)
查看>>
小程序如何处理键盘覆盖输入框
查看>>
ajax
查看>>
java日历显示年份、月份
查看>>
KMP 算法
查看>>
TLD正确运行方法
查看>>
Rocket - util - GenericParameterizedBundle
查看>>
JDB调试代码 20165324 何春江
查看>>
利用css transition属性实现一个带动画显隐的微信小程序部件
查看>>
DIV+CSS中清除浮动的7种方法分析
查看>>