我在 Ubuntu 下有一个 WinXP 虚拟机,并且此 Ubuntu 上的每个用户都应该有权运行此 VM。但是每次有人运行此 VM 时,都会设置文件权限400
和600
(相应地.VirtualBox/VirtualBox.xml
和.VirtualBox/Machines/win/win.xml
),并将所有权设置为最后一个用户。然后我将它们改回444
和666
,这样任何用户都可以访问 VM,但我正在寻找永久解决方案。
背景:用户属于vboxusers
组,Ubuntu 8.04,Virtualbox 4.0.16
编辑:根据目前的答案,我必须解释一下:我们每天只需要这个 XP VM 大约 5-10 分钟,因此一直运行它并仅仅连接到它并不是我们工作流程中的好解决方案。
答案1
访问模式(权限)可由文件所有者和根,对吧?因此chown root
,文件应该锁定除 root 之外的所有人,以免使用访问模式进行破坏 - 除非每次都重新创建文件,这需要对包含目录的写访问权限,这不太安全,但值得一试。
希望这可以帮助。
答案2
编辑 sudoers 文件
sudo visudo
向 sudoers 添加如下一行:
# Give all members of the vmwin group permission to start the vm
# called 'win' as the user 'vmuser'
%vmwin ALL = (vmuser) /usr/bin/vboxmanage startvm win
根据需要将用户添加到组 vmwin。
您的用户可以使用如下命令来启动虚拟机:
HOME=/home/vmuser sudo -u vmuser vboxmanage startvm win
答案3
为什么不在虚拟机上启用 VNC 或终端服务并让用户“远程”连接到它?您的问题不清楚您是否希望人们轮流使用机器,还是同时使用机器。
答案4
为什么不使用网页版项目是否可以通过 Web 界面获得 VirtualBox GUI 的所有功能?要直接访问 VM,您应该考虑使用 VNC 访问 VM 控制台或使用本机平台方法。