Virtualbox共享文件夹权限

问题描述 投票:341回答:8

我在RedHat上使用Windows和Virtualbox,简单起见:我创建了一个共享文件夹,因此我可以在Windows操作系统上使用Eclipse并在Linux中进行一些测试。

但是,我无法访问我的用户共享文件夹,我已使用root登录并使用chmod 777甚至将我的用户移动到该文件夹​​的组。

无论我做什么,结果都是一样的:

/media/sf_sharedFolder/: Permission denied

我能做什么?如何与我的用户访问共享文件夹?

virtualbox shared-directory
8个回答
685
投票

将您自己添加到来宾VM中的vboxsf组。

解决方案1

从终端运行sudo adduser $USER vboxsf

解决方案2

编辑文件/etc/group(您将需要root权限)。寻找行vboxsf:x:999并在最后添加:yourusername - 如果你没有sudo,请使用此解决方案。

要生效,您应该注销然后登录,否则您需要重启。


176
投票

试试这个(在客机上,即在虚拟框中运行的操作系统):

sudo adduser your-user vboxsf

现在重新启动虚拟机中运行的操作系统。


43
投票

这也有效

sudo usermod -aG <group> <user>

然后重启vm


21
投票

对于真正的懒惰(没有打字,只有完全容易的复制和粘贴):

sudo usermod -aG vboxsf $USER

注销并重新登录以使更改生效。

我知道这是一个“我太”的解决方案,但我真的很懒,并没有找到任何其他解决方案来吸引我天生的冷漠...... :)


10
投票

对于VirtualBox(5.0.24)Host = Mac(El Capitan)和Guest = RHEL(7.2)

启动RHEL Guest VM并打开终端。确保安装了开发人员工具。

sudo yum groupinstall 'Developer Tools'

并且内核头文件包打包,以便Guest Additions脚本可以更新内核。

sudo yum install kernel-devel*

一旦准备就绪,就可以安装Guest Additions。选择正在运行的VM后,转到VirtualBox菜单并选择Devices - > Insert Guest Additions CD image ...

enter image description here

允许挂载发生几秒钟,然后启动安装脚本。一旦他们点击了访客VM中弹出的对话框中的“运行”按钮。

脚本完成后,右键单击桌面上的CD图标,然后选择“弹出”。然后关闭来宾VM。

使用终端在您的主机系统中创建共享文件夹,我通常将其放在我的文档文件夹中,并确保您的用户可以访问它。

sudo mkdir ~/Documents/RhelShared
sudo chmod 755 <user> ~/Documents/RhelShared

在Oracle VM Virtual Box Manager中,选择您的VM,然后单击“Shared folders”配置元素。在下一个对话框中,单击“文件夹列表”右侧的“添加文件夹”图标。

然后在弹出窗口中选择您刚刚创建的主机文件夹作为文件夹路径,并为其提供将由访客VM使用的文件夹名称,同时勾选“自动安装”复选框。

enter image description here

重新启动来宾VM后,在主机上启动终端,并检查与正在运行的VirtualBox Guest进程关联的用户是您的用户,非常可能,还是在有权访问Shared文件夹的组中。

ps aux | grep VirtualBoxVM

然后,根据访客VM上终端中的几个先前答案,将您的用户添加到vboxsf组。

sudo usermod -a -G vboxsf <user>

注销并再次启动以获取更改。

共享文件夹现在应该可用并可以sf_rhelshared访问,假设您使用的名称与我在上面的弹出窗口中使用的名称相同。


2
投票

澄清上一篇文章:

VBoxManage命令是:

VBoxManage setextradata <VM_NAME> VBoxInternal2/SharedFoldersEnableSymlinksCreate/<SHARE_NAME> 1

1
投票

问题是默认情况下共享文件夹的权限设置为不允许符号链接。您只需几个简单的步骤即可启用它们。

  1. 关闭虚拟机。
  2. 请注意您在Machine > Settings > General > Name的机器名称
  3. 请注意“计算机>设置>共享文件夹”中的共享文件夹名称
  4. 找到您的VirtualBox根目录并执行以下命令。 VBoxManage setextradata“”VBoxInternal2 / SharedFoldersEnableSymlinksCreate / 1
  5. 启动虚拟机,共享文件夹现在将允许符号链接。

-1
投票

将用户添加到vboxsf组后,您可能需要完全注销gnome / xfce / ???会话,因为很久以前有人决定在第一次登录窗口系统时应该缓存组关联。

或者去老学校:

% newgrp vboxsf

在您要用于访问该文件夹的任何shell中。幸运的是,newgrp为自己查找组列表并且不使用缓存的值。您仍然需要注销并重新登录以从shell以外的其他内容访问该文件夹。

© www.soinside.com 2019 - 2024. All rights reserved.