VMware diskinin boyutu nasıl azaltılır


15

Ubuntu görüntü VMware diskim 5GB fiziksel dosya boyutuna ulaştı. Maksimum 8GB kapasiteye sahip dinamik olarak büyüyen bir disktir. Linux dağıtımındaki bazı şeyleri temizledim ve şimdi içinde 3GB yer kaplıyor. Açıkçası fiziksel dosya boyutu otomatik olarak küçülmedi. Bu diski ~ 3GB'a geri küçültmenin bir yolu (mümkünse ücretsiz) var mı?

Görüntüyü DVD'ye sığdırmak için buna ihtiyacım var.

Yanıtlar:


21

Üç adım vardır:

  1. Birleştirme (herhangi bir şeyi çıkarmaya / yeniden takmaya gerek yoktur)

    sudo e4defrag /

    Hataları yoksayın. Simge bağlantıları ve aygıt dosyaları gibi bazı dosyalar birleştirilemez.

  2. Kullanılmayan tüm alanları sıfırlayın, böylece VMware gerçekten de kullanılmamış olduğunu bilir:

    dd if=/dev/zero of=wipefile bs=1M; sync; rm wipefile

  3. Shrink işlemini çalıştırın:

    sudo vmware-toolbox-cmd disk shrinkonly


Bu, VMWare Workstation için doğru cevaptır. Teşekkürler dostum, bana çok yardımcı oldu!
Clonkex

Doğru. VMWare Workstation 14, Centos 7 Guest üzerinde iyi çalışıyor
odiszapc

1
S3 gibi herhangi bir takılı harici birimle çalıştırırsanız dikkatli olun - sıfır doldurma komutu S3 kovanızda 256 TB'lık bir wipefile oluşturmaya çalışır ...
paj

Benim için Windows 10 host ve Ubuntu 16 konuk için çalıştı. İlk başta 3. adımın sunucuda çalıştırılması gerektiğini düşündüm, ama yanılmışım. Tüm adımlardan sonra burada açıklandığı gibi dosya sistemi kontrolünü de çalıştırıyorum: askubuntu.com/a/953750/590877
Alex Che

1
+1, ancak adım 2 için zerofree kullanmanın çok daha hızlı ve daha temiz olacağını düşünüyorum: manpages.ubuntu.com/manpages/xenial/man8/zerofree.8.html
Étienne

15

Çözümü buldum - sabit diskinizi sıkıştırmanız gerekiyor:

Sanal Makine - Ayarlar - Genel - Sanal Makineyi Temizle


Vay. Sonunda bu cevabı buldum. Ama ... sanal diski sıkıştırmak neden boş alanı geri almıyor?
Wizard79

8
Bunu konuk Ubuntu işletim sistemi içinden yapmanız gerekir (VMware Tools yüklü olduğu varsayılarak): "vmware-toolbox-cmd disk shrink /" işi yapmalıdır.
DH4

Bu ESXi için geçerli değildir. Bunun için aşağıdaki cevabımı gör.
Collin Chaffin

3

Konukta VMware Toolbox'ı açın (kök olarak) ve diski küçültün. (Belgeleri)


VMware Tools'unuz yoksa, diski iki adımda manuel olarak daraltabilirsiniz. İlk olarak, sıfırsız gibi bir araç kullanarak sanal diskteki boş alanı temizleyin . Zerofree, Ubuntu'da mevcuttur , ancak konuk işletim sistemi dosya sisteminin salt okunur olarak monte edilmesini gerektirdiğinden, canlı bir CD'den çalıştırmak isteyebilirsiniz. Parted Magic'in sıfır içermediği bildiriliyor.

Boş alanı sıfırladıktan sonra Sanal Makine Ayarları'nı açın ve sanal diski sıkıştırın.


3
Vmware araç kutusu kullanıcı arayüzü artık, ama yine de kullanabilirsiniz: "vmware-toolbox-cmd disk shrink /" hangi iş yapmak.
DH4

3

kullanım

sudo vmware-toolbox-cmd disk shrinkonly

Ubuntu misafirinizdeki komut isteminden.

(Ubuntu 14.04 LTS misafir + Windows 10 Host + VMWare Workstation 12.1.1 üzerinde test edilmiştir)


1

VMWare sabit disk yeniden boyutlandırma :

VMWare'de dinamik sanal sabit diski genişletmek kolaydır ve artık vmware-vdiskmanager.exevarsayılan olarak içinde bulunan komut satırı aracını gerektirmez C:\Program Files\VMware\VMware Workstation\.

Yeniden boyutlandırmak için aşağıdaki komutu kullanın (WIN + R tuşlarına basarak bir komut istemi açın ve cmd girin): " C:\Program Files\VMware\VMware Workstation\vmware-vdiskmanager.exe" -x NEWSIZE "diskname.vmdk"

Prosedür :

Aşağıdaki adımlar:

  • Buradan indirin
  • Yüklemek
  • Açık
  • Bölümü seçin, Yeniden Boyutlandır / Taşı'yı tıklayın, tutamacı tam genişliğine sürükleyin
  • Uygula'yı tıklayın
  • Yeniden başlatmayı kabul et
  • Başlatma sırasında herhangi bir tuşa basmayın
  • Önyükleme modülünün görevini yapmasına izin verin
  • Windows sistem bölümü boyutunuzun arttığını kontrol edin.

Adımların ve ek bilgilerin görsel bir özeti için buraya bakın .


1

Bu adımlar benim için mükemmel çalıştı:

1) Kullanılmayan alanı sıfır doldurun

cat /dev/zero > zero.fill;sync;sleep 1;sync;rm -f zero.fill

2) Vmware araç kutusu ile diski daralt

sudo vmware-toolbox-cmd disk shrink /

Ubuntu 16.04, VMware Workstation 12.1.0 Player, Windows 7 Host üzerinde test edildi


0

ESXi'de diskleri küçültmek mümkündür.

  1. Büyük dosyayı bulun ve silin.

    find / -type f -size + 50M

  2. Birleştirme (herhangi bir şeyi çıkarmaya / yeniden takmaya gerek yoktur). Hataları yoksayın. Simge bağlantıları ve aygıt dosyaları gibi bazı dosyalar birleştirilemez.

    sudo e4defrag /

  3. Kullanılmayan tüm alanları sıfırlayın, böylece VMware gerçekten de kullanılmamış olduğunu bilir:

    dd = = dev / sıfır = wipefile bs = 1M; senkronizasyon; rm wipefile

  4. Büzülme işlemini çalıştırın: 4 başarısız olursa, 5'e geçin.

    sudo vmware-toolbox-cmd disk küçültmek

  5. Linux sistemini try seçeneğiyle yeniden başlatın ve bölüm tablosunu gparted ile düzenleyin. Kök dosya sistemini küçültün ve takas bölümünü kök bölümün yakınına silin ve taşıyın.

  6. SSH'den ESXi'ye ve şu komutu verin:

    vmkfstools -K /vmfs/volumes/volumename/vmname/vmname.vmdk

  7. * .Vmdk dosyasını düzenlememiz gerekiyor. RW harflerinden sonra, VMware sanal diskinin (VMDK) boyutunu tanımlar

    * 40 GB = 40 * 1024 * 1024 * 1024/512 = 83886080 *

  8. Yeni boyutu yansıtmak için başka bir veri deposuna taşıyın.


(1) Soru, dosya sistemi kullanımının nasıl azaltılacağı ile ilgili değildir; OP'nin bunu zaten yaptığını söylüyor. Yani findemriniz gerçekten alakalı değil. (2) Ne vmkfstools -Kişe yarar? (3) Bir dosyayı manuel olarak düzenlemek ister misiniz? Gerçekten mi? (4) Kullanıcının dosyada yapması gereken değişikliklere ilişkin talimatlarınızı anlamıyorum. (5) Başka bir veri mağazasına geçiş hakkında ne söylüyorsunuz? (0) Söylediklerinizin çoğu zaten ele alındı. ……………………………………………………… Lütfen yorumlara cevap vermeyin;  daha net ve eksiksiz yapmak için cevabınızı düzenleyin .
Scott

Ben bir VMware adamım (Ben de herhangi biri de denemek isteyen herkes olacağını düşünürdüm) bu yüzden bu cevap sadece ESXi için geçerli olan tek cevap (ESXi vmtools üzerinden shrink linux konukları desteklemediği için) ama sonuçta mükemmel yapılmış bana mantıklı geliyor. Bununla birlikte, adım 7 sadece gereksiz değildir, sadece yanlıştır. Küçülme gerçek VOLUME boyutunu değiştirmediğinden, 6. adımdan sonra durursunuz. 8. Adım (depolama geçişi) yalnızca, diske zorla ilgilenen Vmkfstools çalıştırmadan disk küçültmek istediğinizde kullanılır, bu nedenle bu çözüm de adım gerektirir. 5a-SHUT DOWN misafir.
Collin Chaffin

Yukarıdaki cevabımı gör. 5. adımda listelenen vmtools tabanlı cmd, herhangi bir ESXi ana bilgisayar tabanlı senaryoda hiçbir zaman desteklenmediği (hatta çalışmadığı) için de yanlıştır.
Collin Chaffin

0

ESXi / vSphere Linux Misafirlerindeki inceltme (küçülme) VMDK diskleri

Not: "Küçülme", ​​genellikle ince tip bir disk dosyasının boyutunu küçültme işlemine atıf yapmak için birbirinin yerine kullanılır. VMware, konuk için kullanılabilir olan diskin altta yatan boyutunu küçültmek ve "inceltme" terimini kullanarak, işlemin altta bulunan kullanılabilir boyutu değiştirmeden kullanılmayan alanı yeniden yakalama eğiliminde olduğu için "inceltme" terimini kullanır.

ESXi, Linux misafirlerinde vmtools tabanlı küçülmeyi desteklemediğinden, aşağıdaki adımlar kullanılmalıdır. Daha fazla bilgi için aşağıdaki referans bağlantısına bakın.

  1. (mümkünse) Aşağıdaki adımların hedef birimi geçici olarak dolduracağı için tüm disk yazma yoğun uygulamalarını ve hizmetlerini durdurun

  2. Hedef VMDK üzerindeki birimleri birleştirin ve hataları / aygıt dosyaları / vb. birleştirilemez.

    # USE sudo IF NECESSARY IN YOUR CONFIG!
    e4defrag /
    # or e4defrag /mnt/MOUNTVOLUME
  1. Kullanılmayan tüm alanı sıfır doldurun:
    dd if=/dev/zero of=/mnt/MOUNTVOLUME/zeroes bs=1M; sync; rm /mnt/MOUNTVOLUME/zeroes
  1. Misafiri kapat ve kapat

  2. SSH'yi ESXi ana bilgisayarına gönderin ve şu komutları verin:

    # Check current vmdk allocation
    du -h /vmfs/volumes/volumename/vmname/vmname.vmdk

    # Shrink it
    vmkfstools -K /vmfs/volumes/volumename/vmname/vmname.vmdk

    # Check again to verify shrinkage
    du -h /vmfs/volumes/volumename/vmname/vmname.vmdk
  1. Misafirin gücü

Kaynak

https://kb.vmware.com/s/article/1002019

Çoğu dosya sistemindeki dosyaların silinmesi onları tamamen kaldırmaz; sadece dosya tabloları değiştirilecektir. Silgi veya SDelete gibi ücretsiz güvenli dosya silme yardımcı programlarının kullanımı, boşluğun birimdeki boş alanı 'sıfırlamak' için sıfırlamak ve boş veri alanını etkili bir şekilde temizlemek için kullanışlıdır. Bu durumda, disk uygun şekilde inceltilebilir. Daha sonra blok geri alımını tamamlamak için vmkfstools -K komutunu (ESXi / ESX 4.1 ve üstü) kullanabilir veya sanal makineyi farklı VMFS blok boyutuna sahip bir veri deposuna taşımak için Storage vMotion kullanabilirsiniz.

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.