2021-06-15 16:32:15 +08:00
|
|
|
|
# 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 Pack,Win 下需要到官网下载扩展包然后使用管理器进行安装。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 连接即可。
|
|
|
|
|
|
2021-06-15 16:36:39 +08:00
|
|
|
|
## 3.内部参考关键字
|
|
|
|
|
|
|
|
|
|
1. Remmina
|
|
|
|
|
|
|
|
|
|
## 4.外部参考资料
|
2021-06-15 16:32:15 +08:00
|
|
|
|
|
|
|
|
|
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)
|