NFS介绍NFS服务端安装配置NFS配置选项介绍

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NFS介绍NFS服务端安装配置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服务需要借助RPC服务去通信。

技术分享图片
技术分享图片

NFS服务端安装配置

1.安装应用包

服务端

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

客户端

[[email protected] ~]# yum install -y nfs-utils
2.修改配置文件
[[email protected] ~]# vim /etc/exports

增加如下配置内容:

/home/nfstestdir 192.168.133.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)

//注解:

第一部分是本地要共享出去的目录。
第二部分是允许访问的主机(可以是一个IP,也可以是一个IP段)
第三部分就是小括号里面的一些权限选项。
3.创建目录及更改权限
[[email protected] ~]# mkdir /home/nfstestdir
[[email protected] ~]# chmod 777 /home/nfstestdir/
4.启动NFS服务
[[email protected] ~]# systemctl start nfs  //启动nfs服务
[[email protected] ~]# ps aux |grep nfs
root      13990  0.0  0.0      0     0 ?        S<   21:40   0:00 [nfsd4_callbacks]
root      13996  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      13997  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      13998  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      13999  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      14000  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      14001  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      14002  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      14003  0.0  0.0      0     0 ?        S    21:40   0:00 [nfsd]
root      14007  0.0  0.0 112684   976 pts/1    S+   21:40   0:00 grep --color=auto nfs
[[email protected] ~]# ps aux |grep rpc
rpc       13799  0.0  0.1  64964  1412 ?        Ss   21:25   0:00 /sbin/rpcbind -w
rpcuser   13963  0.0  0.1  42380  1748 ?        Ss   21:40   0:00 /usr/sbin/rpc.statd
root      13964  0.0  0.0      0     0 ?        S<   21:40   0:00 [rpciod]
root      13969  0.0  0.0  42564   944 ?        Ss   21:40   0:00 /usr/sbin/rpc.mountd
root      13980  0.0  0.0  21404   536 ?        Ss   21:40   0:00 /usr/sbin/rpc.idmapd
root      14009  0.0  0.0 112680   976 pts/1    R+   21:41   0:00 grep --color=auto rpc
[[email protected] ~]# systemctl enable nfs  //设置nfs开机启动
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
[[email protected] ~]# systemctl start rpcbind   //启动rpc服务
[[email protected] ~]# systemctl enable rpcbind  //设置rpc开机启动

NFS配置选项

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

客户端挂载NFS

[[email protected] ~]# showmount -e 172.16.111.100  //查看NFS的共享情况 
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)

//以上报错原因是由防火墙导致,按下面方法关闭服务端与客户端的防火墙

[[email protected] ~]# systemctl stop firewalld //关闭防火墙
[[email protected] ~]# getenforce     //关闭seLinux
Enforcing
[[email protected] ~]# setenforce 0
[[email protected] ~]# showmount -e 172.16.111.100
Export list for 172.16.111.100:
/home/nfstestdir 172.16.111.0/24
[[email protected] ~]# mount -t nfs 172.16.111.100:/home/nfstestdir /mnt/   //挂载服务端nfs
[[email protected] ~]# df -h  //查看磁盘挂载
文件系统                         容量  已用  可用 已用% 挂载点
/dev/sda3                         18G  1.1G   17G    7% /
devtmpfs                         479M     0  479M    0% /dev
tmpfs                            489M     0  489M    0% /dev/shm
tmpfs                            489M   19M  470M    4% /run
tmpfs                            489M     0  489M    0% /sys/fs/cgroup
/dev/sda1                        197M  109M   88M   56% /boot
tmpfs                             98M     0   98M    0% /run/user/0
172.16.111.100:/home/nfstestdir   18G  6.9G   11G   39% /mnt

客户端建立文件测试:

[[email protected] ~]# cd /mnt/
[[email protected] mnt]# ls
[[email protected] mnt]# touch aminglinux.111
[[email protected] mnt]# ls -l
总用量 0
-rw-r--r--. 1 xietao xietao 0 1月  16 14:19 aminglinux.111
[[email protected] mnt]# id xietao
uid=1000(xietao) gid=1000(xietao) 组=1000(xietao)

服务端查询建立文件是否同步:

[[email protected] ~]# ls -l /home/nfstestdir/
总用量 0
-rw-r--r-- 1 mysql mysql 0 1月  16 14:19 aminglinux.111
[[email protected] ~]# id mysql
uid=1000(mysql) gid=1000(mysql) 组=1000(mysql)
说明:在客户端建立文件时会发现文件用户属主与属组是xietao,而且在服务端查询文件时用户却是mysql,这是因为nfs限定了用户,所以最终显示成这样。

以上是关于NFS介绍NFS服务端安装配置NFS配置选项介绍的主要内容,如果未能解决你的问题,请参考以下文章

53次课( NFS介绍 NFS服务端安装配置NFS配置选项)

五十NFS介绍NFS服务端安装配置NFS配置选项

NFS介绍,NFS服务端安装配置,NFS配置选项

14.1 NFS介绍 14.2 NFS服务端安装配置 14.3 NFS配置选项

NFS介绍NFS服务端安装配置NFS配置选项介绍

NFS介绍NFS服务端安装配置NFS配置选项