2011年7月21日 星期四

虛擬機器 Qemu

虛擬機器

所謂的虛擬機器就是「假的」機器,利用 X86 平台來模擬出其它平台並執行其它平台的程式,我們今天要介紹的虛擬機器是 X86 模擬主機,也就是以 X86 模擬 X86。


要執行虛擬機器,你的硬體要有幾個條件:

1. CPU 為多核心 (四核以上)
2. RAM 為 4GB 以上 (愈大愈好),以便分配給每台虛擬機器獨立的 RAM (至少 512MB)
3. 硬碟愈大愈好

市面常見的虛擬機器程式有三個,最有名的叫 VMware、第二有名叫 VirtualBOX,最沒有名叫 Qemu,今天我們要教 Qemu。

Why ?
1. VMware 要錢,上網申請可以使用免費版本
   http://www.vmware.com/tw/

2. VirtualBOX 免費但是某些原始碼未開放,VirtualBOX 有簡單易用的介面,如果各位是使用 Windows 系統可以參考使用 Win 版的 VirtualBOX。
   http://www.virtualbox.org/
   http://azo-freeware.blogspot.com/2008/09/virtualbox-166.html

3. Qemu 是近幾年發展速度最快的虛擬機器,可以模擬 X86 平台、ARM 平台及其它平台
   http://wiki.qemu.org/Main_Page

Qemu 的使用步驟如下:

0. 安裝 Qemu
1. 設定硬碟
2. 下載安裝 ISO 檔
3. 執行


*** 我們執行環境為一般使用者,只安裝套件時要用 root ***

以下將一一說明:

0. 安裝 Qemu
   請執行
   apt-get install qemu qemu-kvm
   來安裝 qemu 套件

1. 設定硬碟映像檔
   請建立 ~/qemu/linux.img,檔案大小為 8GB,指令如下:

   ~$ mkdir qemu
   ~$ cd qemu
   ~/qemu$ qemu-img create linux.img 8G

   此時會建立一個「空」的 linux.img,當我們執行 ls -l 時,請輸出如下:

herman@pc-29:~/qemu$ ls -l
總計 0
-rw-r--r-- 1 herman herman 8589934592 2011-07-21 19:10 linux.img

   但若以 du -sh linux.img 會發現此檔大小為 0,輸出如下:

herman@pc-29:~/qemu$ du -sh linux.img
0       linux.img

Why ? Qemu 在使用硬碟映像檔的策略是:需要時才佔用。


2. 下載安裝 ISO 檔

請將 ftp://163.26.229.6/linux/debian-6.0.3-i386-netinst.iso
下載至 ~/qemu 目錄下

   ~/qemu$ wget ftp://163.26.229.6/linux/debian-6.0.3-i386-netinst.iso
   即可下載


3. 執行
   請執行:
   kvm -m 512 -hda linux.img -cdrom debian-6.0.3-i386-netinst.iso -boot d

-m 512          -> 給虛擬機器 512 MB 的記憶體
-hda linux.img  -> 指定 linux.img 這個檔案為虛擬機器的 hda 硬碟
-cdrom debian-  -> 指定 debian iso 檔為光碟機
-boot d         -> 指定光碟開機
-boot c         -> 指定 hda 開機


kvm 說明 - Linux 核心虛擬技術 - KVM(Kernel-based Virtual Machine)
http://linuxkvm.blogspot.com/2011/04/linux-kvmkernel-based-virtual-machine.html

如果輸出如下,那表示我們要載入 kvm 模組:

herman@pc-29:~/qemu$ kvm -m 512 -hda linux.img -cdrom debian-6.0.2.1-i386-netinst.iso -boot d
open /dev/kvm: No such file or directory
Could not initialize KVM, will disable KVM support

1 則留言: