为什么我不能 chown 一个 VirtualBox 共享文件夹?

nc4*_*4pk 26 linux virtualbox permissions shared-folders

我正在尝试递归chown一个 VirtualBox 共享文件夹,但我无法让它工作:

$ ls -lah
total 16K
drwxr-xr-x  4 root root   4.0K Aug  1  2012 .
drwxr-xr-x 23 root root   4.0K Jul 21  2012 ..
drwxrwx---  1 root vboxsf 4.0K May  4 17:02 sf_dev
drwxrwx---  1 root vboxsf 4.0K Sep  2 10:21 sf_dropbox
$ sudo chown -R pknight:pknight sf_dropbox && ls -lah
total 16K
drwxr-xr-x  4 root root   4.0K Aug  1  2012 .
drwxr-xr-x 23 root root   4.0K Jul 21  2012 ..
drwxrwx---  1 root vboxsf 4.0K May  4 17:02 sf_dev
drwxrwx---  1 root vboxsf 4.0K Sep  2 10:21 sf_dropbox
Run Code Online (Sandbox Code Playgroud)

我知道我可以将一个用户添加到 vboxsf 组(因为它具有完全权限),但我不想给每个用户/守护程序对我所有共享文件夹的完全权限。

我正在运行 VirtualBox 4.2.x,Windows 7 作为主机,Xubuntu 和 Debian 作为来宾。

有什么方法可以更改我的 VirtualBox 共享目录的所有者/组吗?

nc4*_*4pk 30

VirtualBox的共享的文件系统(vboxsf)不支持POSIX权限本身; 相反,它们是在安装时“设置”的:

$ mount
...
dropbox on /media/sf_dropbox type vboxsf (gid=1001,rw)
Run Code Online (Sandbox Code Playgroud)

gid位指定拥有目录的组;在我的系统上,这恰好与 vboxsf 组相对应。

您可以通过重新安装来更改用户和/或组所有权(必须按root):

# mount -t vboxsf -o remount,gid=1000,uid=1000,rw dropbox /media/sf_dropbox
Run Code Online (Sandbox Code Playgroud)

替换1000为所需的用户/组 ID,以及dropbox共享的名称(在 之后的部分sf_)。

请注意,除非您编辑/etc/fstab.


boa*_*der 5

为了使我的共享文件夹按预期运行,我遵循以下步骤:

共享文件夹设置

主持人

添加共享文件夹

添加共享文件夹

重新启动来宾。

允许软链接

VBoxManage setextradata <guest vm> VBoxInternal2/SharedFoldersEnableSymlinksCreate/<shared folder> 1
Run Code Online (Sandbox Code Playgroud)


客人

更新来宾添加内容

设备 -> 插入访客版本 CD 映像

将所有必要的用户添加到 vboxsf 组

sudo usermod -a -G vboxsf <username>
Run Code Online (Sandbox Code Playgroud)

更改权限

sudo chown -R <username>:<user group> /media/
Run Code Online (Sandbox Code Playgroud)

重新启动系统。

变更所有权

sudo mount -t vboxsf -o gid=<username>,uid=<user group>,rw <share folder name> /media/sf_<share folder name>
Run Code Online (Sandbox Code Playgroud)

这是以下中的相应行/etc/fstab

data /media/sf_data vboxsf rw,nodev,relatime,iocharset=utf8,uid=982,gid=982 0 0
Run Code Online (Sandbox Code Playgroud)

注意:我仍然无法将共享文件夹的所有权更改为随机用户