一 kvm虛擬機器簡介
kernel-based virtual machine的簡稱,是乙個開源的
系統虛擬化模組,自linux 2.6.20之後整合在linux的各個主要發行版本中。它使用linux自身的排程器進行管理,所以相對於xen,其核心原始碼很少。kvm目前已成為學術界的主流vmm之一。
kvm的虛擬化需要硬體支援(如intel vt技術或者amd v技術)。是基於硬體的完全虛擬化。而xen早期則是基於
軟體模擬的para-virtualization,新版本則是基於硬體支援的完全虛擬化。但xen本身有自己到
程序排程器,
儲存管理模組等,所以**較為龐大。廣為流傳的
商業系統虛擬化軟體vmware esx系列也是基於軟體模擬的para-virtualization。
二 kvm虛擬機器安裝與使用
1 前期準備
1.1確定機器有vt
終端輸入命令: grep vmx /proc/cpuinfo (intel晶元)
grep
svm/proc/cpuinfo (amd晶元)
不知道晶元的生產廠商則輸入:egrep '(vmx|
svm)' /proc/cpuinfo
如果flags: 裡有vmx 或者
svm就說明支援vt;如果沒有任何的輸出,說明你的cpu不支援,將無法成功安裝kvm虛擬機器。
1.2 確保bios裡開啟vt:
intel(r) virtualization tech [enabled]
如有必要,還需在bios中開啟vt-d
1.3 確保核心版本較新,支援kvm
用uname –r檢視
核心版本,如果在2.6.20以下的linux版本,需公升級核心。
2安裝kvm
下面就ubuntu和centos下安裝使用kvm虛擬機器做介紹:
ubuntu 中用guest登陸,安裝kvm的命令為:
sudo
apt-get
install kvm qemu qemu-kvm virt-manager kernel-package linux-source kqemu-source build-essential
kvm安裝成功後會有/dev/kvm,如果無需圖形管理器,只需要安裝前三個即可。
再來檢視下kvm是否安裝成功,執行:virsh -c qemu:///system list
如果輸入結果像下面這樣的,那麼成功了:
connecting to uri: qemu:///system
id name state
----------------------------------
注1:centos中安裝時,先要選擇selinux為enalble,使用命令
#system-config-securitylevel-tui
可檢視或修改selinux的狀態。
注2: centos中用root登陸時則安裝命令為:
yum install kvm kmod-kvm qemu
再裝入kvm模組:modprobe kvm-intel (intel機器) 或者 modprobe kvm-amd (amd機器)
注3:可以用以下命令來檢查是否裝入kvm模組:
/sbin/lsmod | grep kvm
如果輸出關於kvm版本的資訊則已裝入kvm模組
注4: 安裝好後,可使用qemu-kvm命令,輸入該命令,如果系統顯示未知的命令,可檢視/usr/libexec中是否有qemu-kvm
可執行檔案,如果有,將其拷貝到/bin目錄下即可。如果確實按照上面的步驟進行了,卻在/bin,/usr/libexec,/usr/bin,/usr/sbin裡都找不到qemu-kvm
可執行檔案,可執行以下命令:
#yum provides "*/qemu-kvm"
注5:安裝新
核心後,可能有部分
軟體版本過低,不相容。比如firefox因版本過低,無法啟動。
centos下可使用如下命令更新該
軟體(以firefox為例):
#yum update firefox
3 在kvm下安裝虛擬機器
3.1用qemu建立磁碟映象
sudo qemu-img create –f qcow windows.img 8g
注:在centos和新版qemu中為:qemu-img create –f qcow2 windows.img 8g
3.2使用kvm安裝guest vm
光碟安裝:
sudo kvm –localtime –cdrom /dev/cdrom -m 512 -boot d win2.img
硬碟安裝:
sudo kvm –localtime –m 512 –hda windows.img –cdrom winxp.iso –boot d –clock –rtc –no-acpi
注1:centos下硬碟安裝為qemu-kvm –localtime –m 512 –hda windows.img –cdrom winxp.iso –boot d –no-acpi 即需要去掉了-clock rtc選項,否則會出現無法初始化時鐘。
注2:centos quest mouse: export sdl_video_x11_dgamouse=0可解決vm中無法識別usb滑鼠的問題。
注3: 安裝win 7時,不能使用-no-acpi選項。
4 kvm啟動guest
①sudo kvm –boot c –m 512
–hda windows.img
② sudo kvm -boot c
-m 512
-hda /home/lm/kvm/winxp.img
-localtime
-net nic,vlan=0,macaddr=52-54-00-12-34-01 -net tap,vlan=0,df=h,ifname=tap0,script=no
-clock rtc
-soundhw es1370
-smp 2
注意:在kvm-87下,請去掉df=h
-m 512 分配512mb的記憶體
-hda /home/lm/kvm/winxp.img
-localtime 使用本地時間(一定要加這個引數,不然虛擬機器時間會有問題)
-net nic,vlan=0,macaddr=52-54-00-12-34-01 -net tap,vlan=0,df=h,ifname=tapo,script=no
使用網路,並連線到乙個存在的網路裝置tap0,注意mac位址一定要自己編乙個,特別是如果你虛擬了多個系統並且要同時執行的話,不然就mac衝突了,在kvm-87下去掉df=h
-boot d 從
光碟啟動 (從
映象啟動也是用這個。從硬碟啟動則為 -boot c )
-smp 2 smp處理器個數為2個,如果你是4核處理器,後面的數字就為4
-clock rtc
使用rtc時鐘(如果不開啟此選項,winxp可能會很慢)
KVM複製虛擬機器,KVM轉殖虛擬機器
1.關閉要轉殖的虛擬機器 2.語法 virt clone o 原虛擬機器 n 新虛擬機器 f 新虛擬機器存放的路徑 virt clone o centos7.0 n xuegod110 f var lib libvirt images xuegod110.img qcow2格式 virt clone...
KVM虛擬機器
一 kvm虛擬機器簡介 kernel based virtual machine的簡稱,是乙個開源的 系統虛擬化模組,自linux 2.6.20之後整合在linux的各個主要發行版本中。它使用linux自身的排程器進行管理,所以相對於xen,其核心原始碼很少。kvm目前已成為學術界的主流vmm之一。...
debian虛擬機器安裝kvm虛擬機器
一 概念介紹 1 libvirt是linux上的虛擬化庫,是長期穩定的c語言api,支援kvm qemu xen lxc等主流虛擬化方案。virsh是libvirt對應的shell命令。2 kvm,即kernel basedvirtual machine的簡稱,是乙個開源的系統虛擬化模組,自linu...