centos安装NFS服务
服务端安装NFS服务
1、查看系统是否已安装NFS
[root@bogon ~]# rpm -qa | grep nfs [root@bogon ~]# rpm -qa | grep rpcbind [root@bogon ~]#
2、安装NFS
[root@bogon ~]# yum -y install nfs-utils rpcbind 完毕!
服务端配置
在NFS服务端上创建共享目录/export/nfs并设置权限
[root@bogon ~]# mkdir -p /export/nfs [root@bogon ~]# chmod 666 /export/nfs/
编辑export文件
[root@bogon ~]# vim /etc/exports /export/nfs 10.10.103.0/24(rw,no_root_squash,no_all_squash,sync)
常见的参数则有: 参数值 内容说明 rw ro 该目录分享的权限是可擦写 (read-write) 或只读 (read-only),但最终能不能读写,还是与文件系统的 rwx 及身份有关。
sync async sync 代表数据会同步写入到内存与硬盘中,async 则代表数据会先暂存于内存当中,而非直接写入硬盘!
no_root_squash root_squash 客户端使用 NFS 文件系统的账号若为 root 时,系统该如何判断这个账号的身份?预设的情况下,客户端 root 的身份会由 root_squash 的设定压缩成 nfsnobody, 如此对服务器的系统会较有保障。但如果你想要开放客户端使用 root 身份来操作服务器的文件系统,那么这里就得要开 no_root_squash 才行!
all_squash 不论登入 NFS 的使用者身份为何, 他的身份都会被压缩成为匿名用户,通常也就是 nobody(nfsnobody) 啦!
anonuid anongid anon 意指 anonymous (匿名者) 前面关于 *_squash 提到的匿名用户的 UID 设定值,通常为 nobody(nfsnobody),但是你可以自行设定这个 UID 的值!当然,这个 UID 必需要存在于你的 /etc/passwd 当中! anonuid 指的是 UID 而 anongid 则是群组的 GID 啰。
配置生效
[root@bogon ~]# exportfs -r
启动rpcbind、nfs服务
正在启动 rpcbind: [确定] [root@bogon lys]# service nfs start 启动 NFS 服务: [确定] 启动 NFS mountd: [确定] 启动 NFS 守护进程: [确定] 正在启动 RPC idmapd: [确定]
查看 RPC 服务的注册状况
[root@bogon lys]# rpcinfo -p localhost 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 100005 1 udp 49979 mountd 100005 1 tcp 58393 mountd 100005 2 udp 45516 mountd 100005 2 tcp 37792 mountd 100005 3 udp 32997 mountd 100005 3 tcp 39937 mountd 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 2 tcp 2049 nfs_acl 100227 3 tcp 2049 nfs_acl 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 2 udp 2049 nfs_acl 100227 3 udp 2049 nfs_acl 100021 1 udp 51112 nlockmgr 100021 3 udp 51112 nlockmgr 100021 4 udp 51112 nlockmgr 100021 1 tcp 43271 nlockmgr 100021 3 tcp 43271 nlockmgr 100021 4 tcp 43271 nlockmgr
选项与参数: -p :针对某 IP (未写则预设为本机) 显示出所有的 port 与 porgram 的信息; -t :针对某主机的某支程序检查其 TCP 封包所在的软件版本; -u :针对某主机的某支程序检查其 UDP 封包所在的软件版本;
在你的 NFS 服务器设定妥当之后,我们可以在 server 端先自我测试一下是否可以联机喔!就是利用 showmount 这个指令来查阅!
[root@bogon lys]# showmount -e localhost Export list for localhost: /export/nfs 10.10.103.0/24
选项与参数: -a :显示目前主机与客户端的 NFS 联机分享的状态; -e :显示某部主机的 /etc/exports 所分享的目录数据。
六、客户端配置
安装nfs-utils客户端
[root@bogon ~]# yum -y install nfs-utils 完毕!
创建挂载目录
[root@bogon ~]# mkdir /testnfs
查看服务器抛出的共享目录信息
[root@bogon ~]# showmount -e 10.10.103.80 Export list for 10.10.103.80: /export/nfs 10.10.103.0/24
[root@bogon ~]# mount -t nfs 10.10.103.80:/export/nfs /testnfs
七、测试结果
查看挂载结果
[root@bogon ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 18G 1.1G 16G 7% / tmpfs 112M 0 112M 0% /dev/shm /dev/sda1 477M 54M 398M 12% /boot 10.10.103.80:/export/nfs 18G 1.1G 16G 7% /lys
服务端
[root@bogon testnfs]# echo "test" > test.txt
客户端
[root@bogon ~]# cat /testnfs/test.txt test
[root@bogon ~]# echo "204" >> /testnfs/test.txt
服务端
[root@bogon lys]# cat /export/nfs/test.txt test 204
卸载已挂在的NFS
[root@bogon ~]# umount /lys/ [root@bogon ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 18G 1.1G 16G 7% / tmpfs 112M 0 112M 0% /dev/shm /dev/sda1 477M 54M 398M 12% /boot
结束
参考 https://www.cnblogs.com/liuyisai/p/5992511.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端