从其中一个服务器成功安装目录(ZFS远程存储)后,我得到了一个"操作不允许"我尝试更改目录的所有权时出错。我使用以下命令: 要安装远程目录:
mount -t nfs 10.1.32.33:/dir/temp/tools /home/materials
安装目录后,内容属于nobody:nobody
我想更改所有权,以便我可以在目录中运行安装程序。 我使用以下命令更改了所有权,但它无效:
chown -R otm:otm materials /
我总是可以在不使用ZFS存储的情况下将文件上传到服务器,但是我想开始创建一个中央安装程序存储库,因此我不需要上传文件/安装程序以便将来安装服务器。我感谢你的帮助。
答案 0 :(得分:1)
默认情况下,NFS服务器不允许root访问文件 - root通常映射到" nobody"。
请参阅"root squash":
Root squash [2] [3]减少了遥控器的访问权限 超级用户(root)使用身份验证时(本地用户是 与远程用户相同)。它主要是NFS的一个特性,但可能是 也适用于其他系统。
远程文件系统由多个共享时出现此问题 用户。这些用户属于一个或多个组。在Unix中,每一个 文件和文件夹通常具有单独的权限(读,写, 执行)为所有者(通常是文件的创建者),为 所有者所属的群体,以及" world" (所有其他 用户)。这允许仅限制对读写访问的限制 一般来说,NFS服务器也必须是授权用户 受防火墙保护。
超级用户拥有比普通用户更多的权利,能够 更改文件所有权,设置任意权限并访问所有权限 保护内容。即使是需要root权限的用户也是如此 个别工作站可能未获得类似行动的授权 在共享文件系统上。根壁球减少了遥控器的权利 root,让一个不再是超级用户。在类似UNIX的系统上,root 可以在/ etc / exports文件中打开和关闭squash选项 服务器端。
执行root squash后,授权的超级用户执行 直接登录NFS服务器后的限制操作 只需挂载导出的NFS文件夹即可。
一般情况下,你不要想要禁用root壁球,除非你真的知道你正在做什么,因为你可以创建严重的安全问题去做。因为你甚至不知道它存在......
(提及/etc/exports
是一个极其有限的陈述,在许多系统上都是错误的 - 比如Solaris。)