一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

qemu 安裝

 langhuayipian 2014-08-10

一、QEMU簡介

QEMU是一款開源的模擬器及虛擬機監(jiān)管器(Virtual Machine Monitor, VMM)。QEMU主要提供兩種功能給用戶使用。一是作為用戶態(tài)模擬器,利用動態(tài)代碼翻譯機制來執(zhí)行不同于主機架構(gòu)的代碼。二是作為虛擬機監(jiān)管器,模擬全 系統(tǒng),利用其他VMM(Xen, KVM, etc)來使用硬件提供的虛擬化支持,創(chuàng)建接近于主機性能的虛擬機。

用戶可以通過不同Linux發(fā)行版所帶有的軟件包管理器來安裝QEMU。如在Debian系列的發(fā)行版上可以使用下面的命令來安裝:

sudo apt-get install qemu

或者在紅帽系列的發(fā)行版上使用如下命令安裝:

sudo yum install qemu -y

除此之外,也可以選擇從源碼安裝。

獲取QEMU源碼

可以從 QEMU官網(wǎng) 上下載QEMU源碼的tar包,以命令行下載2.0版本的QEMU為例:

$wget http://wiki.qemu-project.org/download/qemu-2.0.0.tar.bz2
$tar xjvf qemu-2.0.0.tar.bz2

如果需要參與到QEMU的開發(fā)中,最好使用Git獲取源碼:

$git clone git://git.qemu-project.org/qemu.git

編譯及安裝

獲取源碼后,可以根據(jù)需求來配置和編譯QEMU。

$cd qemu-2.0.0 //如果使用的是git下載的源碼,執(zhí)行cd qemu
$./configure --enable-kvm --enable-debug --enable-vnc --enable-werror  --target-list="x86_64-softmmu"
$make -j8
$sudo make install

configure腳本用于生成Makefile,其選項可以用 ./configure --help 查看。這里使用到的選項含義如下:

--enable-kvm:編譯KVM模塊,使QEMU可以利用KVM來訪問硬件提供的虛擬化服務(wù)。
--enable-vnc:啟用VNC。
--enalbe-werror:編譯時,將所有的警告當(dāng)作錯誤處理。
--target-list:選擇目標(biāo)機器的架構(gòu)。默認(rèn)是將所有的架構(gòu)都編譯,但為了更快的完成編譯,指定需要的架構(gòu)即可。

二、基本原理

QEMU作為系統(tǒng)模擬器時,會模擬出一臺能夠獨立運行操作系統(tǒng)的虛擬機。如下圖所示,每個虛擬機對應(yīng)主機(Host)中的一個QEMU進(jìn)程,而虛擬機的vCPU對應(yīng)QEMU進(jìn)程的一個線程。

QEMU結(jié)構(gòu)圖

系統(tǒng)虛擬化最主要是虛擬出CPU、內(nèi)存及I/O設(shè)備。虛擬出的CPU稱之為vCPU,QEMU為了提升效率,借用KVM、XEN等虛擬化技術(shù),直接利用硬 件對虛擬化的支持,在主機上安全地運行虛擬機代碼(需要硬件支持)。虛擬機vCPU調(diào)用KVM的接口來執(zhí)行任務(wù)的流程如下(代碼源自QEMU開發(fā)者 Stefan的 技術(shù)博客 ):

open("/dev/kvm")
ioctl(KVM_CREATE_VM)
ioctl(KVM_CREATE_VCPU)
for (;;) {
  ioctl(KVM_RUN)
  switch (exit_reason) {
  case KVM_EXIT_IO:  /* ... */
  case KVM_EXIT_HLT: /* ... */
  }
}

QEMU發(fā)起ioctrl來調(diào)用KVM接口,KVM則利用硬件擴展直接將虛擬機代碼運行于主機之上,一旦vCPU需要操作設(shè)備寄存器,vCPU將會停止并退回到QEMU,QEMU去模擬出操作結(jié)果。

虛擬機內(nèi)存會被映射到QEMU的進(jìn)程地址空間,在啟動時分配。在虛擬機看來,QEMU所分配的主機上的虛擬地址空間為虛擬機的物理地址空間。

QEMU在主機用戶態(tài)模擬虛擬機的硬件設(shè)備,vCPU對硬件的操作結(jié)果會在用戶態(tài)進(jìn)行模擬,如虛擬機需要將數(shù)據(jù)寫入硬盤,實際結(jié)果是將數(shù)據(jù)寫入到了主機中的一個鏡像文件中。

三、創(chuàng)建及使用虛擬機

命令行創(chuàng)建及啟動虛擬機

成功安裝QEMU之后便可創(chuàng)建自己的虛擬機。具體步驟如下:

1, 使用qemu-img創(chuàng)建虛擬機鏡像。虛擬機鏡像用來模擬虛擬機的硬盤,在啟動虛擬機之前需要創(chuàng)建鏡像文件。

[kelvin@kelvin tmp]$ qemu-img create -f qcow2 fedora.img 10G
Formatting 'fedora.img', fmt=qcow2 size=10737418240 encryption=off cluster_size=65536 lazy_refcounts=off 
[kelvin@kelvin tmp]$ ls
fedora.img

-f選項用于指定鏡像的格式,qcow2格式是QEMU最常用的鏡像格式,采用來寫時復(fù)制技術(shù)來優(yōu)化性能。fedora.img是鏡像文件的名字,10G是鏡像文件大小。鏡像文件創(chuàng)建完成后,可使用qemu-system-x86來啟動x86架構(gòu)的虛擬機:

qemu-system-x86_64 fedora.img

此時會彈出一個窗口來作為虛擬機的顯示器,顯示內(nèi)容如下:

QEMU虛擬機顯示器輸出

因為fedora.img中并未給虛擬機安裝操作系統(tǒng),所以會提示“No bootable device”,無可啟動設(shè)備。

2, 準(zhǔn)備操作系統(tǒng)鏡像。

可以從不同Linux發(fā)行版的官方網(wǎng)站上獲取安裝鏡像,以fedora20為例:

[kelvin@kelvin tmp]$ wget http://ftp6./fedora/linux/releases/20/Live/x86_64/Fedora-Live-Desktop-x86_64-20-1.iso

3, 檢查KVM是否可用。

QEMU使用KVM來提升虛擬機性能,如果不啟用KVM會導(dǎo)致性能損失。要使用KVM,首先要檢查硬件是否有虛擬化支持:

[kelvin@kelvin ~]$ grep -E 'vmx|svm' /proc/cpuinfo

如果有輸出則表示硬件有虛擬化支持。其次要檢查kvm模塊是否已經(jīng)加載:

[kelvin@kelvin ~]$ lsmod | grep kvm
kvm_intel             142999  0 
kvm                   444314  1 kvm_intel

如果kvm_intel/kvm_amd、kvm模塊被顯示出來,則kvm模塊已經(jīng)加載。最好要確保qemu在編譯的時候使能了KVM,即在執(zhí)行configure腳本的時候加入了–enable-kvm選項。

4, 啟動虛擬機安裝操作系統(tǒng)。

執(zhí)行下面的命令啟動帶有cdrom的虛擬機:

[kelvin@kelvin tmp]$ qemu-system-x86_64 -m 2048 -enable-kvm fedora.img -cdrom ./Fedora-Live-Desktop-x86_64-20-1.iso <br />
-m 指定虛擬機內(nèi)存大小,默認(rèn)單位是MB, -enable-kvm使用KVM進(jìn)行加速,-cdrom添加fedora的安裝鏡像??稍趶棾龅拇翱谥胁僮魈摂M機,安裝操作系統(tǒng),安裝完成后重起虛擬機 便會從硬盤(fedora.img)啟動。之后再啟動虛擬機只需要執(zhí)行:

[kelvin@kelvin tmp]$ qemu-system-x86_64 -m 2048 -enable-kvm fedora.img

即可。

圖形界面創(chuàng)建及啟動虛擬機

命令行啟動虛擬機比較繁瑣,適合開發(fā)者,但對于用戶來說,采用圖形界面管理虛擬機則更為方便。采用圖形界面管理QEMU虛擬機需要安裝virt-manager,紅帽系列的發(fā)行版只需要執(zhí)行命令:

$sudo yum install virt-manager -y

安裝完成后用root用戶啟動virt-manager:

$su -
#virt-manager

啟動后的界面如下圖所示:

virt-manager界面

點擊左上角電腦圖標(biāo)即可創(chuàng)建虛擬機。按照步驟操作即可完成對虛擬機的創(chuàng)建。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日韩欧美亚洲综合在线| 国产人妻熟女高跟丝袜| 国产精品涩涩成人一区二区三区 | 自拍偷拍一区二区三区| 日韩欧美精品一区二区三区| 日韩国产欧美中文字幕| 国产精品亚洲一级av第二区| 欧美日韩国产综合特黄| 日韩美成人免费在线视频| 日韩精品一区二区不卡| 高清亚洲精品中文字幕乱码| 一级欧美一级欧美在线播| 国产精品久久三级精品| 日本一本不卡免费视频| 精品少妇一区二区视频| 日本免费一本一二区三区| 亚洲超碰成人天堂涩涩| 欧美激情视频一区二区三区| 黄男女激情一区二区三区| 欧美一级黄片免费视频| 久热青青草视频在线观看| 少妇成人精品一区二区| 成人精品视频一区二区在线观看 | 日韩一区二区三区观看| 亚洲中文字幕乱码亚洲| 国产一区二区三区午夜精品| 在线一区二区免费的视频| 亚洲少妇一区二区三区懂色| 91亚洲国产日韩在线| 黄色片国产一区二区三区| 一区二区三区日韩中文| 日本深夜福利在线播放| 日韩精品第一区二区三区| 国产级别精品一区二区视频| 日本亚洲精品在线观看| 九九热精品视频在线观看| 99热在线播放免费观看| 欧美黑人巨大一区二区三区| 在线免费国产一区二区三区| 国产三级视频不卡在线观看| 日本av一区二区不卡|