centOS7.9部署nfs

NFS原理

  • 先启动rpcbind服务
  • 再启动nfs服务
  • 用户访问rpcbind服务获取nfs信息(端口)
  • 通过信息与nfs连接,然后使用nfs

服务端配置

安装nfs,一般安装nfs-utils就行rpcbind是依赖会自动安装

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

开启rpcbind服务,加入开机启动

[root@nfs01 ~]# systemctl start rpcbind
[root@nfs01 ~]# systemctl enable rpcbind

查询rpcbind服务注册信息

[root@nfs01 ~]# rpcinfo -p
   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper

启动nfs服务,加入开机自启动

[root@nfs01 ~]# systemctl start nfs
[root@nfs01 ~]# systemctl enable nfs
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.

再次查看fpcbind服务注册信息,就能看到nfs信息了

[root@nfs01 ~]# rpcinfo -p
   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper
    100024    1   udp  44881  status
    100024    1   tcp  41376  status
    100005    1   udp  20048  mountd
    100005    1   tcp  20048  mountd
    100005    2   udp  20048  mountd
    100005    2   tcp  20048  mountd
    100005    3   udp  20048  mountd
    100005    3   tcp  20048  mountd
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
    100021    1   udp  38962  nlockmgr
    100021    3   udp  38962  nlockmgr
    100021    4   udp  38962  nlockmgr
    100021    1   tcp  40129  nlockmgr
    100021    3   tcp  40129  nlockmgr
    100021    4   tcp  40129  nlockmgr

创建好用于共享的目录

[root@nfs01 ~]# mkdir -p /nfsdata

更改目录所有者、组为nfsnobody这个用户安装nfs时会自动创建

[root@nfs01 ~]# id nfsnobody
uid=65534(nfsnobody) gid=65534(nfsnobody) groups=65534(nfsnobody)
[root@nfs01 ~]# chown nfsnobody:nfsnobody /nfsdata
[root@nfs01 ~]# ll -d /nfsdata
drwxr-xr-x 2 nfsnobody nfsnobody 6 Nov 14 08:38 /nfsdata

编辑nfs配置文件,第一个指定目录,第二是指定可以访问的网段可读可写

[root@nfs01 ~]# vim /etc/exports
/nfsdata 10.0.0.0/24(rw)
rw 读写
ro  只读(read only)
sync 同步(数据实时写入磁盘)
async 异步(数据先写入缓存,然后再写入磁盘)
root_squash 如果是root用户,则再nfs服务端上面会被压缩为nfs匿名用户
no_all_squash 如果不是root用户,则再nfs服务端上面不会进行压缩,保持原有用户(会报错权限拒绝)

all_squash 

无论是什么用户,到了nfs服务端上面都压缩为nfs匿名用户

anonuid

指定匿名用户的uid(用户名)

anongid

指定匿名用户的gid(用户组名字)

 

查询共享哪些目录:showmount -e 10.0.0.31   加ip就是指定查ip那台机,不加就是查当前这台机

[root@nfs01 ~]# showmount -e
Export list for nfs01:
/nfsdata 10.0.0.0/24

本地挂载测试

[root@nfs01 ~]# mount 10.0.0.31:/nfsdata /mnt
[root@nfs01 ~]# df -h
Filesystem                            Size  Used Avail Use% Mounted on
devtmpfs                              475M     0  475M   0% /dev
tmpfs                                 487M     0  487M   0% /dev/shm
tmpfs                                 487M   14M  473M   3% /run
tmpfs                                 487M     0  487M   0% /sys/fs/cgroup
/dev/mapper/centos_xiaohanshen2-root   37G  2.1G   35G   6% /
/dev/sda1                            1014M  138M  877M  14% /boot
tmpfs                                  98M     0   98M   0% /run/user/0
10.0.0.31:/nfsdata                     37G  2.1G   35G   6% /mnt

 

客户端配置

创建挂载目录(生产环境是用户上传目录)

[root@backup ~]# mkdir -p /upload

安装nfs

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

挂载

[root@backup ~]# mount 10.0.0.31:/nfsdata /upload

搞定

挂载选项

mount  
-t 指定文件系统类型-t nfs      -t xfs
-o   用来指定挂载选项

 

umount
-lf 强制卸载

 

posted @ 2021-11-14 09:10  小寒神。  阅读(352)  评论(0编辑  收藏  举报