※※※※※※※※※※※※※※※※※※※※※※
※※※※※※※※※※※※※※※※※※※※※※
【一行命令啟動 VirtualBox 下的虛擬機器】
Written by 許仲佑 Sunday, 21 March 2010
【自由軟體鑄造場(Open Source Software Foundry)】
使用 Linux 也一段時間了,我想我使用電腦的習慣在不知不覺中就改變了,簡單的說應該是變懶惰了,可以打命令完成的事,就不用動到滑鼠。(其實這也是在避免手腕運動傷害)
在此前題之下,對於要執行 VirtualBox 下的虛擬機器,一定要動滑鼠先去執行 VirtualBox 應用程式,等待它的開啟,開啟之後,又要拉動滑鼠去點所要執行的虛擬機器。
對於這些拉來拉去,點來點去的過程,實在是很不能忍受,與覺得自己很呆,因為機器可以自動完成的事,為什麼我要一再重覆呢?
於是,觀察與分析了一下 VirtualBox 的執行過程,發現其實也沒那麼複雜,不過是 VirtualBox 一執行,然後去執行虛擬機器。對 VirtualBox 而言,只要清楚告訴 VirtualBox 虛擬機器的代號以及所在位置就好了,前前後後,就是這麼簡單。
好,知道過程之後,那要去哪裡找到所要資訊呢?系統不可能憑空猜中,一定有地方來紀錄,那到底在哪裡呢?
翻查一下檔案,因為是要查 VirtualBox 相關事情,所以直覺便是到家目錄底下的 .VirtualBox 目錄去查,嘿嘿~果然,有一些要的資訊是躲在 VirtualBox.xml 裡(只要用文字編輯器便可以開啟此檔案了)。
呃~ 舉例來說,如果我裝了一部 WinXP 的虛擬機器,那我便會看到相關的註冊訊息:
<MachineRegistry>
<MachineEntry uuid="{dc5d1064-d125-431e-988c-95973a871a42}" src="/media/win_c/mandriva_data/Virtualbox/Machines/WinXP/WinXP.xml"/>
</MachineRegistry>
對我們來說,關鍵的訊息是:uuid="{dc5d1064-d125-431e-988c-95973a871a42}" ,那是要告訴 VirtualBox 要去執行的目標。(特別注意,每部電腦系統所建的虛擬機器,uuid 會不一樣,所以要自己查一下。)
好,目標找到了,那命令該如何下呢? 只要 ~~
VirtualBox --comment WinXP --startvm dc5d1064-d125-431e-988c-95973a871a42
--comment 註解,給人看的訊息,會出現在視窗標題。
--startvm 要執行哪部虛擬機器,只要告訴程式 uuid 便可以啦。
呃~ 這麼簡單? 是的,就這麼簡單!
那像我裝了好幾部虛擬機器怎麼辦呢?那就只好麻煩細心一次,把所有機器的 uuid 找出來,全部寫在一個檔案中,例如:virtualbox.txt(純文字檔喔)。
## Star ACFS
VirtualBox --comment ACFS --startvm b0e219c9-bcd6-43d2-a543-78ad6657903c
## Star EZGO7
VirtualBox --comment EZGO7 --startvm 779e2870-a910-4163-a2d2-e658844ad9d9
## Star WinXP
VirtualBox --comment WinXP --startvm dc5d1064-d125-431e-988c-95973a871a42
那如果我只要執行 WinXP 的話,只要開 終端機 輸入:
grep WinXP virtualbox.txt | sh &
說明:
用 grep 到 virtualbox.txt 去找有 XinXP 的這一行,找到了就丟給 sh 去執行,用 & 的目的是把此程序放到背景
執行
延伸思考,如果我要一登入便執行某虛擬機器呢?(例如: WinXP)
我只要建個文字檔,例如:vm_winxp.txt, 然後,把內容
VirtualBox --comment WinXP --startvm dc5d1064-d125-431e-988c-95973a871a42
這一行放進去。
記得更改檔案屬性, chmod 755 vm_winxp.txt (開 終端機 程式)
然後在放到相關目錄區便可以,因 Gnome 與 KDE 登入後自動執行的目錄不同,不在這裡的討論範圍,所以就不寫了。
---- 20100301 新增 -----
根據迴響(1) 強者小朱說,只要
VirtualBox --comment WinXP --startvm (虛擬機器名稱,例:WinXP)
就可以了,我試了一下,果然通耶,果然是強者!
啊~ 還虧我前面寫了一大堆!!
# 請參考許仲佑部落格
◎作者簡介
許仲佑 (Chung-Yu Hsu),國小專任教師,熱愛文史,更愛自由。目前正致力於自由軟體的推動。
※※※※※※※※※※※※※※※※※※※※※※
沒有留言:
張貼留言