Ubuntu16.04下nfs服务配置后客户端无法挂载的解决方法

问题描述

nfs服务配置完成后无法被客户端正常挂载,客户端执行"showmount -e 服务端IP地址"时会阻塞住,或者执行mount命令时无法成功。

解决方法

这种问题一般是防火墙或SELINUX问题造成的,把防火墙关闭后重启nfs服务即可。
Ubuntu下关闭防火墙的命令为:

feng@ubuntu:~$ sudo ufw status
状态: 激活
feng@ubuntu:~$ sudo ufw disable
防火墙在系统启动时自动禁用
feng@ubuntu:~$ sudo /etc/init.d/rpcbind restart 
[ ok ] Restarting rpcbind (via systemctl): rpcbind.service.
feng@ubuntu:~$ sudo /etc/init.d/nfs-kernel-server restart 
[ ok ] Restarting nfs-kernel-server (via systemctl): nfs-kernel-server.service.

此时客户端重新进行“showmount -e 服务端IP地址”以及挂载即可。

补充

参考:https://baike.baidu.com/item/NFS/812203?fr=aladdin
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

Ubuntu下配置nfs服务

  • 安装nfs服务:sudo apt install nfs-kernel-server
  • 在本地目录下创建一个文件夹用于共享使用,例如/home/feng/workSpace/nfsShare这个文件夹;
  • 修改配置文件:sudo vim /etc/exports,在文件后加入/home/feng/workSpace/nfsShare *(ro,sync,no_root_squash)
  • 保存后重启服务:
  • feng@ubuntu:/$ sudo /etc/init.d/rpcbind restart
  • feng@ubuntu:/$ sudo /etc/init.d/nfs-kernel-server restart
    修改配置文件时,括号中的内容对应给出的权限,(ro,sync,no_root_squash)
    ro/rw : 只读/读写 sync:同步 no_root_squash:不降低root用户的权限
    值得注意的是读写权限,开放读写权限后客户端可以直接往服务端上写入东西。

挂载

  • 执行showmount -e [服务器IP地址]可以查看服务器开放了哪些共享目录;例如:showmount -e 192.168.1.123
  • 执行挂载:mount -t nfs -o nolock [服务器IP地址]:[共享目录路径] [本机用于挂载的路径];例如:mount -t nfs -o nolock 192.168.1.123:/home/zefin/nfsShare /mnt即:挂载成功后,访问本地/mnt目录时即是访问服务端的/home/zefin/nfsShare的目录。
  • 如果出现挂载失败或者“permission denied”,先检查挂载的共享目录路径是否出错,再排查其他问题。
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值