mount.nfs:mount(2):权限被拒绝

mount.nfs:mount(2):权限被拒绝

我在 /media/hdd 上安装了一个外部硬盘,我想与另一个客户端共享它,具体来说是在文件夹 /mnt/archive 中。我想将客户端的一些文件保存到这个硬盘中

我已经遵循的步骤是https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nfs-mount-on-ubuntu-16-04

IP 如下:

IP 服务器:69.112.130.223 IP 客户端:69.112.130.130

我已经尝试过这个命令:

sudo mount -v 69.112.130.223:/media/proton /mnt/archive

但是我收到了以下错误:

 mount: no type was given - I'll assume nfs because of the colon
 mount.nfs: timeout set for Mon Oct 29 19:08:13 2018
 mount.nfs: trying text-based options 'vers=4,addr=69.112.130.223,clientaddr=69.112.130.130'
 mount.nfs: mount(2): Permission denied
 mount.nfs: access denied by server while mounting 69.112.130.223:/media/proton

客户端是 UBUNTU 14.04,服务器是 18.04

我的服务器端的 /etc/exports 如下所示:

# /etc/exports: the access control list for filesystems which may be exported
#       to NFS clients.  See exports(5).

/media/proton   69.112.130.130(rw,sync,no_root_squash,no_subtree_check)

我在服务器端的 rpc 信息是:

rpcinfo -p
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  57154  mountd
100005    1   tcp  48817  mountd
100005    2   udp  50301  mountd
100005    2   tcp  52587  mountd
100005    3   udp  52789  mountd
100005    3   tcp  57659  mountd
100003    3   tcp   2049  nfs
100003    4   tcp   2049  nfs
100227    3   tcp   2049
100003    3   udp   2049  nfs
100227    3   udp   2049
100021    1   udp  44354  nlockmgr
100021    3   udp  44354  nlockmgr
100021    4   udp  44354  nlockmgr
100021    1   tcp  39665  nlockmgr
100021    3   tcp  39665  nlockmgr
100021    4   tcp  39665  nlockmgr

在客户端:

rpcinfo -p
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
100024    1   udp  34223  status
100024    1   tcp  36796  status
100003    2   tcp   2049  nfs
100003    3   tcp   2049  nfs
100003    4   tcp   2049  nfs
100227    2   tcp   2049
100227    3   tcp   2049
100003    2   udp   2049  nfs
100003    3   udp   2049  nfs
100003    4   udp   2049  nfs
100227    2   udp   2049
100227    3   udp   2049
100021    1   udp   2002  nlockmgr
100021    3   udp   2002  nlockmgr
100021    4   udp   2002  nlockmgr
100021    1   tcp   2001  nlockmgr
100021    3   tcp   2001  nlockmgr
100021    4   tcp   2001  nlockmgr
100005    1   udp   2000  mountd
100005    1   tcp   2000  mountd
100005    2   udp   2000  mountd
100005    2   tcp   2000  mountd
100005    3   udp   2000  mountd
100005    3   tcp   2000  mountd

我在服务器端的 /etc/hosts.allow 中添加了以下行

  rpcbind mountd nfsd statd lockd rquotad : 69.112.130.130

我很确定错误与服务器端以及权限配置方式有关,但我到处都找过了,却找不到解决方案

我可以从客户端和服务器端 ping 和 ssh,并且可以使用 ssfhs 安装硬盘,但我想使用 nfs

答案1

当我的驱动器安装为 /media/xxxx 时,我遇到了类似的问题。

我必须在服务器上安装其中一个文件夹,然后共享该文件夹。对我来说,这很有效。

例子:

$ sudo mount -o bind /mnt/MyRebindPath /media/mysdadrive/Myfolder

在 /etc/exports

 /mnt/MyRebindPath **(rw,sync,no_subtree_check)

并在客户端机器上

$ sudo mount -t nfs SERVERIP:/mnt/MyRebindPath /mn

答案2

我也遇到了这个错误(与 OP 相同):

mount.nfs: mount(2): Permission denied

我按照以下两个步骤来消除它:

  1. 确保服务器和客户端导出(和挂载)目录的所有者相同,并且它们的giduid两端相同

  2. 确保/etc/exports具有以下格式:

    /home/foo/dir_to_export_to_client client_name_or_ip(options)

然后运行exportfs -rav

-a: Export or unexport all directories.

-r: Reexport all directories

-v: Verbose.

注意:如果您运行的是使用 systemd 的 Linux 发行版,那么每次对服务器端进行修改时重新启动 nfs-server.service 可能会给您带来一些好处:

sudo systemctl restart nfs-server.service

相关内容