Virtualbox共享文件夹权限

时间:2014-11-04 16:25:27

标签: virtualbox shared-directory

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

但是,我无法通过我的用户访问共享文件夹,我已使用root登录并使用chmod 777,甚至将我的用户移至文件夹组。< / p>

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

/media/sf_sharedFolder/: Permission denied

我该怎么办?如何与我的用户一起访问共享文件夹?

11 个答案:

答案 0 :(得分:665)

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

解决方案1 ​​

从终端运行sudo adduser $USER vboxsf

解决方案2

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

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

答案 1 :(得分:172)

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

sudo adduser your-user vboxsf

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

答案 2 :(得分:42)

这也有效

sudo usermod -aG <group> <user>

然后重启vm

答案 3 :(得分:20)

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

sudo usermod -aG vboxsf $USER

退出并重新登录以激活更改。

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

答案 4 :(得分: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 - &gt;插入访客添加CD图像......

enter image description here

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

脚本完成后,右键单击桌面上的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进程关联的用户是您的用户,非常可能,还是可以访问共享文件夹的组。

ps aux | grep VirtualBoxVM

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

sudo usermod -a -G vboxsf <user>

退出并重新启动以接收更改。

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

答案 5 :(得分:1)

要弄清最后一篇文章:

VBoxManage命令为:

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

答案 6 :(得分:0)

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

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

答案 7 :(得分:0)

sudo adduser xxxxxxx vboxsf

其中xxxxxx是您的用户帐户名。注销并重新登录到Ubuntu。

答案 8 :(得分:0)

对于我来说,以下必要条件:

sudo chgrp vboxsf /media/sf_sharedFolder

答案 9 :(得分:-1)

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

或者去上学:

Files.list(Path dir)

您要用于访问该文件夹的任何外壳中。幸运的是,newgrp会自行查找组列表,并且不使用缓存的值。您仍然需要注销然后再登录,以从外壳以外的其他位置访问该文件夹。

答案 10 :(得分:-2)

以我的个人经验,很难在VirtualBox中启用共享文件夹,但这是可能的。我在Windows 10主机中安装了Debian Buster来宾虚拟机。

我不完全知道它是做什么的,但是我记得我去过Windows Defender,这是我的防病毒软件,以查看他们是否将VirtualBox识别为程序而不是病毒。之后,我在文档文件上单击鼠标右键并允许共享文件夹,然后单击其中的一些按钮并接受与Windows 10中的组和muy用户共享。

此外,我发现了一个关于虚拟机之类的Windows的Windows页面,但我把它带到了面板上,我不得不更改两次双击,因此在更新Windows时,它可以识别我的虚拟机机。另外,在muy debian的终端中,使用一些命令行,muy VirtualBox会根据Ubuntu论坛中的一些信息识别出我的用户正在授予权限。我把所有我记得的东西都放了。