NFS安装使用指南

什么是NFS?

NFS全称为网络文件系统,即Network File System。NFS基于UDP/IP协议,采用远程过程调用RPC机制,是当前主流异构平台共享文件系统。

NFS分为客户端和服务端,客户端可以透明地读取远端服务器上的文件,就像读取本地文件一样。

实现原理

NFS的服务端对外提供服务的端口是随机的,要实现在网络间进行文件传输,首先rpcbind服务对外开放111端口,服务端向其注册端口信息,客户端通过111端口获取NFS的端口信息,从而通过随机端口进行文件传输。

环境说明

操作系统IP地址
服务端Ubuntu192.168.3.128
客户端CentOS192.168.3.202

安装服务端

Ubuntu操作系统下使用apt命令安装服务端。

apt install nfs-kernel-server

安装nfs-kernel-server时,会同时安装rpcbind软件包。

安装完成后两个服务已经是运行状态。

root@ubuntu:~# systemctl status rpcbind
● rpcbind.service - RPC bind portmap service
     Loaded: loaded (/lib/systemd/system/rpcbind.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-04-28 15:19:21 UTC; 1min 8s ago
TriggeredBy: ● rpcbind.socket
       Docs: man:rpcbind(8)
   Main PID: 14522 (rpcbind)
      Tasks: 1 (limit: 4575)
     Memory: 1.2M
     CGroup: /system.slice/rpcbind.service
             └─14522 /sbin/rpcbind -f -w

root@ubuntu:~# systemctl status nfs-server.service 
● nfs-server.service - NFS server and services
     Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled)
     Active: active (exited) since Thu 2022-04-28 15:19:28 UTC; 1min 12s ago
   Main PID: 15229 (code=exited, status=0/SUCCESS)
      Tasks: 0 (limit: 4575)
     Memory: 0B
     CGroup: /system.slice/nfs-server.service

服务端配置

在配置前需要手动创建共享目录:

mkdir -p /data/nfs

通过/etc/exports配置文件进行共享目录及客户端地址的配置,其格式为:

共享目录 [客户端1(参数项)] [客户端2(参数项)]

常用的参数项为:

参数项参数项说明
ro只读
rw读写
sync数据同时写入共享内存和硬盘
async数据先写入内存,不直接写入硬盘

配置示例:

/data/nfs 192.168.3.0/24(ro) 172.16.0.0/24(rw)

修改配置文件后无需重启nfs服务,通过exportfs命令重新加载生效。

通过showmount -e命令可以看到共享目录已经挂载。

root@ubuntu:/data/nfs# showmount -e
Export list for localhost:
/data/nfs 192.168.3.0/24

安装客户端

CentOS操作系统下,使用yum install命令安装rpcbindnfs-utils软件包。

yum install -y rpcbind nfs-utils

查看服务端共享目录

在客户端通过showmount -e命令可以查看服务端已经挂载的共享目录。

[root@k8s-node system]# showmount -e 192.168.3.128
Export list for 192.168.3.128:
/data/nfs 192.168.3.0/24

客户端挂载共享目录

客户端需要挂载服务端共享的目录,才能在本地访问远程服务端的目录。

在挂载前需要手动创建本地目录:

mkdir -p /data/nfs

挂载共享目录:

mount -t nfs 192.168.3.128:/data/nfs /data/nfs

验证

在服务端/data/nfs目录下创建文件:

echo 'Hello' > /data/nfs/test

此时在客户端的/data/nfs目录下可以看到文件内容:

[root@localhost nfs]# cat /data/nfs/test 
Hello
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值