web-dev-qa-db-ja.com

VMwareディスクのサイズを縮小する方法

私のUbuntuイメージVMwareディスクは5GBの物理ファイルサイズに成長しました。最大容量8GBの動的に成長するディスクです。私はLinuxディストリビューション内のいくつかのものをクリーンアップしましたが、今ではその中に3GBを占めています。明らかに、物理ファイルのサイズは自動的に縮小されませんでした。 (可能であれば無料で)このディスクを約3GBに戻す方法はありますか?

これは、DVDのイメージに合わせるために必要です。

15
Marcin Rybacki

私は解決策を見つけました–ハードドライブをコンパクトにする必要があります:

仮想マシン-設定-全般-仮想マシンのクリーンアップ

15
Marcin Rybacki

3つのステップがあります。

  1. デフラグ(何もアンマウント/再マウントする必要はありません)

    Sudo e4defrag /

    エラーを無視します。シンボリックリンクやデバイスファイルなどの一部のファイルは、最適化できません。

  2. すべての未使用スペースをゼロで埋めて、VMwareが実際に未使用であることを認識します。

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

  3. 圧縮操作を実行します。

    Sudo vmware-toolbox-cmd disk shrinkonly

21
Tom Hale

ゲストで(ルートとして)VMware Toolboxを開き、ディスクを圧縮します。 (ドキュメント)


VMware Toolsがない場合は、2つの手順でディスクを手動で圧縮できます。まず、 zerofree などのツールを使用して、仮想ディスクの空き領域をクリアします。 Zerofreeは buntuで利用可能 ですが、ゲストOSファイルシステムを読み取り専用でマウントする必要があるため、ライブCDから実行することができます。 Parted Magic には、zerofreeが含まれていると報告されています。

空き容量をゼロにした後、仮想マシン設定を開き、仮想ディスクを圧縮します。

3
nandhp

使用する

Sudo vmware-toolbox-cmd disk shrinkonly

ubuntuゲストのコマンドプロンプトから。

(Ubuntu 14.04 LTSゲスト+ Windows 10ホスト+ VMWare Workstation 12.1.1でテスト済み)

3
YasharF

VMWareハードディスクのサイズ変更

VMWareでダイナミック仮想ハードディスクを拡張するのは簡単で、デフォルトでvmware-vdiskmanager.exeにあるコマンドラインツールC:\Program Files\VMware\VMware Workstation\は不要です。

サイズを変更するには、次のコマンドを使用します(WIN + Rを押してコマンドプロンプトを開き、cmdと入力します): "C:\Program Files\VMware\VMware Workstation\vmware-vdiskmanager.exe" -x NEWSIZE "diskname.vmdk"

手順

次の手順は次のとおりです。

  • ダウンロード ここ
  • インストール
  • 開いた
  • パーティションを選択し、[サイズ変更/移動]をクリックして、ハンドルを全幅までドラッグします
  • 「適用」をクリックします
  • 再起動することに同意する
  • 起動中は、キーを一切押さないでください
  • ブートアップモジュールにタスクを実行させます
  • Windowsシステムのパーティションサイズが大きくなっていることを確認します。

ステップの視覚的な概要と追加情報については、 ここ を参照してください。

1
Lorenz Lo Sauer

これらの手順は私にとって完璧に機能しました:

1)未使用スペースをゼロで埋める

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

2)VMwareツールボックスでディスクを縮小する

Sudo vmware-toolbox-cmd disk shrink /

Ubuntu 16.04、VMware Workstation 12.1.0 Player、Windows 7ホストでテスト済み

1
dontbyteme

ESXi/vSphere LinuxゲストでのVMDKディスクのシンニング(縮小)

注:「縮小」は、シンタイプのディスクファイルのサイズを縮小するプロセスを指すために、しばしば同じ意味で使用されます。 VMwareは、「縮小」という用語を使用して、ゲストが使用できるディスクの基礎となるサイズを削減することを指します。

ESXiはLinuxゲストではvmtoolsベースの圧縮をサポートしていないため、次の手順を使用する必要があります。詳細については、以下の参照リンクを参照してください。

  1. (可能な場合)次の手順で一時的にターゲットボリュームがいっぱいになるため、ディスクへの書き込みが集中するアプリケーションとサービスをすべて停止します

  2. ターゲットVMDKのボリュームを最適化し、symlinks/device files/etcとしてのエラーを無視します。デフラグできません。

    # USE Sudo IF NECESSARY IN YOUR CONFIG!
    e4defrag /
    # or e4defrag /mnt/MOUNTVOLUME
  1. 未使用のスペースをすべてゼロで埋める:
    dd if=/dev/zero of=/mnt/MOUNTVOLUME/zeroes bs=1M; sync; rm /mnt/MOUNTVOLUME/zeroes
  1. ゲストをシャットダウンして電源を切る

  2. ESXiホストにSSH接続し、次のコマンドを発行します。

    # 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. ゲストの電源を入れます

ソース

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

ほとんどのファイルシステムでファイルを削除しても、完全には削除されません。変更されるのはファイルテーブルだけです。 EraserやSDeleteなどのフリーウェアの安全なファイル削除ユーティリティを使用すると、スペースをゼロにしてボリュームの空きスペースを「ゼロ」にし、データの空きスペースを効果的にクリアできます。その後、ディスクを適切に薄くすることができます。次に、vmkfstools -Kコマンド(ESXi/ESX 4.1以降)を使用してブロック再利用を完了するか、Storage vMotionを使用して仮想マシンをVMFSブロックサイズの異なるデータストアに移行します。

0
Collin Chaffin

ESXiではディスクの縮小が可能です。

  1. 大きなファイルを見つけて削除します。

    find/-type f -size + 50M

  2. 最適化(何かをアンマウント/再マウントする必要はありません)。エラーを無視します。シンボリックリンクやデバイスファイルなどの一部のファイルは、最適化できません。

    Sudo e4defrag /

  3. すべての未使用スペースをゼロで埋めて、VMwareが実際に未使用であることを認識します。

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

  4. 圧縮操作を実行します。4が失敗した場合は、5に進みます。

    Sudo vmware-toolbox-cmd diskrinkonly

  5. Linuxシステムをtryオプションで再起動し、パーティションテーブルをgpartedで編集します。ルートファイルシステムを縮小し、スワップパーティションを削除してルートパーティションの近くに移動します。

  6. ESXiにSSHで接続し、次のコマンドを発行します。

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

  7. * .vmdkファイルを編集する必要があります。文字RWの後に、VMware仮想ディスク(VMDK)のサイズを定義します

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

  8. 新しいサイズを反映するために、それを別のデータストアに移行します。

0
Kondapaneni