NotePublic/Software/Applications/VirtualBox/Virtualbox_高级配置.md

81 lines
2.7 KiB
Markdown
Raw Normal View History

# Virtualbox 高级配置
## 1.一些基本命令
```bash
# 开启/关闭 VRDE并设置监听端口和监听地址
VBoxManage modifyvm <uuid|vmname> --vrde <on|off>
VBoxManage modifyvm <uuid|vmname> --vrdeproperty "TCP/Ports|Address=<value>"
# 切换 VRDE 后端
VBoxManage setproperty vrdeextpack <null|VNC>
VBoxManage modifyvm <uuid|vmname> --vrdeextpack <default|name>
# 设置 authentication 模式,有 null/external/guest 三种模式
VBoxManage modifyvm <uuid|vmname> --vrdeauthtype <null|external|guest>
# external 模式下有 VBoxAuth 和 VBoxAuthSimple 两种方式
VBoxManage setproperty vrdeauthlibrary <default|VBoxAuthSimple>
VBoxManage modifyvm <uuid|vmname> --vrdeauthlibrary default|<name>
# VBoxAuthSimple 下计算 password hash 并设置用户和密码
VBoxManage internalcommands passwordhash <password>
VBoxManage setextradata <uuid|vmname> "VBoxAuthSimple/users/<user>" <passwordhash>
# 以 VBoxHeadless 模式启动以便获得完整调试信息
VBoxHeadless --startvm <uuid|vmname>
# 以后台 Headless 模式启动,不显示调试信息
VBoxManage startvm <uuid|vmname> --type headless
```
## 2.远程虚拟机
Virtualbox 自带的远程桌面称为 VRDE该协议可以使用 VRDP 作为后端,也可以使用 VNC 作为后端。
### 2.1.使用 VRDP
安装 Oracle VM VirtualBox Extension PackWin 下需要到官网下载扩展包然后使用管理器进行安装。Linux 可使用命令安装:
```bash
yaourt -S virtualbox-ext-oracle
```
Setting->Display->Remote Display 下 Enable Server 并设置端口。启动虚拟机:
```bash
VBoxManage startvm <uuid|vmname> --type headless
```
之后使用 mstsc.exe 或 Remmina 连接即可。
## 2.2.使用 VNC
首先需要安装 VNC 插件Win 下需要到官网下载扩展包然后使用管理器进行安装。Linux 可使用命令安装:
```bash
# Manjaro
yaourt -S virtualbox-ext-vnc
```
虽然 Oracle VM VirtualBox Extension Pack 与 VNC 可以共存,但只可以使能一种 VRDE 模式,以下命令设置 VRDE 使用 VNC/VRDP 作为后端:
```bash
# VNC
VBoxManage setproperty vrdeextpack VNC
# VRDP
VBoxManage setproperty vrdeextpack "Oracle VM VirtualBox Extension Pack"
```
设置 VNC 密码并启动虚拟机:
```bash
VBoxManage modifyvm <uuid|vmname> --vrdeproperty VNCPassword=<password>
VBoxManage startvm <uuid|vmname> --type headless
```
之后使用 Remmina VNC 连接即可。
## 3.外部参考资料
1. [Commands Overview](https://docs.oracle.com/en/virtualization/virtualbox/6.0/user/vboxmanage-cmd-overview.html)
2. [Chapter 7. Remote Virtual Machines](https://www.virtualbox.org/manual/ch07.html#vrde-videochannel)
3. [Other Extension Packs](https://docs.oracle.com/en/virtualization/virtualbox/6.0/admin/otherextpacks.html)