導航:首頁 > 程序命令 > kvm啟動虛擬機命令行

kvm啟動虛擬機命令行

發布時間:2022-06-11 23:45:56

linux系統中一個kvm的虛擬機也哪種方式運行

kvm就是個軟體,可以在命令行執行,也可以在桌面環境找到位置雙擊打開。

Ⅱ KVM虛擬機的使用

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可能會很慢)

Ⅲ 如何在Linux上使用GNOME Boxes創建KVM 虛擬機

在Linux中用命令行工具管理KVM虛擬環境的步驟: 第一步: 配置存儲池 Virsh命令行工具是一款管理virsh客戶域的用戶界面。virsh程序能在命令行中運行所給的命令以及它的參數。本節中,要用它給KVM環境創建存儲池。想知道關於這個工具的更多信息,用以下這條命令。 # man virsh 1、用virsh帶pool-define-as的命令來定義新的存儲池,需要指定名字、類型和類型參數。本例中,將名字取為Spool1,類型為目錄。默認情況下可以提供五個參數給該類型: source-host source-path source-dev source-name target 對於目錄類型,需要用最後一個參數「target」來指定存儲池的路徑,其它參數項可以用「-」來填充。 # virsh pool-define-as Spool1 dir - - - - "/mnt/personal-data/SPool1/" ...在Linux中用命令行工具管理KVM虛擬環境的步驟: 第一步: 配置存儲池 Virsh命令行工具是一款管理virsh客戶域的用戶界面。virsh程序能在命令行中運行所給的命令以及它的參數。本節中,要用它給KVM環境創建存儲池。想知道關於這個工具的更多信息,用以下這條命令。 # man virsh 1、用virsh帶pool-define-as的命令來定義新的存儲池,需要指定名字、類型和類型參數。本例中,將名字取為Spool1,類型為目錄。默認情況下可以提供五個參數給該類型: source-host source-path source-dev source-name target 對於目錄類型,需要用最後一個參數「target」來指定存儲池的路徑,其它參數項可以用「-」來填充。 # virsh pool-define-as Spool1 dir - - - - "/mnt/personal-data/SPool1/" 2、 查看環境中所有的存儲池,用以下命令。 # virsh pool-list --all 3、現在來構造存儲池了,用以下命令來構造剛才定義的存儲池。 # virsh pool-build Spool1 4、用帶pool-start參數的virsh命令來激活並啟動剛才創建並構造完成的存儲池。 # virsh pool-start Spool1 5、查看環境中存儲池的狀態,用以下命令。 # virsh pool-list --all 會發現Spool1的狀態變成了已激活。 6、對Spool1進行配置,讓它每次都能被libvirtd服務自啟動。 # virsh pool-autostart Spool1 7、最後來看看新的存儲池的信息吧。 # virsh pool-info Spool1 恭喜,Spool1已經准備好待命,接下來試著創建存儲卷來使用它。 第二步: 配置存儲卷/磁碟映像 現在輪到磁碟映像了,用qemu-img命令在Spool1中創建一個新磁碟映像。獲取更多細節信息,可以查看man手冊。 # man qemu-img 8、應該在qemu-img命令之後指定「create, check,…」等等操作、磁碟映像格式、想要創建的磁碟映像的路徑和大小。 # qemu-img create -f raw /mnt/personal-data/SPool1/SVol1.img 10G 9、通過使用帶info的qemu-img命令,你可以獲取到你的新磁碟映像的一些信息。 查看存儲卷信息 警告: 不要用qemu-img命令來修改被運行中的虛擬機或任何其它進程所正在使用的映像,那樣映像會被破壞。 現在是時候來創建虛擬機了。 第三步: 創建虛擬機 10、現在到最後一個環節了,在最後一步中,將用virt-install命令來創建虛擬機。virt-install是一個用來創建新的KVM虛擬機命令行工具,它使用「libvirt」管理程序庫。想獲取更多細節,同樣可以查看man手冊。 # man virt-install 要創建新的KVM虛擬機,需要用到帶以下所有信息的命令。 Name: 虛擬機的名字。 Disk Location: 磁碟映像的位置。 Graphics : 怎樣連接VM,通常是SPICE。 vcpu : 虛擬CPU的數量。 ram : 以兆位元組計算的已分配內存大小。 Location : 指定安裝源路徑。 Network : 指定虛擬網路,通常是virbr0網橋。 virt-install --name=rhel7 --disk path=/mnt/personal-data/SPool1/SVol1.img --graphics spice --vcpu=1 --ram=1024 --location=/run/media/dos/9e6f605a-f502-4e98-826e-e6376caea288/rhel-server-7.0-x86_64-dvd.iso --network bridge=virbr0 創建新的虛擬機 11、會看到彈出一個virt-vierwer窗口,像是在通過它在與虛擬機通信。收起

Ⅳ 如何在kvm伺服器上創建虛擬機

創建虛擬機鏡像

要在一台host上跑起一個虛擬機一般需要兩個步驟:

第一步:創建虛擬機鏡像
qemu-img create -f raw /images/vm1.raw 8G

qmeu-img創建的鏡像是一個稀疏文件,也就是說剛創建出來的文件並沒有8G,它會隨著數據的增多慢慢增加,直到8G

第二步:啟動虛擬機
kvm /imges/vm1.raw

運行結果: 因為鏡像裡面沒有任何內容,所以提示找不到可引導設備。

使用qemu-img管理鏡像

qemu-img基本命令

上節介紹了使用qemu-img創建鏡像,這一節將會介紹qemu-img在鏡像管理上的強大功能。
qemu-img有很多命令,包括下面常用的,當然qemu-img -h你懂得。
info
查看鏡像的信息

create
創建鏡像
check
檢查鏡像
convert
轉化鏡像的格式,(raw,qcow ……)
snapshot
管理鏡像的快照
rebase
在已有的鏡像的基礎上創建新的鏡像
resize
增加或減小鏡像大小

創建鏡像

qemu-img create -f <fmt> -o <options> <fname> <size>

舉例:
qemu-img create -f raw -o size=4G /images/vm2.raw

hzgatt@hzgatt:~/images$ ll
total 0-rw-r--r-- 1 hzgatt hzgatt 4.0G 6月 29 14:11 vm2.raw
hzgatt@hzgatt:~/images$ ll -s
total 00 -rw-r--r-- 1 hzgatt hzgatt 4.0G 6月 29 14:11 vm2.raw

hzgatt@hzgatt:~/images$ qemu-img info vm2.raw
image: vm2.raw
file format: raw
virtual size: 4.0G (4294967296 bytes)
disk size: 0

雖然ls中看到文件的大小是4G,但是實際上磁碟大小是0。這就是稀疏文件

轉化
將一個鏡像文件轉化為另外一種格式,qemu-img支持的格式可以看qemu-img -h最後一行。
Supported formats: vvfat vpc vmdk vdi sheepdog rbd raw host_cdrom host_floppy host_device file qed qcow2 qcow parallels nbd dmg tftp ftps ftp https http cow cloop bochs blkverify blkdebug

轉化命令:
qemu-img convert -c -f fmt -O out_fmt -o options fname out_fname

-c:採用壓縮,只有qcow和qcow2才支持
-f:源鏡像的格式,它會自動檢測,所以省略之
-O 目標鏡像的格式
-o 其他選先
fname:源文件
out_fname:轉化後的文件
看例子:
hzgatt@hzgatt:~/images$ qemu-img convert -c -O qcow2 vm2.raw vm2.qcow2
hzgatt@hzgatt:~/images$ ll -s
total 136K
0 -rw-r--r-- 1 hzgatt hzgatt 5.0G 6月 29 13:55 vm1.raw
136K -rw-r--r-- 1 hzgatt hzgatt 193K 6月 29 14:22 vm2.qcow2
0 -rw-r--r-- 1 hzgatt hzgatt 4.0G 6月 29 14:11 vm2.raw
hzgatt@hzgatt:~/images$ qemu-img info vm2.qcow2
image: vm2.qcow2
file format: qcow2
virtual size: 4.0G (4294967296 bytes)
disk size: 136K
cluster_size: 65536
如果想看要轉化的格式支持的-o選項有哪些,可以在命令末尾加上 -o ?
hzgatt@hzgatt:~/images$ qemu-img convert -c -O qcow2 vm2.raw vm2.qcow2 -o ?
Supported options:
size Virtual disk size
backing_file File name of a base image
backing_fmt Image format of the base image
encryption Encrypt the image
cluster_size qcow2 cluster size
preallocation Preallocation mode (allowed values: off, metadata)
增加減少鏡像大小
注意:只有raw格式的鏡像才可以改變大小
hzgatt@hzgatt:~/images$ qemu-img resize vm2.raw +2GB
hzgatt@hzgatt:~/images$ ll -s
total 136K
0 -rw-r--r-- 1 hzgatt hzgatt 5.0G 6月 29 13:55 vm1.raw
136K -rw-r--r-- 1 hzgatt hzgatt 193K 6月 29 14:22 vm2.qcow2
0 -rw-r--r-- 1 hzgatt hzgatt 6.0G 6月 29 14:28 vm2.raw
hzgatt@hzgatt:~/images$ qemu-img info vm2.raw
image: vm2.raw
file format: raw
virtual size: 6.0G (6442450944 bytes)
disk size: 0

Ⅳ 如何在 KVM 虛擬機上運行 KVM

如何在 KVM 虛擬機上運行 KVM

上次討論了如何在 VMware ESXi 虛擬機上運行 KVM 問題,前不久有讀者想 「在 kvm 上面創建個虛擬機安裝 rackspace 的 openstack」 問到 「如何開啟虛擬機上的 CPU VT 功能以便在 KVM 上運行 KVM」,又是一個嵌套應用虛擬機的問題:在 KVM 虛擬機上運行 KVM 虛擬機。以下步驟在 Ubuntu Server 12.04 LTS 64 bit 上測試通過。
首先檢查 KVM host(母機)上是否打開了嵌套虛擬機功能(默認是開啟的):
# modinfo kvm_intel | grep nested
parm: nested:bool

# cat /sys/mole/kvm_intel/parameters/nested
Y

如果上面的顯示結果不是 Y 的話需要開啟 nested:
# modprobe -r kvm-intel
# modprobe kvm-intel nested=1
# cat /sys/mole/kvm_intel/parameters/nested
Y

然後在 KVM guest(虛擬機)的 xml 配置文件中加入 vmx 選項,並啟動虛擬機(這里用的是 Ubuntu 官方發布的 Ubuntu KVM 鏡像 ubuntu-12.04-server-cloudimg-amd64-disk1.img):
# vi nestedvm.xml
...
<cpu match='exact'/>
<model>core2o</model/>
<feature policy='require' name='vmx'//>
</cpu/>
...

# virsh create nestedvm.xml

啟動虛擬機後登陸並安裝 KVM,執行 kvm-ok 和 modinfo 均出現錯誤:
# apt-get install ubuntu-virt-server

# kvm-ok
INFO: /dev/kvm does not exist
HINT: sudo modprobe kvm_intel
INFO: Your CPU supports KVM extensions
KVM acceleration can be used

# modinfo kvm_intel
ERROR: modinfo: could not find mole kvm_intel

這是因為我們使用的是 ubuntu-12.04-server-cloudimg-amd64-disk1.img 這個官方虛擬機鏡像,這個鏡像使用的是 linux 3.2.0-23-virtual 內核,缺少 KVM 模塊(kvm-intel.ko),所以我們需要改為 generic 內核:
# uname -a
Linux test 3.2.0-23-virtual #36-Ubuntu SMP Tue Apr 10 22:29:03 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

# apt-get install linux-generic

重啟後進入虛擬機執行 kvm-ok 和 modinfo 均成功:
# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

# modinfo kvm_intel
filename: /lib/moles/3.2.0-30-generic/kernel/arch/x86/kvm/kvm-intel.ko
license: GPL
author: Qumranet
srcversion: 3BAF54F96ECD4B02292CAA0
depends: kvm
intree: Y
vermagic: 3.2.0-30-generic SMP mod_unload modversions
parm: vpid:bool
parm: flexpriority:bool
parm: ept:bool
parm: unrestricted_guest:bool
parm: emulate_invalid_guest_state:bool
parm: vmm_exclusive:bool
parm: yield_on_hlt:bool
parm: fasteoi:bool
parm: nested:bool
parm: ple_gap:int
parm: ple_window:int

現在應該可以在這個虛擬機上創建另一個虛擬機了

Ⅵ 如何在Linux中用命令行工具管理KVM虛擬環境

第一步: 配置存儲池
Virsh命令行工具是一款管理virsh客戶域的用戶界面,它能在命令行中運行所給的命令以及它的參數,我們要用它給我們的KVM環境創建存儲池,想知道關於這個工具的更多信息,用以下這條命令:
# man virsh

1.定義新的存儲池
可以用virsh帶pool-define-as的命令來定義新的存儲池,你需要指定名字、類型和類型參數,本例中,我們將名字取為Spool1,類型為目錄,默認情況下你可以提供五個參數給該類型:
source-host
source-path
source-dev
source-name
target

對於目錄類型,我們需要用最後一個參數「target」來指定存儲池的路徑,其它參數項我們可以用「-」來填充。
# virsh pool-define-as Spool1 dir - - - - "/mnt/personal-data/SPool1/"

2.查看創建的儲存池列表
查看環境中我們所有的存儲池,用以下命令:
# virsh pool-list --all

3.構造存儲池
現在我們來構造存儲池了,用以下命令來構造我們剛才定義的存儲池。
# virsh pool-build Spool1

4.激活並啟動存儲池
用帶pool-start參數的virsh命令來激活並啟動我們剛才創建並構造完成的存儲池。
# virsh pool-start Spool1

5.查看存儲池狀態
查看環境中存儲池的狀態,用以下命令:
# virsh pool-list --all

你會發現Spool1的狀態變成了已激活。
6.配置自動啟動
對Spool1進行配置,讓它每次都能被libvirtd服務自啟動。
# virsh pool-autostart Spool1

7. 查看最新信息
最後來看看我們新的存儲池的信息吧:
# virsh pool-info Spool1

可以看到,Spool1已經准備好待命,接下來我們試著創建存儲卷來使用它。
第二步: 配置存儲卷/磁碟映像
現在輪到磁碟映像了,用qemu-img命令在Spool1中創建一個新磁碟映像。獲取更多細節信息,可以查看man手冊。
# man qemu-img

1.創建存儲卷
我們應該在qemu-img命令之後指定「create, check,…」等等操作、磁碟映像格式、你想要創建的磁碟映像的路徑和大小。
# qemu-img create -f raw /mnt/personal-data/SPool1/SVol1.img 10G

2.查看存儲卷信息
通過使用帶info的qemu-img命令,你可以獲取到你的新磁碟映像的一些信息。
警告: 不要用qemu-img命令來修改被運行中的虛擬機或任何其它進程所正在使用的映像,那樣映像會被破壞。
第三步: 創建虛擬機
1.創建
在最後一步中,我們將用virt-install命令來創建虛擬機,virt-install是一個用來創建新的KVM虛擬機命令行工具,它使用「libvirt」管理程序庫。想獲取更多細節,同樣可以查看man手冊:
# man virt-install

要創建新的KVM虛擬機,你需要用到帶以下所有信息的命令。
Name: 虛擬機的名字。
Disk Location: 磁碟映像的位置。
Graphics : 怎樣連接VM,通常是SPICE。
vcpu : 虛擬CPU的數量。
ram : 以兆位元組計算的已分配內存大小。
Location : 指定安裝源路徑。
Network : 指定虛擬網路,通常是virbr0網橋。
virt-install --name=rhel7 --disk path=/mnt/personal-data/SPool1/SVol1.img --graphics spice --vcpu=1 --ram=1024 --location=/run/media/dos/9e6f605a-f502-4e98-826e-e6376caea288/rhel-server-7.0-x86_64-dvd.iso --network bridge=virbr0

2.創建過程

接下來就是虛擬機系統的安裝過程了,就不再贅述了。

Ⅶ kvm虛擬機裡面都有哪些常用命令

1.看看cpu是否支持kvm[root@localhost~]#grep-E-o'vmx|svm'/proc/cpuinfo#結果顯示vmx表示支持2.安裝kvm所需要的軟體包[root@localhost~]#yuminstallkvmkmod-kvmqemukvm-qemu-imgvirt-viewer3.安裝完,檢查模塊是否有載入[root@localhost~]#lsmod|grepkvmkvm_intel852560kvm2249282ksm.kvm_intel4.使用命令檢查kvm是否成功安裝[root@localhost~]#virsh-cqemu:///systemlistIdNameState

Ⅷ 如何在Debian或Ubuntu上從命令行使用KVM

眼下有幾種不同的方法可以管理在KVM虛擬機管
理程序上運行的虛擬機。比如說,virt-manager就是一種廣受歡迎的基於圖形用戶界面(GUI)的前端工具,可用來管理虛擬機。不過,如果你想在
無外設伺服器上使用KVM,那麼基於GUI的解決方案並非理想方案。這時候,virsh就派得上用場。virsh是一種命令行工具,可用於管理來賓虛擬機
(guest
VM)。就其底層而言,virsh依賴libvirtd服務,該服務可以控制幾種不同的虛擬機管理程序,其中包括KVM、Xen、QEMU、LXC和
OpenVZ。

如果你想讓虛擬機的配置和管理實現自動化,virsh等命令行管理界面也大有用處。此外,virsh支持多種虛擬機管理程序,這就意味著你可以通過同一個virsh界面,管理不同的虛擬機管理程序。

我在本教程中將演示如何在Debian或Ubuntu上使用virsh,從命令行運行KVM。

第一步:證實主機支持硬體虛擬化

作為第一步,證實主機的處理器配備硬體虛擬化擴展機制(比如英特爾VT或AMD-V),KVM需要這樣的機制。下面這個命令就能證實一點。

$ egrep '(vmx|svm)' --color /proc/cpuinfo flags : fpu vme de
pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts
mmx fxsr sse sse2
ss syscall nx rdtscp lm constant_tsc up arch_perfmon pebs bts nopl
xtopology tsc_reliable nonstop_tsc aperfmperf pni pclmulqdq vmx ssse3
cx16 pcid sse4_1 sse4_2 x2apic popcnt aes xsave avx f16c rdrand
hypervisor lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi
ept vpid fsgsbase smep

如果輸出結果並不含有vmx或svm標記,這意味著主機的處理器沒有支持硬體虛擬化的功能。因而,你就無法在主機上使用KVM。證實了主機處理器隨帶vmx或svm後,接下來繼續安裝KVM。

第二步:安裝KVM

使用apt-get,安裝KVM及相關的用戶空間工具。

$ sudo apt-get install qemu-kvm libvirt-bin

下一步,將你的用戶ID添加到libvirt群組,那樣你就能以非root普通用戶的身份,管理虛擬機了。作為上面安裝KVM的一部分,必須創建libvirt群組。

$ sudo adser [youruserID] libvirt

重新裝入更新後的群組成員信息,如下所示。看到要求輸入密碼的提示後,輸入你的登錄密碼。

$ exec su -l $USER

這時候,你應該能夠以普通用戶的身份運行virsh了。為了測試一下,不妨試一試下面這個命令,它會列出可用的虛擬機(目前沒有一個虛擬機)。要是你沒有遇到許可權錯誤,這意味著到目前為止,一切正常。

$ virsh --connect qemu:///system list Id Name State

Ⅸ 怎樣在arch中用kvm運行虛擬機

首先檢查 KVM host(母機)上是否打開了嵌套虛擬機功能(默認是開啟的):
# modinfo kvm_intel | grep nested
parm: nested:bool

# cat /sys/mole/kvm_intel/parameters/nested
Y

如果上面的顯示結果不是 Y 的話需要開啟 nested:
# modprobe -r kvm-intel
# modprobe kvm-intel nested=1
# cat /sys/mole/kvm_intel/parameters/nested
Y

然後在 KVM guest(虛擬機)的 xml 配置文件中加入 vmx 選項,並啟動虛擬機(這里用的是 Ubuntu 官方發布的 Ubuntu KVM 鏡像 ubuntu-12.04-server-cloudimg-amd64-disk1.img):
# vi nestedvm.xml
...
<cpu match='exact'/>
<model>core2o</model/>
<feature policy='require' name='vmx'//>
</cpu/>
...

# virsh create nestedvm.xml

啟動虛擬機後登陸並安裝 KVM,執行 kvm-ok 和 modinfo 均出現錯誤:
# apt-get install ubuntu-virt-server

# kvm-ok
INFO: /dev/kvm does not exist
HINT: sudo modprobe kvm_intel

閱讀全文

與kvm啟動虛擬機命令行相關的資料

熱點內容
phppdf列印 瀏覽:665
向量范數的源碼 瀏覽:79
查找隱藏的文件夾win7 瀏覽:596
怎麼才能玩我的世界正版伺服器 瀏覽:147
郵箱中發件伺服器是什麼 瀏覽:219
菜鳥app怎麼設置快遞不放菜鳥驛站 瀏覽:795
android文件內容獲取 瀏覽:719
iis如何配置php環境 瀏覽:596
android的內核源碼 瀏覽:563
android代理app 瀏覽:828
小說代理漫畫出書分銷源碼 瀏覽:989
博途軟體編程加密 瀏覽:985
什麼app可以學習一級建造師 瀏覽:569
用海綿做解壓海綿寶寶 瀏覽:46
php批量掛馬 瀏覽:415
數字摘要過程對明文的加密用的是 瀏覽:126
php執行正則表達式 瀏覽:221
人臉識別匹配演算法 瀏覽:414
怎麼重啟萬象伺服器 瀏覽:348
linux控制io 瀏覽:475