本文主要介紹建立虛拟機的一般過程。
一台虛拟機的核心就是一個磁盤鏡像,這個鏡像可以了解成虛拟機的磁盤,裡面有虛拟機的作業系統和驅動等重要檔案。
要在一台host上跑起一個虛拟機一般需要兩個步驟:
第一步:建立虛拟機鏡像
qmeu-img建立的鏡像是一個稀疏檔案,也就是說剛建立出來的檔案并沒有8g,它會随着資料的增多慢慢增加,直到8g
第二步:啟動虛拟機
運作結果: 因為鏡像裡面沒有任何内容,是以提示找不到可引導裝置。
上節介紹了使用qemu-img建立鏡像,這一節将會介紹qemu-img在鏡像管理上的強大功能。
qemu-img有很多指令,包括下面常用的,當然qemu-img -h你懂得。
<code>info</code>
檢視鏡像的資訊
<code>create</code>
建立鏡像
<code>check</code>
檢查鏡像
<code>convert</code>
轉化鏡像的格式,(raw,qcow ……)
<code>snapshot</code>
管理鏡像的快照
<code>rebase</code>
在已有的鏡像的基礎上建立新的鏡像
<code>resize</code>
增加或減小鏡像大小
舉例:
雖然ls中看到檔案的大小是4g,但是實際上磁盤大小是0。這就是稀疏檔案
将一個鏡像檔案轉化為另外一種格式,qemu-img支援的格式可以看qemu-img -h最後一行。
轉化指令:
-c:采用壓縮,隻有qcow和qcow2才支援
-f:源鏡像的格式,它會自動檢測,是以省略之
-o 目标鏡像的格式
-o 其他選先
fname:源檔案
out_fname:轉化後的檔案
看例子:
如果想看要轉化的格式支援的-o選項有哪些,可以在指令末尾加上 -o ?
注意:隻有raw格式的鏡像才可以改變大小
檢視快照
注意:隻有qcow2才支援快照
打快照
舉例:
從快照恢複:
然後從kvm啟動這個虛拟機,會發現虛拟機又在打快照時的狀态了
删除快照:
當建立的虛拟機越來越多,并且你發現好多虛拟機都是同一個作業系統,它們的差別就是安裝的軟體不大一樣,那麼你肯定會希望把他們公共的部分提取出來,隻儲存那些與公共部分不同的東西,這樣鏡像大小下去了,空間變多了,管理也友善了。派生鏡像就是用來幹這事的!
首先看一個原始鏡像
現在我們建立一個鏡像,但是派生自它
^_^,這個鏡像才136k,夠省了吧。dry永遠的真理啊!
現在我們在vm3_5.qcow2上打了很多安全更新檔,然後發現我又想在vm3_5.qcow2上派生新的虛拟機,o(∩∩)o...哈哈,這下怎麼辦呢?
這個轉化将會将vm3_5和base合并,生成新的vm3_base2.raw,然後你就可以繼續無窮無盡的派生之旅了!