我在RedHat上使用Windows和Virtualbox,简单来说:我已经创建了一个共享文件夹,这样我就可以在Windows操作系统上使用Eclipse,并在Linux上做一些测试。
但是,我无法使用我的用户访问共享文件夹,我已经使用root登录并使用chmod 777,甚至将我的用户移动到文件夹的组中。
无论我做什么结果都是一样的
/media/sf_sharedFolder/:拒绝权限
我该怎么办?如何使用我的用户访问共享文件夹?
我在RedHat上使用Windows和Virtualbox,简单来说:我已经创建了一个共享文件夹,这样我就可以在Windows操作系统上使用Eclipse,并在Linux上做一些测试。
但是,我无法使用我的用户访问共享文件夹,我已经使用root登录并使用chmod 777,甚至将我的用户移动到文件夹的组中。
无论我做什么结果都是一样的
/media/sf_sharedFolder/:拒绝权限
我该怎么办?如何使用我的用户访问共享文件夹?
当前回答
试试这个(在客户机器上)。即虚拟机中运行的操作系统):
sudo adduser your-user vboxsf
现在重新启动虚拟机中的操作系统。
其他回答
将用户添加到vboxsf组后,您可能需要完全注销gnome/xfce/??会话,因为很久以前有人决定在第一次登录到窗口系统时缓存组从属关系。
或者走老路:
% newgrp vboxsf
在您想要用来访问文件夹的任何shell中。幸运的是,newgrp自己查找组列表,不使用缓存的值。您仍然需要登出并重新登录才能从shell以外的其他工具访问该文件夹。
将自己添加到来宾虚拟机中的vboxsf组。
解决方案1
在终端执行sudo adduser $USER vboxsf命令。 (sudo usermod——append——groups vboxsf $USER)
要生效,您应该先注销再登录,否则可能需要重新启动。
解决方案2
编辑文件/etc/group(您需要root权限)。寻找行vboxsf:x:999,并在最后添加:yourusername -如果你没有sudo,使用这个解决方案。
要生效,您应该先注销再登录,否则可能需要重新启动。
对于VirtualBox(5.0.24)主机=Mac(El Capitan)和Guest=RHEL(7.2)
启动您的RHEL Guest VM并打开一个Terminal。确保您已经安装了开发人员工具。
sudo yum groupinstall 'Developer Tools'
和内核头包,以便客户添加脚本可以更新内核。
sudo yum install kernel-devel*
一旦你有了先决条件,就该安装附加功能了。选择运行中的虚拟机,进入VirtualBox菜单,选择“设备”—>插入客户附加功能CD镜像…
等待几秒钟进行挂载并启动安装脚本。一旦他们在弹出的对话框中点击“运行”按钮。
脚本完成后,右键单击桌面上的CD图标,选择“弹出”。然后关闭Guest虚拟机。
在你的主机系统使用终端创建共享文件夹,我通常把它放在我的文档文件夹,并确保你的用户可以访问它。
sudo mkdir ~/Documents/RhelShared
sudo chmod 755 <user> ~/Documents/RhelShared
在Oracle虚拟机虚拟框管理器中选择您的虚拟机,然后单击“共享文件夹”配置元素。在下一个对话框中,单击文件夹列表右侧的“添加文件夹”图标。
然后在弹出窗口中选择刚刚创建的主机文件夹作为文件夹路径,并为其指定一个客户虚拟机将使用的文件夹名称,同时勾选“自动挂载”复选框。
重启Guest VM后,在主机上启动终端,检查与正在运行的VirtualBox Guest进程相关联的用户是您的用户(很可能是您的用户),还是在访问共享文件夹的组中。
ps aux | grep VirtualBoxVM
然后根据之前在Guest VM上的Terminal中的几个答案,将您的用户添加到vboxsf组。
sudo usermod -a -G vboxsf <user>
退出并再次登录以获取更改。
共享文件夹现在应该是可用的,并且可以作为sf_rhelshared访问,假设您使用的名称与我在上面的弹出窗口中使用的名称相同。
对于真正懒惰的人(没有打字,只有完全简单的复制和粘贴):
sudo usermod -aG vboxsf $USER
登出并重新登录以激活更改。
我知道这是一个“我也是”的解决方案,但我真的很懒,没有找到任何其他解决方案来吸引我天生的冷漠……:)
在我的情况下,以下是必要的:
sudo chgrp vboxsf /media/sf_sharedFolder