我需要按照本教程在我的 VirtualBox 共享文件中名为 sf_VMShare 启用符号链接。
当我运行命令时:
VBoxManage setextradata YOURVMNAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/YOURSHAREFOLDERNAME 1
我收到以下错误:
C:\Program Files\Oracle\VirtualBox>VBoxManage setextradata Ubuntu Home Disk
VBoxInternal2/SharedFoldersEnableSymlinksCreate/sf_VMShare 1
VBoxManage.exe: error: Could not find a registered machine named 'Ubuntu'
VBoxManage.exe: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001),
component VirtualBoxWrap, interface IVirtualBox, callee IUnknown
VBoxManage.exe: error: Context: "FindMachine(Bstr(a->argv[0]).raw(), machine.asOutParam())"
at line 797 of file VBoxManageMisc.cpp
因此,读取错误后,我发现我输入了错误的虚拟机名称,因此我确保在结束后添加额外的空格,但仍然出现相同的错误。
我在符号链接组中并以管理员身份运行该命令。我没有主意了,谢谢大家!
编辑:
根据 Bob 的回答,我运行了命令“list vms”
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe list vms
"Ubuntu Home Disk " {5bc6053b-bc8b-42c7-9c58-24935d281a82}
所以我拿了列出的 UUID
"5bc6053b-bc8b-42c7-9c58-24935d281a82"
运行命令
VBoxManage setextradata 5bc6053b-bc8b-42c7-9c58-24935d281a82 VBoxInternal2/SharedFoldersEnableSymlinksCreate/sv_vmShare 1
并且运行后它被接受了。
答案1
使用以下命令获取机器的 UUID:
VBoxManage 列表虚拟机
并在命令中使用 UUID 代替名称。
答案2
要将 VM 添加到虚拟媒体管理器...
vboxmanage 磁盘 {path/to/VM/VMname} --setlocation {/Path/to/VM/VMname}
即 vboxmanage disk /VM/SSHLinux/SSHLinux.vdi --setlocation /VM/SSHLinux/SSHlinux.vdi
而不是注册虚拟机......
vboxmanage registervm {路径/到/VM/VMname}
即 vboxmanage registervm /VM/SSHLinux/SSHLinux.vbox