无法在 virtualbox 的共享文件夹内 chmod

无法在 virtualbox 的共享文件夹内 chmod

我已将一个文件夹从 Windows 共享到我的虚拟机。共享文件夹已正确安装,我可以在该文件夹中读写,但无法更改共享文件夹中任何文件的权限。

以下是共享文件夹的挂载选项

myVM on /media/sf_myVM type vboxsf (rw,nodev,relatime,ttl=0,iocharset=utf8,uid=0,gid=999,dmode=0770,fmode=0770,tag=VBoxAutomounter)

用户已经是 vboxsf 组的一部分

uid=1000(vmuser) gid=1000(vmuser) groups=1000(vmuser),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),116(lpadmin),126(sambashare),999(vboxsf),1001(sftp)

当尝试使用 chmod 更改共享文件夹内任何文件的权限时,会引发以下错误。

chmod: changing permissions of 'perm.txt': Operation not permitted

答案1

文件模式信息存储在文件系统元数据中。 Linux 文件系统有此元数据,Windows 文件系统没有(至少元数据不一样)。即使您从 Linux 虚拟机访问文件系统,实际文件也会通过共享文件夹写入 Windows 文件系统。请注意dmode=0770fmode=0770mount 选项。由于 Windows 没有此元数据,因此它告诉 Linux“使其看起来像目录具有模式 0700,文件具有模式 0770”。

您尝试更改的模式信息一开始就不存在。

答案2

我不记得 MS-Windows 可以做到这一点,但让我们假设它可以。挂载选项具有与活动用户不同的 uid/gid。这可能会阻止它工作,以sudo使其工作的方式进行解释。

相关内容