Linux 搭建NFS文件服务器实现文件共享

2022年11月20日12:55:52

一、概念
NFS 就是 Network File System 的缩写,最早是由 Sun 这家公司所发展出来的。 它最大的功能就是可以透过网络,让不同的机器、不同的操作系统、可以彼此分享个别的文件 (share files)。我们可以简单的将他看做是一个文件服务器 (file server) !这个 NFS 服务器可以让你的 PC 来将网络远程的 NFS 服务器分享的目录,挂载到本地端的机器当中, 在本地端的机器看起来,那个远程主机的目录就好像是自己的一个磁盘分区一样 (partition)!
RPC(Remote Procedure Call)——远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。NFS 服务器在启动的时候就得要向 RPC 注册,所以 NFS 服务器也是一种 RPC server 。

二、准备工作
安装好CentOS7.4的具有独立IP的两台或多台服务器。本例以2台机器为例,服务端(提供NFS服务的一端,即数据实际存放端):192.168.80.131,客户端:192.168.80.130。

关闭防火墙:[root@localhost /]# systemctl stop firewalld

三、安装配置

1、服务端和客户端必须软件nfs-utils,事实上在安装nfs-utils的同时,rpcbind作为依赖包被安装,因此无需再单独安装rpcbind。单独安装rpcbind时不会同时安装nfs-utils。

 [root@localhost /]# yum -y install nfs-utils

2、修改配置文件(路径:/etc/exports)

描述:(注:各列都需要有空格)

/nfs   #共享的文件夹

*   #可以访问的IP段,*表示所有网段都可以访问

括号内常见参数:
    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 用户具有根目录的完全管理访问权限

 3、创建共享文件夹

[root@localhost /]# mkdir nfs

4、启动服务

[root@localhost nfs]# systemctl restart rpcbind

[root@localhost nfs]# systemctl restart nfs

5、启动客户端服务

 [root@localhost nfs]# systemctl restart nfs

 6、查看服务端共享

[root@localhost /]# showmount -e 192.168.80.131

7、客户端创建挂在文件夹(也可用mnt)

 [root@localhost /]# mkdir -p /share

 8、挂在服务端共享

[root@localhost /]# mount 192.168.80.131:/nfs /share

 9、测试(服务端共享文件中创建内容,客户端查看)

服务端:

 客户端:

 搭建成功。

  • 作者:〘乐⇔途〙
  • 原文链接:https://blog.csdn.net/weixin_49544851/article/details/121284462
    更新时间:2022年11月20日12:55:52 ,共 1437 字。