在之前使用 VMWare Server 時對這樣的問題可以很簡單的用 vmware-cmd 來搞定, 但因效能的需求, 我把家裏主要的 WinXP 環境改用 VirtualBox, 前一陣子因為有個資料在這 WinXP 內, 必須回家啟動 VirtualBox 才讀到這個資料, 所以我就花了一點時間讀了一下 VirtualBox 使用手冊 - 1.6 UserManual.pdf, 看看 VirtualBox 可否遠端啟動. 以下就是最後試出來可以透過遠端啟動 VirtualBox 裡面的 Virtual Machine 程序.
VBoxHeadless 主要參數介紹 | ||
---|---|---|
-s | -startvm, –startvm <name / uuid> | 要啟動的 VM 名稱或 uuid (必要參數) |
-p | -vrdpport, –vrdpport <port> | 指定 VRDP Port 編號 |
-a | -vrdpaddress, –vrdpaddress <ip> | 指定 VRDP 只用在哪個 IP |
-c | -capture, –capture | 將抓到的 VM 畫面寫到哪個檔案 |
-w | –width | 設定紀錄時的畫面寬度 |
-h | –height | 設定紀錄時的畫面高度 |
-r | –bitrate | 設定紀錄時的速率 bit rate |
-f | –filename | 指定紀錄時的檔名, 會自動依據副檔名選用相對應的編碼(codec)程式 |
VBoxHeadless -s winxp-vbox02 -p 3388 &
[jonathan@pd920 ~]$ VBoxHeadless -s winxp-vbox02 -p 3388 & [1] 11270 [jonathan@pd920 ~]$ VirtualBox Headless Interface 1.6.0 (C) 2008 Sun Microsystems, Inc. All rights reserved Listening on port 3388
[jonathan@pd920 ~]$ netstat -na | grep 3388 tcp 0 0 0.0.0.0:3388 0.0.0.0:* LISTEN
: <Display VRAMSize="16" MonitorCount="1"/> <RemoteDisplay enabled="true" port="3387" authType="Null" authTimeout="5000"/> :
表示預設啟用 VRDP Listen port 是 3387
[jonathan@pd920 ~]$ md5sum /usr/bin/VBoxVRDP 4cc3c5030e11f5ba7d1511834e7172cd /usr/bin/VBoxVRDP [jonathan@pd920 ~]$ md5sum /usr/bin/VBoxHeadless 4cc3c5030e11f5ba7d1511834e7172cd /usr/bin/VBoxHeadless