天天看點

KVM虛拟機Linux系統增加硬碟

linux虛拟機在使用過程中,硬碟空間不夠使用。由于前期沒有做lvm,是以隻能手動添加新的硬碟。

給虛拟機添加硬碟有兩種方法:

1、通過virsh attach-disk指令添加一塊硬碟到系統中,即時生效,但系統重新開機後新硬碟會消失。

2、通過修改虛拟機配置檔案進行添加,永久生效。

現在我來一一介紹方法一和方法二。

方法一、通過virsh attach-disk指令添加硬碟

首先看看在未添加新硬碟系統的分區情況。

fdisk –l

df –h

KVM虛拟機Linux系統增加硬碟

從上圖我們可以看到目前系統中隻有一塊硬碟vda,而且被分成3個分區,其中vda1為系統啟動分區。

下面開始添加硬碟:

先使用 qemu-img添加一塊新的硬碟

qemu-img create -f qcow2 /vhost/testdisk.img 20g

KVM虛拟機Linux系統增加硬碟

現在開始使用virsh attach-disk指令把新硬碟添加到虛拟機上。

virsh attach-disk ilanni01 /vhost/testdisk.img vdb

KVM虛拟機Linux系統增加硬碟

該指令的意思是把/vhost/testdisk.img硬碟添加到虛拟機ilanni01中,并且該硬碟在虛拟機系統中顯示的硬碟名稱為vdb。

現在在系統中檢視是否已經挂載該硬碟,使用fdisk指令,如下圖:

KVM虛拟機Linux系統增加硬碟

以上操作是在虛拟機運作是,進行操作的。

現在我們把虛拟機關閉然後,再添加看看。

virsh destroy ilanni01

virsh list –all

KVM虛拟機Linux系統增加硬碟

再次使用virsh attach-disk添加新的硬碟vdc,如下指令:

virsh attach-disk ilanni01 /vhost/test1.img vdc

KVM虛拟機Linux系統增加硬碟

通過上圖我們可以發現,通過virsh attach-disk添加硬碟時,隻能是虛拟機運作時才能添加,而且是即時生效的。

現在我們重新啟動虛拟機看看,如下圖:

KVM虛拟機Linux系統增加硬碟

通過上圖,我們可以看到通過virsh attach-disk指令添加的硬碟在重新開機系統後,添加的新硬碟失效。

那麼現在我們來看第二種方法通過修改配置檔案來添加新硬碟。

要通過修改配置檔案來添加硬碟,我們首先要關閉虛拟機,否則無法正常添加。

關閉虛拟機,然後使用virsh edit指令修改虛拟機的主配置檔案。

虛拟機的所有配置檔案都存放在/etc/libvirt/qemu,如下圖:

KVM虛拟機Linux系統增加硬碟

編輯虛拟機配置檔案,如下圖:

KVM虛拟機Linux系統增加硬碟

配置檔案中,我們找到有關硬碟的代碼:

<disk type=’file’ device=’disk’>

<driver name=’qemu’ type=’qcow2′ cache=’none’/>

<source file=’/vhost/ilanni01.img’/>

<target dev=’vda’ bus=’virtio’/>

<address type=’pci’ domain=’0x0000′ bus=’0x00′ slot=’0x04′ function=’0x0’/>

</disk>

現在我們在</disk>這之後,添加如下的代碼

<source file=’/vhost/testdisk.img’/>

<target dev=’vdb’ bus=’virtio’/>

注意其中type表示硬碟的格式

file表示硬碟所在的路徑

dev表示硬碟在系統中顯示的硬碟名稱

bus表示硬碟的接線類型,如果是windows系統一般是ide。

KVM虛拟機Linux系統增加硬碟
KVM虛拟機Linux系統增加硬碟

添加完畢後,我們來啟動虛拟機看看實際的效果。

KVM虛拟機Linux系統增加硬碟
KVM虛拟機Linux系統增加硬碟

可以看到硬碟已經被添加進來了。

第一種方法和第二種方法的差別,以上兩種方法都能添加硬碟。

但是如果是使用第一種方法添加的硬碟,使用virsh edit ilanni01編輯時,是無法看到第一種方法添加的硬碟的,同時在系統重新開機添加的硬碟會消失。也就是說使用第一種方法添加的硬碟是在ilanni01.xml這個配置檔案中看不到的。

除此之外,如果是解除安裝硬碟,通過第一種方法添加的一定要在虛拟機運作時解除安裝。否則會報錯,但是還會把該磁盤解除安裝掉。而且在此之前對硬碟的操作、分區,等都還存在。

解除安裝硬碟我們可以使用virsh detach-disk指令,如下圖:

virsh detach-disk ilanni01 –target vdb

KVM虛拟機Linux系統增加硬碟

使用virsh detach-disk ilanni01 –target vdb 也可以解除安裝通過virsh edit ilanni01添加的硬碟。但是此時配置檔案ilanni01.xml中還是有此資訊的。使用 virsh attach-disk ilanni01 /vhost/testdisk.img vdb指令可以再增加,系統重新開機後還是存在的。

綜上所述,在我們添加硬碟時,建議還是使用第二種方法。

繼續閱讀