QEMU是一套由Fabrice Bellard所编写的模拟处理器的自由软件。它与Bochs,PearPC近似,但其具有某些后两者所不具备的特性,如高速度及跨平台的特性。经由kqemu这个开源的加速器,QEMU能模拟至接近真实电脑的速度。QEMU有两种主要运作模式:
User mode模拟模式,亦即是使用者模式。QEMU能启动那些为不同中央处理器编译的Linux程序。而Wine及Dosemu是其主要目标。
System mode模拟模式,亦即是系统模式。QEMU能模拟整个电脑系统,包括中央处理器及其他周边设备。它使得为系统源代码进行测试及除错工作变得容易。其亦能用来在一部主机上虚拟数部不同虚拟电脑。
使用kqemu可使QEMU能模拟至接近实机速度,但其在虚拟的操作系统是Microsoft Windows 98或以下的情况下是无用的。
经过八年开发之后,模拟处理器的自由软件QEMU正式发布了1.0版。 八年前,Fabrice Bellard启动了QEMU项目,最初设想在非x86平台上运行x86 Linux二进制程序,随后转变成跨架构的全系统模拟器,能在不同主机平台模拟14种不同的目标架构。
包括IA-32(x86) PC、x86-64 PC、MIPS R4000、Sun的SPARC sun4m和SPARC sun4u,ARM和PowerPC等等。它是Xen和KVM虚拟机的核心。
下载地址:http://wiki.qemu.org/download/qemu-1.0.tar.gz
----------------------------------------------------------------
在centos 下安装qemu 虚拟器
本文架設環境:
範例:
範例:
註記:
1. image檔及ISO檔如果在當前目錄只需打檔名即可。
2. 分配的記憶體大小跟CPU個數不是在這邊就完全定死,啟動 VM 時可以重新給定。
範例:
範例:
User mode模拟模式,亦即是使用者模式。QEMU能启动那些为不同中央处理器编译的Linux程序。而Wine及Dosemu是其主要目标。
System mode模拟模式,亦即是系统模式。QEMU能模拟整个电脑系统,包括中央处理器及其他周边设备。它使得为系统源代码进行测试及除错工作变得容易。其亦能用来在一部主机上虚拟数部不同虚拟电脑。
使用kqemu可使QEMU能模拟至接近实机速度,但其在虚拟的操作系统是Microsoft Windows 98或以下的情况下是无用的。
经过八年开发之后,模拟处理器的自由软件QEMU正式发布了1.0版。 八年前,Fabrice Bellard启动了QEMU项目,最初设想在非x86平台上运行x86 Linux二进制程序,随后转变成跨架构的全系统模拟器,能在不同主机平台模拟14种不同的目标架构。
包括IA-32(x86) PC、x86-64 PC、MIPS R4000、Sun的SPARC sun4m和SPARC sun4u,ARM和PowerPC等等。它是Xen和KVM虚拟机的核心。
下载地址:http://wiki.qemu.org/download/qemu-1.0.tar.gz
----------------------------------------------------------------
在centos 下安装qemu 虚拟器
- QEMU是一個由GNU所發展的模擬器,關於QEMU的介紹請參考此 篇
本文架設環境:
系統: CentOS 5.4 Desktop Kernel: 2.6.18-164.el5PAE
目錄[隱藏] |
[編輯] 系統安裝
安裝步驟:- 安裝 Fedora 必須要先準備安裝的iso,點選擇你適合的站台或是直接至CentOS正體英文站下載
- 燒錄到光碟片或是製作LiveUSB
- 設定從光碟(或USB)開機
- 選擇語系
- 開始設定
- 第一次登入
- 更新全系統並重新啟動
[che@local]$ sudo yum update -y && reboot
[編輯] 安裝QEMU
- 透過 yum 安裝
- 原始碼編譯與安裝
- 到官方網站下載頁面下載最新的 source code
[che@local]$ wget http://download.savannah.gnu.org/releases/qemu/qemu-0.12.3.tar.gz
- 解壓縮原始碼
[che@local]$ tar zxf qemu-0.12.3.tar.gz
- 編譯與安裝
[che@local]$ cd qemu-0.12.3 [che@local]$ sudo ./configure --prefix=/usr/local/qemu --enable-kvm [che@local]$ sudo make [che@local]$ sudo make install
- 刪除不需要再用到的原始碼
[che@local]$ cd ../ [che@local]$ sudo rm -rf qemu-0.12.3
- 將qemu的路徑加入系統(或User自己)的路徑 (如果你在安裝時沒有加上 --prefix 這個參數,那你可以略過這個步驟)
[che@local]$ sudo vi /etc/profile 或是 [che@local]$ vi ~/.profile (加入以下內容) PATH=/usr/local/qemu/bin:$PATH export PATH (存檔並離開) [che@local]$ source /etc/profile 或是 [che@local]$ source ~/.profile
[che@local]$ sudo yum install qemu qemu-kvm
[編輯] 安裝加速器KQEMU
在CentOS裡,KQEMU只有一種安裝方式:- 原始碼編譯&安裝
- 到官方網站下載頁面下載最新版的 kqemu原始碼
[che@local]# wget http://wiki.qemu.org/download/kqemu-1.3.0pre11.tar.gz
- 解壓縮source code
[che@local]# tar zxf kqemu-1.3.0pre11.tar.gz
- 編譯與安裝
[che@local]# cd kqemu-1.3.0pre11 [che@local]# ./configure [che@local]# make [che@local]# make install
[編輯] 模組掛載
- KVM
[che@local]$ sudo modprobe kvm [che@local]$ sudo modprobe kvm_intel (AMD CPU的電腦請自行改成kvm_amd)
[編輯] 建立Image檔案
建立一個image有兩種方式,一種是使用qemu-img,另外一種是使用dd- qemu-img
範例:
[che@local]$ qemu-img create -f qcow2 xp1.img 20G [che@local]$ qemu-img create -f raw /usr/local/vms/xp2.dev 10G建立的imgage檔並不一定要是*.img,但是為了方便管理,建議還是取一個有規則的命名方式
- dd
範例:
dd if=/dev/zero of=disk.img bs=1G count=5
[編輯] 安裝 Virtual Machines(VM)
指令: qemu-kvm -hda image檔的完整或相對路徑 -cdrom ISO檔的完整或相對路徑 -m 記憶體大小(單位:MB) -smp CPU數目 -boot d(安裝必用 d(光碟))註記:
1. image檔及ISO檔如果在當前目錄只需打檔名即可。
2. 分配的記憶體大小跟CPU個數不是在這邊就完全定死,啟動 VM 時可以重新給定。
範例:
[che@local]$ qemu-kvm -hda xp1.img -cdrom XP.iso -m 512 -smp 2 -boot d [che@local]$ qemu-kvm -hda xp2.img -cdrom ../../XP.iso -m 1024 -smp 512 -boot d
[編輯] 網路設定
指令格式: -net nic -net user/tap
- 浮動IP(DHCP)
-net nic -net user
- 指定IP(tap)
- 新增並修改qemu-ifup
[che@local]# sudo vi /etc/qemu-ifup加入下列內容
#!/bin/bash #新增一張虛擬網卡 其IP為 XXX.XXX.XXX.254,此網卡為 VM 的 gateway #指令格式:sudo /sbin/ifconfig $1 XXX.XXX.XXX.254(不一定要254,看使用者而定) sudo /sbin/ifconfig $1 192.168.10.254 #指定IP讓 VM 可以使用 #指令格式:sudo route add -host XXX.XXX.XXX.XXX dev $1 sudo route add -host 192.168.10.1 dev $1 # xp1.img sudo route add -host 192.168.10.2 dev $1 # xp2.img #讓 xxx.xxx.xxx.0 網段的所有IP經由 eth0 這張網卡轉送 sudo echo "1" > /proc/sys/net/ipv4/ip_forward #讓 xxx.xxx.xxx.0 網段的所有IP經由 eth0 這張網卡轉送與進出 #指令格式:sudo iptables -t nat -A POSTROUTING -o 可使用的實體網卡 -s XXX.XXX.XXX.0/24 -j MASQUERADE sudo iptables -t nat -A POSTROUTING -o eth0 -s 192.168.10.0/24 -j MASQUERADE #讓指定IP可以用遠端桌面連線方式進入 #指令格式:sudo iptables -t nat -A PREROUTING -i 可使用的實體網卡 -p tcp --dport XXXX(阜號) -j DNAT --to XXX.XXX.XXX.XXX:3389 sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5678 -j DNAT --to 192.168.10.1:3389 sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6789 -j DNAT --to 192.168.10.2:33892. 修改權限,讓它可以執行
[che@local]# sudo chmod 755 /etc/qemu-ifup
[編輯] 啟動Virtual Machines(VM)
指令: qemu-kvm -hda image檔的完整路徑 -m 記憶體大小 -smp CPU數目 -boot 開機方式(c(硬碟),d(光碟),n(網路)) -net nic -net user(DHCP)/tap(指定IP)範例:
[che@local]$ qemu-kvm -hda xp1.img -m 512 -smp 2 -boot c -net nic -net user [che@local]$ qemu-kvm -hda ../../xp2.img -m 1024 -smp 4 -boot c -net tap
from http://lab509.pdpc.cs.pu.edu.tw/wiki/index.php/QEMU%28CentOS%29
No comments:
Post a Comment