我在 Ubuntu 主机的 VirtualBox 上安装了 Ubuntu 客户机。当我尝试在客户机上运行主机的命令时,出现权限错误:
max@Ubuntu1:~$ VBoxManage guestcontrol Ubuntu2 run ls
VBoxManage: error: The specified user was not able to logon on guest
VBoxManage: error: Details: code VBOX_E_IPRT_ERROR (0x80bb0005), component GuestSessionWrap, interface IGuestSession, callee nsISupports
VBoxManage: error: Context: "WaitForArray(ComSafeArrayAsInParam(aSessionWaitFlags), 30 * 1000, &enmWaitResult)" at line 938 of file VBoxManageGuestCtrl.cpp
答案1
该命令相当不完整。ls
从客户机运行 Ubuntu 问题至少:
VBoxManage guestcontrol "<Name_of_VM>" run --exe "/bin/ls" --username <me> --passwordfile mypassword.txt --wait-stdout
通过此操作,您需要提供应用程序的完整路径。我们还需要一个用户和一个密码文件,该文件将存储在我们启动 VBoxManage 的主机目录中。
一个更简单的方法是在客户机上运行 SSH 服务器,以启用从主机的 SSH 访问。