当前位置:   article > 正文

Ubuntu挂载nfs文件系统报错:mount.nfs: access denied by server while mounting 198.168.1.x:/mnt/nfs_ubuntu mount.nfs: access denied by server while mo

ubuntu mount.nfs: access denied by server while mounting

Ubuntu挂载nfs文件系统报错:mount.nfs: access denied by server while mounting 198.168.1.x:/mnt/nfs。

一、问题描述。

不能挂载Ubuntu下的文件夹,挂载时出现如下报错。

  1. [ms@ubuntu 22:28:42 14# nfs]$ sudo mount -t nfs 198.168.1.x:/mnt/nfs /mnt/nfs
  2. mount.nfs: access denied by server while mounting 198.168.1.x:/mnt/nfs
  3. [ms@ubuntu 22:29:26 15# nfs]$

二、问题分析。

权限存在问题,NFS服务配置不合理。

三、解决方案。

1、确认Ubuntu下NFS服务已正确安装。

sudo apt-get install nfs-kernel-server -y

2、查看系统有无NFS功能。

cat /proc/filesystems
rpcinfo -p

3、重启NFS服务,确认能否成功,若不正常,可查看相应的出错信息。

sudo service nfs-kernel-server restart
tail /var/log/*

4、查看询NFS服务配置文件。

more /etc/exports

5、修改配置文件/etc/exports,在文件末尾添加如下。

/mnt    *(rw,sync,no_root_squash)

6、更新配置文件,exportfs -a表示更新所有。

sudo exportfs -rv

7、重启服务portmap服务。注:在新版本Ubuntu中,portmap被取消了,被rpcbind所代替,所以要把portmap换成rpcbind。在进行nfs-kernel-server安装时,依赖包rpcbind会自动安装。

sudo /etc/init.d/portmap restart

8、重启服务NFS服务。

sudo /etc/init.d/nfs-kernel-server restart
  1. ms@ubuntu:/mnt$ sudo service nfs-kernel-server restart
  2. * Stopping NFS kernel daemon [ OK ]
  3. * Unexporting directories for NFS kernel daemon... [ OK ]
  4. * Exporting directories for NFS kernel daemon... [ OK ]
  5. * Starting NFS kernel daemon [ OK ]
  6. ms@ubuntu:/mnt$

9、挂载测试。注意:若在挂载目标文件下进行的挂载,若不能显示文件,请切换到其它目录,再次进入即可。

  1. sudo mount -t nfs 198.168.1.x:/mnt/nfs /mnt/nfs
  2. sudo mount -t nfs -o nolock 198.168.1.x:/mnt/nfs/ /mnt/nfs/

10、查看挂载情况,两方案参考。

showmount
cat /proc/mounts

11、附录。

文件/etc/exports中的“/mnt    *(rw,sync,no_root_squash)”代表的意思如下:

/mnt:是要共享的目录;
*:代表允许所有的网络段访问;
rw:是可读写权限;
sync:是资料同步写入内存和硬盘;
no_root_squash:是 Ubuntu nfs 客户端分享目录使用者的权限,如果客户端使用的是root 用户,那么对于该共享目录而言,该客户端就具有 root 权限;

其它 Ubuntu nfs 常用的参数有:

ro:只读访问;
async :nfs 在写入数据前可以相应请求;
secure: nfs 通过以下的安全 TCP/IP 端口发送;
insecure: nfs 通过 1024 以上的端口发送;
wdelay:如果多个用户要写入 NFS 目录,则归组(默认);
no_wdelay:如果多个用户要写入 NFS 目录,则立即写入,当使用 async 时,无需此设置;
hide:在 nfs 共享目录中不共享妻子目录;
no_hide:共享 nfs 目录的子目录;
subtree_check:如果共享/usr/bin 之类的子目录时,强制 nfs 检查父目录的权限(默认);
no_subtree_check:和上面相对,不检查父目录权限;
all_squash:共享文件的 UID 和 GID 映射匿名用户 anonymous,适合公用目录;
no_all_squash:保留共享文件的 UID 和 GID(默认);
root_squash root:用户的所有请求映射成如 anonymous 用户一样的权限(默认);
no_root_squash root:用户具有根目录的完全管理访问权限;
anonuid=xxx:指定 nfs 服务器/etc/passwd 文件中匿名用户多的 UID;
anongid=xxx:指定 nfs 服务器/etc/passwd 文件中匿名用户的 GID;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/486634
推荐阅读
相关标签
  

闽ICP备14008679号