mount reason give by server:Permission denid

本文记录了解决在CentOS虚拟机上挂载主机NFS共享目录时遇到的“Permission denied”错误的过程。通过检查客户端和服务端配置、启动NFS服务及调整端口设置,最终实现了成功挂载。

在虚拟机centos 上mount主机的NFS共享目录。

mount 10.0.2.2:/home/test/share /mnt遇到如下错误:

mount: 10.0.2.2:/home/test/share failed,reason given by server:Permission dened

处理过程如下:

在客户端

1、showmount -e 10.0.2.2 显示正常。说明服务端正常

2、/etc/init.d/portmap status   portmap正常运行

portmap(pid 2124) is running ...

3、rpcinfo -p  PORTMAP用111端口正常

port

111 portmapper

4、/etc/init.d/nfs status       NFS没有运行

rpc.mountd is stopped

nfsd is stopped

rc.rquotad is stopped

5、查看 服务端日志

Jul 19 10:58:44 boydreaming-Latitude-5290 rpc.mountd[8271]: refused mount request from 127.0.0.1 for /home/test/share (/home/test/share): illegal port 37393

在服务端exportfs 加上insecure,使用大于1024的端口。

/home/test/share  *(rw,sync,no_subtree_check,no_root_squash,insecure)

exportfs -va

/etc/init.d/nfs-kernel-server restart

客户端mount正常.

总结:可以参看NFS原理详解。有助于理解NFS认证过程。虽然,后来版本升级,命令会有不一样,比如PORTMAP变为RPCBIND,或nfs-kernel-server等,但基本原理相同。

注意,参看man手册,ip地址限制不一定用*通配符。参看系统日志,查看出错。对于主机向虚拟共享来说,如果是NAT模式,它是127.0.0.1而不是同一网段。

 

<think> 我们正在解决NFS挂载时的"Permission denied"错误。根据引用[1]中提到的"access denied by server",引用[2]和[3]中提到了挂载命令的用法和可能出现的错误(如需要指定版本或选项)。我们注意到错误信息是服务器返回的权限拒绝,因此问题可能出在NFS服务器的配置上。 解决思路: 1. 检查服务器端共享目录的导出设置(/etc/exports),确保客户端IP有访问权限。 2. 检查服务器端共享目录的本地文件系统权限,确保NFS进程有权限访问该目录。 3. 客户端挂载时尝试指定NFS版本(如vers=3或vers=4),因为不同版本的权限处理可能不同。 4. 检查服务器端nfs服务是否运行,以及防火墙设置。 具体步骤: 步骤1:在服务器端检查/etc/exports文件 确保有类似以下行(假设客户端IP为138.100.110.0/24网段,但实际需要根据客户端的网络来设定): /VXProd 138.100.110.0/24(rw,sync,no_root_squash) 注意:这里我们假设客户端IP在138.100.110.0/24网段,如果不是,请替换为正确的网段或IP。如果有多个客户端,可以用空格分隔多个网段或IP。 步骤2:修改/etc/exports后,重新导出共享目录 sudo exportfs -ra 步骤3:在服务器端检查共享目录的本地权限 /VXProd目录应该对NFS服务器进程可读(至少)。可以使用: sudo chmod -R 755 /VXProd # 或者根据实际需要设置 步骤4:在服务器端检查NFS服务状态 sudo systemctl status nfs-server # 或者其他类似的服务名,如nfs-kernel-server 步骤5:如果服务器端有防火墙,需要开放NFS相关端口(如2049)。或者临时关闭防火墙测试(生产环境不推荐): sudo ufw disable # 对于使用ufw的系统 # 或者 sudo systemctl stop firewalld # 对于使用firewalld的系统 步骤6:在客户端尝试指定NFS版本挂载: sudo mount -t nfs -o vers=3 138.100.110.221:/VXProd /home/nfsbakvx/ 或者 sudo mount -t nfs -o vers=4 138.100.110.221:/VXProd /home/nfsbakvx/ 如果以上步骤仍不能解决,可能需要查看服务器日志(/var/log/messages或/var/log/syslog)来获取更详细的错误信息。 注意:在客户端挂载时,如果使用sudo,则挂载点为当前用户的home目录,需要确保当前用户有权限写入/home/nfsbakvx(即挂载点目录的权限)。 另外,引用[2]中提到了使用`-o nolock`选项,但通常用于旧版NFS(如NFSv2)以避免锁管理,在NFSv3或4中可能不需要。如果挂载NFSv3,可以尝试加上`nolock`。 因此,客户端尝试的命令可能是: sudo mount -t nfs -o vers=3,nolock 138.100.110.221:/VXProd /home/nfsbakvx/ 但是,根据错误信息是“Permission denied”,重点还是服务器端的权限设置。 最后,确保服务器端和客户端网络畅通且端口开放。NFS默认使用2049端口,但可能依赖其他端口(如rpcbind的111端口)。可以使用`rpcinfo -p 138.100.110.221`查看服务器端NFS服务是否正常。 总结:优先检查服务器端的/etc/exports配置和目录权限,然后尝试指定NFS版本挂载。 </think> ### NFS挂载"Permission denied"错误解决方案 您遇到的`mount: Permission denied`错误通常由NFS服务器端的权限配置问题引起。根据引用[1]和[3]描述的类似错误场景,以下是完整的排查步骤: #### 1. **检查服务器端导出配置**(关键步骤) 在NFS服务器上检查`/etc/exports`文件: ```bash sudo cat /etc/exports ``` 确保包含正确的客户端访问权限,例如: ```conf /VXProd 138.100.110.221(rw,sync,no_subtree_check) ``` 如果未配置,添加后执行: ```bash sudo exportfs -arv # 重新加载配置 ``` #### 2. **验证共享目录权限** 在服务器端确保目录权限允许访问: ```bash sudo chmod -R 755 /VXProd # 修改目录权限 sudo chown nobody:nogroup /VXProd # 修改属主为NFS默认用户 ``` > 注意:`nobody:nogroup`是NFS的通用匿名用户[^1] #### 3. **指定NFS版本挂载**(引用[2][3]方法) 在客户端尝试指定版本: ```bash # 尝试v3版本 sudo mount -t nfs -o vers=3,nolock 138.100.110.221:/VXProd /home/nfsbakvx/ # 尝试v4版本 sudo mount -t nfs -o vers=4.2 138.100.110.221:/VXProd /home/nfsbakvx/ ``` #### 4. **检查服务器防火墙** 在服务器端开放NFS端口: ```bash # 开放NFS服务端口 sudo ufw allow from 138.100.110.221 to any port nfs sudo systemctl restart nfs-server ``` #### 5. **诊断网络连接** 在客户端测试基础连接: ```bash rpcinfo -p 138.100.110.221 # 检查RPC服务 showmount -e 138.100.110.221 # 检查可挂载目录 ``` #### 6. **检查客户端挂载点权限** 确保客户端目录可写: ```bash sudo chmod 777 /home/nfsbakvx/ # 临时测试权限 ``` ### 常见原因总结 | 问题类型 | 检查点 | 解决命令示例 | |---------|--------|-------------| | 导出配置 | /etc/exports | `sudo exportfs -arv` | | 目录权限 | 属主/权限 | `sudo chown nobody:nogroup /VXProd` | | 版本兼容 | NFS协议版本 | `mount -o vers=3,...` | | 防火墙 | 端口2049/111 | `ufw allow nfs` | > 提示:80%的权限问题源于服务器端`/etc/exports`配置错误或目录权限设置不当[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值