Dis*_*sco 38 permissions nfs chown
我有一个使用 NFS 在本地安装的远程分区。
'mount' 给出
192.168.3.1:/mnt/storage-pools/ on /pools type nfs (rw,addr=192.168.3.1)
Run Code Online (Sandbox Code Playgroud)
在我有出口的服务器上:
/mnt/storage-pools *(rw,insecure,sync,no_subtree_check)
Run Code Online (Sandbox Code Playgroud)
然后我试试
touch /pools/test1
ls -lah
-rw-r--r-- 1 65534 65534 0 Dec 13 20:56 test1
chown root.root test1
chown: changing ownership of `test1': Operation not permitted
Run Code Online (Sandbox Code Playgroud)
我错过了什么?拉我的头发。
Ser*_*sov 31
默认情况下,root_squash导出选项是打开的,因此 NFS 不允许来自客户端的 root 用户以 root 身份在服务器上执行操作,而是将其映射到由anonuid和anongid选项指定的用户/组 ID (默认值 = 65534)。这可以/etc/exports与其他导出选项一起配置。
lar*_*sks 29
阅读exports(5)有关“压根”的部分:
很多时候,在访问 NFS 服务器上的文件时,客户机上的 root 用户也被视为 root 用户是不希望的。为此,uid 0 通常映射到不同的 id:所谓的匿名或无人 uid。这种操作模式(称为“root squashing”)是默认的,可以用 no_root_squash 关闭。
所以你要:
/mnt/storage-pools *(rw,insecure,sync,no_subtree_check,no_root_squash)
Run Code Online (Sandbox Code Playgroud)
(编辑错字)
| 归档时间: |
|
| 查看次数: |
117191 次 |
| 最近记录: |