chmod 和 chown 远程 NTFS 文件系统都失败

art*_*ven 3 permissions ntfs

我们的 Ubuntu Server 12.04 系统有一个远程 NTFS 文件系统,它通过 Samba 挂载在 /media/blarg 上。

我们的一位用户在写入远程系统时遇到问题,但无法从中读取。

由于我们设置的自动挂载脚本有一个不同的用户(我们称之为 sagaba)挂载远程系统,我想我应该将 /media/blarg 的权限更改为 774 sagaba:sagaba,并使我们的用户是 sagaba 组的成员,因此他可以开展自己的业务。

不幸的是,当我尝试这样做时(即使以 root 身份),我收到一个权限被拒绝错误。

chown: changing ownership of `/media/blarg': Permission denied
Run Code Online (Sandbox Code Playgroud)

这与根压扁有关吗?我无法理解它会如何,因为挂载点是本地系统上的一个目录。

Jor*_*Lis 6

默认情况下,您无法修改通过 CIFS 挂载在 VFS 上的 NTFS 文件系统的文件权限。即使 chmod 和 chown 不抱怨,它们在这些文件系统下也不起作用。

最好的机会是使用安装选项来完成这项工作。即在挂载时定义权限。看看man mount.cifs的参数uidgid

请注意,当您为 ext4 文件系统提供服务时,CIFS 支持 chmod 和 chown,但在为 NTFS 文件系统提供服务时则不支持。NTFS 安装支持权限,但默认情况下它们是禁用的,因为您需要将 Windows 用户 ID (SID) 映射到系统上的 UID。请看一看针对 Eliah Kagan 评论的文章。即使您可以进行权限映射并使权限与直接挂载一起使用,但我不知道它们是否可以通过 CIFS 工作。

  • 这是不真实的。(1) 编辑权限 CIFS/SMB 开箱即用,零配置!也许您遇到了与服务器上的*底层文件系统* 相关的问题(例如,可能是 FAT 或 NTFS)。当我使用 Samba 将 ext4 分区从一个 Ubuntu 系统共享到另一个系统时,权限和所有权工作正常。(2) FAT 文件系统真的不支持权限,你是对的。(3) NTFS 文件系统确实支持所有权和权限,并且几乎与 `chmod` 完全兼容,但不完全兼容;使用 `chown`/`chmod` 更改它们是有效的,但默认情况下是关闭的。 (2认同)