之前我问过一个问题这里文件中的用户sudoers
想要sudo
在节点上运行一些命令。问题是,使用该sudo
命令,它无法访问其主页。虽然它可以访问其他文件夹。
所以,在前端,我们有
# cat /etc/exports
/export 10.10.10.1(rw,async,no_root_squash) 10.10.10.0/255.255.255.0(rw,async)
现在请看hduser
使用ssh登录计算节点。它可以运行sudo
命令来列出/
但不能运行其主页。
[hduser@compute-0-0 /]$ ls /home/hduser/
bio hadoop-2.7.2 hadoop-2.7.2.tar.gz usr
[hduser@compute-0-0 /]$ sudo ls
bin etc lib media net root share sys var
boot home lib64 misc opt sbin srv tmp
dev install lost+found mnt proc selinux state usr
[hduser@compute-0-0 /]$ sudo ls /home/hduser
ls: cannot open directory /home/hduser: Permission denied
我该如何解决这个问题?
答案1
根据评论,root
由于 被拒绝root_squash
,这是默认的导出行为。在此模式下,远程访问 fromroot
被映射到nobody
。
如果所有节点都是等效的且没有唯一性,那么您应该简化导出
/export 10.10.10.0/255.255.255.0(rw,async,no_root_squash)
进行此更改后,exportfs -a
.
如果这不能立即解决问题,则可能需要重新启动客户端(umount
相关mount
文件系统或重新启动)。