NFS服务器

一.NFS简介

NFS(Network File System,网络文件系统)是FreeBSD支持的文件系统中的一种,它允许网络中的计算机(不同的计算机、不同的操作系统)之间通过TCP/IP网络共享资源.本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本 地文件一样.

NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统 中看来,那个远程主机的目录就好像是自己的一个磁盘分区一样。

RPC服务

由于当服务器在启动NFS时会随机 选取数个端口号,并主动向RPC注册,所以RPC知道每个NFS功能所对应的端口号,RPC将端口号通知给 客户端,让客户端可以连接到正确的端口上去。RPC采用固定端口号port 111来监听客户端的需求并向 客户端响应正确的端口号.

注:在启动NFS之前,要先启动RPC,否则NFS会无法向RPC注册。另外,RPC若重新启动,原来注册的 数据会消失不见,因此RPC重启后,它管理的所有服务都需要重新启动以重新向RPC注册。

二.NFS配置

bash 复制代码
[root@localhost ~]# yum install rpcbind
 [root@localhost ~]# yum install nfs-utils
 /etc/exports 主配置文件(文件不一定存在)
/usr/sbin/showmount 该命令主要用在client端。这个命令可以查看NFS共享出来的目录资源

 #服务端(192.168.168.128)
 [root@server data]# mkdir  /data
 [root@server data]# cat /etc/exports
 /data  192.168.168.140(rw)
 #共享目录  主机名(权限)
#可以使用完整的IP或者是网络号,例如172.24.8.128或172.24.8.0/24或者
172.24.8.128/255.255.255.0;也可以使用*表示所有主机

权限相关参数可以写多个,多个参数之间用逗号隔开,具体相关参数说明如下

bash 复制代码
[root@server data]# chmod o+w  /data/
 [root@server data]# systemctl disable firewalld --now
 [root@server data]# getenforce
 Enforcing
 [root@server data]# setenforce  0
 [root@server data]# systemctl restart nfs-server
 [root@server data]# showmount -e 192.168.168.128
 Export list for 192.168.168.128:
 /data 192.168.168.140
bash 复制代码
 #客户端(192.168.168.140)
[root@client ~]# showmount -e 192.168.168.128
 Export list for 192.168.168.128:
 /data 192.168.168.140
 [root@client ~]# mkdir -p /nfsclient/client-data/
 [root@client ~]# mount  192.168.168.128:/data  /nfsclient/client-data/
 [root@client ~]# df -h
 Filesystem               Size  Used Avail Use% Mounted on
 devtmpfs                 898M     0  898M   0% /dev
 tmpfs                    910M     0  910M   0% /dev/shm
 tmpfs                    910M  9.6M  901M   2% /run
 tmpfs                    910M     0  910M   0% /sys/fs/cgroup
 /dev/mapper/centos-root   37G  1.8G   36G   5% /
 /dev/sda1               1014M  150M  865M  15% /boot
 tmpfs                    182M     0  182M   0% /run/user/0
 192.168.168.128:/data     40G  6.2G   34G  16% /nfsclient/client-data

三.配置autofs自动挂载

在一般NFS文件系统的使用过程中,如果客户端要使用服务端所提供的文件系统,可以在 /etc/rc.d/rc.local 中设置开机时自动挂载( /etc/rc.d/rc.local 文件中写入的命令,在每次启动系统用户 登录之前都会执行一次);也可以在登录系统后手动利用mount来挂载。

autofs这个服务是在客户端的上面,它会持续的检测某个指定的目录,并预先设置当使用到该目录的某 个子目录时,将会取得来自服务器端的NFS文件系统资源,并进行自动挂载的操作。

bash 复制代码
#客户端配置autofs
 [root@client ~]# yum install autofs -y
 [root@client ~]# grep suibian /etc/auto.master
 /client  /etc/auto.suibian
 #本地端目录  具体挂载配置文件
[root@client ~]# cat /etc/auto.suibian
 upload 192.168.168.128:/nfs/upload
 #本地端子目录 挂载参数 服务器:服务器对应目录
[root@client ~]# systemctl restart autofs
 #触发自动挂载
[root@client ~]# cd /client
 [root@client ~]# cd upload
相关推荐
JuiceFS40 分钟前
JuiceFS sync 原理解析与性能优化,企业级数据同步利器
运维·后端
Logan Lie2 小时前
Web服务监听地址的取舍:0.0.0.0 vs 127.0.0.1
运维·后端
Y淑滢潇潇2 小时前
RHCE 防火墙实验
linux·运维·rhce
wadesir3 小时前
当前位置:首页 > 服务器技术 > 正文Linux网络HSRP协议(实现路由器热备份与高可用性的实用指南)
linux·服务器·网络
稻谷君W3 小时前
Ubuntu 远程访问 Win11 WSL2 并固定访问教程
linux·运维·ubuntu
泡沫·3 小时前
4.iSCSI 服务器
运维·服务器·数据库
胡八一3 小时前
解决PHP未检测到您服务器环境的sqlite3数据库扩展报错
服务器·数据库·php
不解不惑3 小时前
OpenAI whisper 语音识别服务器搭建
服务器·whisper·语音识别
gaize12133 小时前
适合业务规模较大的场景的服务器测评
服务器
悠悠121384 小时前
告别Zabbix?我用Netdata只花10分钟就搞定了50台服务器的秒级监控(保姆级实战)
运维·服务器·zabbix