、安裝virtualbox
- sudo apt-get install virtualbox virtualbox-guest-additions virtualbox-guest-additions-iso
然后重啟系統(tǒng),listmod命令看一下
- $ lsmod |grep vbox
- vboxpci 22882 0
- vboxnetadp 13328 0
- vboxnetflt 27211 0
- vboxdrv 251973 3 vboxpci,vboxnetadp,vboxnetflt
如果能看見 vboxdrv 等等就說明裝好了。然后安裝我們繼續(xù)安裝virtualbox擴展包。首先確認一下virtualbox的版本。
然后就能看見當前的版本。因為沒有添加額外的apt源,版本是4.1.2,不是當前最新的4.1.6。然后去https://www.virtualbox.org/wiki/Download_Old_Builds_4_1 下載對應的 extpack包。我下載的文件是 Oracle_VM_VirtualBox_Extension_Pack-4.1.2-73507.vbox-extpack。然后安裝extpack。
- sudo vboxmanage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.1.2-73507.vbox-extpack
安裝extpack的目的主要是可以支持VRDP。也就是遠程桌面協議。我們可以通過遠程桌面來操作虛擬機。尤其是在server沒有桌面環(huán)境的情況下非常有用。
備注: 寫道
使用apt-get安裝的virtualbox后,系統(tǒng)會創(chuàng)建小寫的vboxmange符號鏈接,所以我后面都用小寫的vboxmange命令來操作。
二、使用命令行創(chuàng)建并配置虛擬機。
主要用到的命令vboxmanage,下面以創(chuàng)建一臺windows xp虛擬機。
- $ vboxmanage createvm --name "windows-xp" --ostype "WindowsXP" --register
這樣就創(chuàng)建好一個名為windows-xp的虛擬機,ostype參數可以用 vboxmange list ostypes 察看。
調整一下虛擬機內存
- vboxmanage modifyvm "windows-xp" --memory 512
接著創(chuàng)建一個虛擬硬盤,文件名為 /home/vms/windows-xp.vdi,擴展名vdi不用敲
- vboxmanage createhd --filename /home/vms/windows-xp --size 40000
創(chuàng)建ide控制器
- vboxmanage storagectl "windows-xp" --name "IDE Controller" --add ide --bootable on
掛上虛擬硬盤,順便把iso文件作為虛擬光驅掛上
- vboxmanage storageattach "windows-xp" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/vms/windows-xp.vdi
- vboxmanage storageattach "windows-xp" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/iso/windows-xp-install.iso
這樣就把硬盤和光驅都裝好了,安裝盤也放到光驅里了。
配置網卡1為橋接模式
- vboxmanage modifyvm "windows-xp" --nic1 bridged
綁定橋接到物理網卡
- vboxmanage modifyvm "windows-xp" --bridgeadapter1 eth0
開啟vrde
- vboxmanage modifyvm "windows-xp" --vrde on
- vboxmanage modifyvm "windows-xp" --vrdeport 5000 ##監(jiān)聽5000端口
- vboxmanage modifyvm "windows-xp" --vrdeaddress 192.168.2.200 ##監(jiān)聽地址
- vboxmanage modifyvm "windows-xp" --vrdeauthtype external ##認證類型
- vboxmanage modifyvm "windows-xp" --vrdeauthlibrary default ##使用默認的認證庫,也就是使用server的用戶名和密碼登陸
啟動虛擬機
- $ vboxmanage startvm "windows-xp" --type headless
- ##因為服務器端沒有桌面環(huán)境,所以只能以無gui模式啟動虛擬機
提示虛擬機啟動完成,然后用netstat -atln命令看一下 5000 端口有沒有被監(jiān)聽,如果被監(jiān)聽說明成功了,這時候從令一臺電腦用遠程桌面工具鏈接到192.168.2.200:5000既可開始一步一步安裝系統(tǒng)了。
三、修改vrde認證庫
vrde模式的認證庫是VBoxAuth,使用系統(tǒng)的用戶來認證。官方文檔還提供了一個VBoxAuthSimple認證庫。使用方法如下:
- #設定vrdeauthtype為external
- vboxmanage modifyvm "windows-xp" --vrdeauthtype external
- #設定vrdeauthlibrary 為 VBoxAuthSimple
- vboxmanage modifyvm "windows xp" --vrdeauthlibrary VBoxAuthSimple
- #生成加密的密碼字串,比如我要設定一個密碼為 iteye
- vboxmanage internalcommands passwordhash "iteye"
- ##輸出,復制加密的密碼字串
- Password hash: b25f0b08d75ff62083d3035c349695ec510f2847a162b8fba804ec2625bf8a6c
-
- ##添加一個VBoxAuthSimple用戶,用戶名:beiersi 密碼:iteye
- vboxmanage setextradata "windows-xp" "VBoxAuthSimple/users/beiersi" b25f0b08d75ff62083d3035c349695ec510f2847a162b8fba804ec2625bf8a6c
這樣可以設置一些與系統(tǒng)用戶無關的用戶和密碼用于遠程桌面登陸。
四、常用控制命令
- vboxmanage controlvm "虛擬機" poweroff #關機
- vboxmanage controlvm "虛擬機" reset #重啟
- vboxmanage storageattach "虛擬機" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium emptydrive
- ##彈出光盤
- vboxmanage controlvm "虛擬機" vrde off #關閉vrde
后記,本來是想在freebsd系統(tǒng)上安裝virtualbox的,用ports安裝,編譯了半天才裝好virtualbox-ose,但是安裝extpack的時候,總是提示安裝有錯誤,看來freebsd對virtualbox支持始終有限,只能含恨作。ubuntn server上用apt-get安裝確實方便許多,速度也相當快,用不了多久連安裝帶配置就做好一臺虛擬機了。