问题描述
这是我第一次使用 virtualbox 和 ubuntu (14.04),我使用的是 Windows 7 操作系统。
我正在尝试挂载一个共享文件夹,该文件夹包含我需要在 virtualbox 和 Windows 操作系统上访问的文件。我已经使用安装的 Guest Additions
中的 vboxsf
成功安装了它们。
挂载我使用命令 sudo mount -t vboxsf <dir name in vbox> <directory in linux
例如我使用 sudo mount -t vboxsf Test /home/user/Test
我找到了几种在启动时自动挂载目录的方法,例如使用 /etc/rc.local
方法( here ),您可以在其中修改将命令附加到它的所述文件(没有 sudo
)。或者通过使用 fstab
方法 ( here )。我个人更喜欢 rc.local
方法。
挂载后,它具有 dr-xr-xr-x
权限,但是一旦挂载,该目录的所有权为 root
,而 chown user /home/user/Test
无效。这意味着我不能以普通用户身份创建或更改其中的文件。
在 VirtualBox 中,要共享的目录未设置为只读。
有没有办法自动挂载共享文件夹并将所有权分配给我的非 root
用户?
最佳方法
如果您安装了来宾添加,请使用 VirtualBox 菜单:
Devices > Shared Folders…
添加路径、名称并启用 “Auto-mount” 和 “Make permanent” 选项。
最后将您的用户添加到组中:
sudo usermod -G vboxsf -a myusername
注销并再次返回或重新启动机器以完成该过程(感谢@Fo)。
根据 usermod man page ,组存储在 /etc/group
中。
次佳方法
啊,写一个问题然后马上找到答案的诅咒。
我没有使用 this link 中建议的完整命令
sudo mount -t vboxsf -o uid=$UID,gid=$GID share ~/host
因此,要在 Ubuntu 中通过 vboxsf
添加所有权并在 virtualbox 中自动挂载,请在 exit 0
行之前添加到 /etc/rc.local
文件,命令如下:
mount -t vboxsf -o uid=1000,gid=1000 <folder name given in VirtualBox> /home/<user>/where/ever/you/want