KVM sanal makine diski görüntüsünün boyutu nasıl azaltılır?


11

KVM sanal makine diskinin boyutunu nasıl küçültür veya küçültürsünüz?

500GB'lık bir sanal disk ayırdım (/var/lib/libvirt/images/vm1.img adresinde saklanır) ve bu aşırıya kaçmayı buluyorum, bu yüzden şimdi bu alanın bir kısmını diğer sanal alanlarla kullanmak için boşaltmak istiyorum makineleri. Görüntü depolamayı nasıl artıracağınız konusunda çok fazla yanıt var gibi görünüyor , ancak azaltmıyor. Virt yeniden boyutlandırma aracını buldum , ancak disk görüntüleri ile değil, sadece ham disk bölümleriyle çalışıyor gibi görünüyor.

Düzenleme: Ext4 biçimli bir bölüme sahip bir LVM kullanıyorum.

Düzenle: LVM parition düzenimi gösteren GParted ekran görüntüsü. Dosya sistemini yeniden boyutlandırmaktan çok daha fazlasını yapmam gerekiyor. LVM'yi yeniden boyutlandırmanın güvenli bir yolunu bilmiyorum. Ve lütfen bana kullanmamı söyleme pvresize. Adına rağmen LVM'lerin yeniden boyutlandırılmasını desteklemiyor.

GParted ekran görüntüsü

Denedim sudo pvresize /dev/vda5, ama sadece diyor physical volume "/dev/vda5" changedama aslında boyutunu azaltmaz.

partedBölüm boyutunu el ile ayarlamaya çalıştım (çok tehlikeli), ama print allsadece bana "/ dev / sr0 tanınmayan disk etiketi" hatasını veriyor.

Düzenleme: Bu talimatları izleyerek , başarıyla mantıksal ve fiziksel hacimlerimi daraltmak mümkün oldu (her ne kadar lvm etkinleştirmek ve devre dışı bırakmak için bazı komutlar önce ve sonra, hangi talimatları atlamak hatırlamak zorunda kaldı.

Şimdi GParted 250G ayrılmamış boş alan gösteriyor. Bunu KVM disk görüntüsünden nasıl kaldırabilir ve altta yatan hipervizöre geri verebilirim?


Sanal diski küçültmeniz mi gerekiyor, yoksa sıkıştırılması yeterli mi? İkincisini böyle bir şeyle yapabilirsiniz qemu-img -O qcow2 vm1.img vm1-compact.qcow2.
Ansgar Wiechers

@AnsgarWiechers, Evet, hala diski kullanmam gerekiyor ve ihtiyaç duyduğumdan çok daha fazla yer ayırdım.
Cerin

Yanıtlar:


10

Yayın gönderenler için teşekkürler, ancak cevaplarınız herhangi bir yardım için çok belirsizdi.

Google'da saatler süren çalışma sonunda , dosya sistemimi, mantıksal hacimleri ve fiziksel birimleri küçültmeyle ilgili adım adım talimatlar veren bir rehber ( bağlantı düzeltildi ) buldum . Çoğu kılavuzun kaçırdığı hile, fiziksel bölümleri gerçekten silme ve doğru boyutta yeniden oluşturma gereğidir, çünkü ayrıştırılmış lvm bölümlerini yeniden boyutlandıramaz.

Daha sonra qemu-img üzerinde ham biçimli sanal disk görüntüsünü çalıştırarak nasıl küçülteceğimizi açıklayan bu belgeleri buldum :

sudo qemu-img resize /var/lib/libvirt/images/myvm.img 255G

qemu-img kvm için disk görüntüleri ile çalışmak söz konusu olduğunda harika bir araçtır. 3 yıl sonra bağlantınız kopmuş gibi görünüyor, burada die.net.ux.net adresinden
Louis Loudog Trottier 26:17

Ve eğer birisi bu kolaylığı istiyorsa ve bir .qcow2 VM'sine yapışmışsa (önce istemiyorsa), önce onu dönüştürün qemu-img convert -f qcow2 -O raw image.qcow2 image.imgve sonra yukarıdaki komutu çalıştırabilirsiniz.
oemb1905

4

Ne yapmak gerekiyor,

  • Bir yedek al
  • Dosya sistemlerini küçültün * bunu canlı bir sistemde yapmayın, canlı cd kullanmanızı tavsiye ederim.
  • İstenen boyutta yeni bir disk görüntüsü oluşturun.
  • Yeni ve eski görüntüler (sanal) sabit disk (takılı değil) olarak eklenmiş olarak canlı bir işletim sistemi çalıştırın
  • Yeni diskleri, eski diskteki yeniden boyutlandırılmış bölümlerle aynı boyutta oluşturun
  • Verileri yeni bölüme yansıtmak için dd'yi kullanın.
  • Başarıyla önyükleme yapmak için grub (2) 'yi temizlemeniz / yeniden oluşturmanız gerekir.

Bu, hem GUI hem de CLI aracılığıyla gerçekleştirilebilir

kaynaklar

Araçlar

  • gparted (Spam nedeniyle bağlantı atlandı, yeterli destek yok)

Zor kısmı "Dosya sistemini küçült". LVM kullanıyorum, hiçbir araç yeniden boyutlandırma desteği bulamadı. GParted Live CD bile değil.
Cerin

Bu kapaklar olsun, hani öylesine rapor iyi ya da kötü memnun kullanılmaz düşünüyorum tcpdump.com/kb/os/linux/lvm-resizing-guide/shrink.html
daxroc

Gözlemlenecek 2 ana nokta vardır: 1) Sırayla bir şeyler yapın ( önce dosya sistemini küçültün, sonra bölümü küçültün, sonra diski küçültün). 2) Bir dosya sistemini yeniden boyutlandırma prosedürü / araçları büyük ölçüde gerçek dosya sistemine (OP'nin açmamayı seçtiğine) bağlıdır. @Daxroc makalesi ext dışındaki dosya sistemleri için çalışmaz [234].
Ansgar Wiechers

@daxroc, hem mantıksal hem de fiziksel hacimleri azaltmam gerekiyor. Bağlantınız yalnızca mantıksal hacmi azaltmayı kapsar.
Cerin

kabul. yedekleme, yeni disk, geri yükleme en güvenli ve en kolay
dyasny

0

Bu benim için gerçekten işe yaradı. Disk görüntüsündeki 0 bloğu sıkıştırır ve daraltır. Görüntü yeniden yazıldıkça zamanla genişler.

qemu-img convert -c -O qcow2 vmdisk.qcow2 vmdisk-comp.qcow2

-4

Bunlardan herhangi birini yapmadan önce disk görüntüsünün tam bir kopyasını olduğu gibi almanızı öneririm, o zaman hepsi bozulduğunda baştan başlamak için kopyalayabilirsiniz.

Yapmanız gereken 3 şey var:

1) Disk görüntüsünü büyütün. Sunucunuzda:

qemu-img resize foo.qcow2 + 32G

Artık konukunuz daha büyük bir disk görebiliyor, ancak yine de eski bölümler ve dosya sistemleri var.

2) Disk görüntüsünün içindeki bölümü büyütün. Bunun için misafirinizde bir LiveCD açmanız gerekir, çünkü monte edilmiş bir bölümle uğraşamayacaksınız. Bu oldukça ilgili ve muhtemelen en tehlikeli kısım. Burada kopyalamak oldukça fazla, bu yüzden şimdilik bunun için bağlantı kuracağım. Böyle bir şey yapmak istiyorsunuz:

http://www.howtoforge.com/linux_resizing_ext3_partitions_p2

VEYA 2b) sadece daha fazla depolama alanı istiyorsanız yeni bir bölüm oluşturmak daha basit (ve daha güvenli) olacaktır. Fdisk veya cfdisk kullanın veya kendinizi rahat hissettiğiniz her şeyi kullanın - misafir diskinizde şimdi ayrılmamış bir sürü alan görmelisiniz.

3) Son olarak, mevcut bölümünüzü yeniden boyutlandırdıysanız, yeni büyük bölümün içindeki dosya sistemini daha büyük yapın (bu aslında yukarıda bağlantılı kılavuzdadır). Misafirinizin içi:


6
Görüntüyü küçültmeye çalışıyor , daha büyük değil.
Michael Hampton
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.