Virtualization

如何增加 KVM 來賓的磁碟空間?

  • May 11, 2021

我在最初有 6GB 磁碟空間的 CentOS KVM 主機上設置了一個 Ubuntu 來賓。如何從命令行增加 Ubuntu 來賓的磁碟空間?

編輯#1:我正在使用磁碟映像文件(qemu)。

  1. 停止虛擬機
  2. 執行qemu-img resize vmdisk.img +10G以將圖像大小增加 10Gb
  3. 啟動VM,正常調整其中的分區和LVM結構

線上方法(使用 qemu、libvirt 和 virtio-block)

無論好壞,即使安裝了目標虛擬磁碟,以下命令也將執行。這在無法解除安裝磁碟(例如根分區)、VM 必須保持開啟且系統所有者願意承擔數據損壞風險的環境中非常有用。要消除這種風險,您需要先登錄虛擬機並解除安裝目標磁碟,這並不總是可行的。

從 KVM 管理程序執行以下操作。

  1. 增加磁碟映像文件本身的大小(指定要增加的數量):
qemu-img resize <my_vm>.img +10G
  1. 通過 libvirt shell(drive-virtio-disk0在本例中)獲取 virtio 設備的名稱:
virsh qemu-monitor-command <my_vm> info block --hmp
 drive-virtio-disk0: removable=0 io-status=ok file=/var/lib/libvirt/images/<my_vm>.img ro=0 drv=raw encrypted=0
 drive-ide0-1-0: removable=1 locked=0 tray-open=0 io-status=ok [not inserted]
  1. 向 virtio 驅動程序發送信號以檢測新大小(指定總新容量):
virsh qemu-monitor-command <my_vm> block_resize drive-virtio-disk0 20G --hmp

然後登錄虛擬機。執行dmesg應該報告 virtio 磁碟檢測到容量變化。此時,請繼續根據需要調整分區和 LVM 結構的大小。

引用自:https://serverfault.com/questions/324281