NFS server

NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法, 使用NFS服务能够方便地使各unix-like系统之间实现共享,但如果需在unix-like和windows系统之间共享,那就需要samba了。

NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的。NFS应用场景,常用于高可用文件共享,多台服务器共享同样的数据,可扩展性比较差,本身高可用方案不完善,取而代之的数据量比较大的可以采用MFS、TFS、HDFS等等分布式文件系统。NFS服务器监听portmap端口udp和tcp 111、nfsd端口udp和tcp 2049、手动指定mountd端口udp和tcp xxx,那就需要在本地防火墙允许这些端口访问

  • 一 . 配置 NFS 服务器
  1. 安装nfs-utils
[root@localhost ~]# dnf -y install nfs-utils
==============================================================================================================================================================================================================================================================================
 软件包                                                            架构                                                      版本                                                              仓库                                                                      大小
==============================================================================================================================================================================================================================================================================
安装:
 nfs-utils                                                         x86_64                                                    1:2.3.3-59.el8                                                    rhel-8-baseos-rpms                                                       515 k
安装依赖关系:
 gssproxy                                                          x86_64                                                    0.8.0-21.el8                                                      rhel-8-baseos-rpms                                                       119 k
 keyutils                                                          x86_64                                                    1.5.10-9.el8                                                      rhel-8-baseos-rpms                                                        66 k
 libev                                                             x86_64                                                    4.24-6.el8                                                        rhel-8-appstream-rpms                                                     52 k
 libverto-libev                                                    x86_64                                                    0.3.2-2.el8                                                       rhel-8-appstream-rpms                                                     16 k

事务概要
================================================================================================================================================================================================================
安装  5 软件包
=============================
总下载:769 k
安装大小:2.0 M
下载软件包:
(1/5): keyutils-1.5.10-9.el8.x86_64.rpm                                                                                                                                                                                                        14 MB/s |  66 kB     00:00

=============================

总计                                                                                                                                                                                                                                           62 MB/s | 769 kB     00:00
运行事务
  准备中  :                                                                                                                                                                                                                                                               1/1
  安装    : libev-4.24-6.el8.x86_64                                                                                                                                                                                                                                       =============================
                                                                                                                                                                                                                           5/5
  运行脚本: nfs-utils-1:2.3.3-59.el8.x86_64                                                                                                                                                                                                                               5/5
  验证    : gssproxy-0.8.0-21.el8.x86_64                                                                                                                                                                                                                                                                                                                                                                                                           
                                                                                                                                                                                     5/5
已更新安装的产品。

已安装:
  gssproxy-0.8.0-21.el8.x86_64                         keyutils-1.5.10-9.el8.x86_64                         libev-4.24-6.el8.x86_64                         libverto-libev-0.3.2-2.el8.x86_64                         nfs-utils-1:2.3.3-59.el8.x86_64

完毕!
  1. 配置nfs目录
[root@localhost ~]# cat /etc/exports
/home/nfsshare  * (rw,no_root_squash)


[root@localhost ~]# mkdir -p /home/nfsshare

3.开机自启动服务

[root@localhost ~]# systemctl enable --now rpcbind nfs-server

查看服务状态
[root@localhost ~]# systemctl status rpcbind nfs-server
● rpcbind.service - RPC Bind
   Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2024-10-29 10:09:02 EDT; 15min ago
     Docs: man:rpcbind(8)
 Main PID: 27534 (rpcbind)
    Tasks: 1 (limit: 26213)
   Memory: 984.0K
   CGroup: /system.slice/rpcbind.service
           └─27534 /usr/bin/rpcbind -w -f

10月 29 10:09:02 localhost.localdomain systemd[1]: Starting RPC Bind...
10月 29 10:09:02 localhost.localdomain systemd[1]: Started RPC Bind.

● nfs-server.service - NFS server and services
   Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; enabled; vendor preset: disabled)
  Drop-In: /run/systemd/generator/nfs-server.service.d
           └─order-with-mounts.conf
   Active: active (exited) since Tue 2024-10-29 10:09:02 EDT; 15min ago
 Main PID: 27564 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 26213)
   Memory: 0B
   CGroup: /system.slice/nfs-server.service

10月 29 10:09:02 localhost.localdomain systemd[1]: Starting NFS server and services...
10月 29 10:09:02 localhost.localdomain exportfs[27548]: exportfs: /etc/exports:1: unknown keyword "(rw"
10月 29 10:09:02 localhost.localdomain systemd[1]: Started NFS server and services

/etc/exports 中条目的默认选项

ro                     只读访问

rw                     读写访问

sync                   所有数据在请求时写入共享

hide                   在NFS共享目录中不共享其子目录

no_hide                共享NFS目录的子目录

all_squash             共享文件的UID和GID映射匿名用户anonymous,适合公用目录。

no_all_squash           保留共享文件的UID和GID(默认)

root_squash            root用户的所有请求映射成如anonymous用户一样的权限(默认)

no_root_squas          root用户具有根目录的完全管理访问权限
  • 二 . 配置 NFS 客户端以在 NFS 客户端上挂载 NFS 共享

安装nfsnfs-utils

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

测试是否可以访问nfs目录

[root@rhel8 ~]# showmount -e 10.255.xxx.xxx
Export list for 10.255.xxx.xxx:
/home/nfsshare *

挂载nfs目录

[root@rhel8 ~]# mount -t nfs 10.255.xxx.xxx:/home/nfsshare /mnt/
[root@rhel8 ~]#

查看挂载

[root@rhel8 ~]# df -h
Filesystem                     Size  Used Avail Use% Mounted on
devtmpfs                       7.8G     0  7.8G   0% /dev
tmpfs                          7.9G     0  7.9G   0% /dev/shm
tmpfs                          7.9G  1.5M  7.9G   1% /run
tmpfs                          7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/mapper/VolGroup-lv_root    50G   39G  8.5G  82% /
/dev/mapper/VolGroup-lv_home    41G   24K   39G   1% /home
/dev/sda1                      474M  221M  225M  50% /boot
tmpfs                          1.6G   12K  1.6G   1% /run/user/42
tmpfs                          1.6G  4.0K  1.6G   1% /run/user/0
10.255.xxx.xxx:/home/nfsshare  100G  789M  100G   1% /mnt


关注小张的知识杂货铺,让我们一起学习一起进步

posted @ 2024-10-29 15:14  小张1995  阅读(9)  评论(0编辑  收藏  举报