modifyhdコマンドで動的VDIのサイズを変更できないのはなぜですか?


29

仮想マシンのハードディスクサイズを増やすにはどうすればいいです

次のようなコマンドで動作するはずです

VBoxManage modifyhd xp.vdi --resize 2000

VDIのサイズが固定されている場合、このエラーが発生する可能性があります。

~/VirtualBox VMs/xp$ VBoxManage modifyhd xp.vdi --resize 2000
0%...
Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!

その議論と解決策がここにあります

しかし、VDIが動的なときにエラーが発生します

~/VirtualBox VMs/xp$ VBoxManage showhdinfo xp.vdi
UUID:           8880dc58-cd0c-4ffb-a583-f8dd50eda98e
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       /home/cip/VirtualBox VMs/xp/xp.vdi
Storage format: VDI
Format variant: dynamic default
Capacity:       8192 MBytes
Size on disk:   4693 MBytes
In use by VMs:  xp (UUID: e2b70963-3c26-41cf-88f6-4e03ca721e2d)

何故ですか?


Ubuntu 16.04LTSとダイナミックvdiでも同じ問題が発生します。非常に奇妙な
Luckyrings

回答:


26

使用するVBoxManage modifyhdには、次の注意事項があります。

  • ドライブは.VDIまたは.VHD形式である必要があります。
  • ドライブは固定形式ではなく、動的形式である必要があります(固定ディスクはクローンを作成することで動的形式に変換できます)。
  • ドライブサイズは論理サイズにのみ影響し、物理サイズには影響しません。
  • ドライブを物理サイズ以下に縮小することはできません。
  • 以下のための物理的なサイズを縮小する、私たちはして未使用のドライブスペースを埋めるために持っています0
  • Windows VDIは、物理サイズを縮小する前に最適化する必要がある場合があります。

上記の例では、物理サイズが4693 MBから2000 MBのダイナミックディスクのサイズを変更しようとしましたが、これは不可能です。したがって、エラー。


1
私もここにつまずいた。なんて痛い。
ニコラス

2
固定フォーマットのドライブを変更するには、@ ripper234で答えをたどる
Sharun

私の答えをチェックしてください。あなたが必要とするすべての詳細があり、それが機能していることを証明できます
マウリシオグラシアグティエレス

このイメージは2年以上前に作成しましたが、固定サイズであり動的ではないことを忘れていました。あなたの答えでそれを読んで私は思い出した。私はこれを行うことができなかった理由をうまくしようとしている時間以上を費やしてきた:(...おかげで
Madivad

おかげで、これは役に立ちました。Linux用の実行することを忘れないでくださいpvresizeLinux用の使用にそのスペースを取るためにコマンドを
マクシムLuzik

24

この回避策は私のために働いた:

  1. マシンをシャットダウンします
  2. 希望するサイズで管理インターフェイスを介して新しいドライブを作成します
  3. VBoxManage clonemedium--existingフラグ付きで使用する

    VBoxManage clonemedium <source-guid> <destinatin-guid> --existing
    

:これで、新しいディスクには余分なスペースが未割り当てになり、gpartedを使用してサイズを最大に拡張する必要があります。

VirtualBoxの連中が、投げる代わりに上記を使用してこれを実装できなかった理由がわからないVBOX_E_NOT_SUPPORTED...少なくともこれへのリンク:)


1
Windowsに余分なスペースを割り当てるにはどうすればよいですか?
ケン

4
@Kenは、あなたがそれを理解したかどうかわかりません。スタート->実行-> diskmgmt.msc、C:(またはプライマリドライブ)を右クリックし、拡張を選択します。
トレント

2
これは助けた。私はGUIDではなく、ドライブのファイル名を指定していなかった
Luckyrings

3
@ ripper234 3つのステップには、ある程度詳細な説明が必要です-私のような、自分が何をしているのかよくわからない人のために。2)では、新しい固定ディスクを作成していますか?.vdi .vdmk ?? おそらくグラフィックを使用して、適切な例を挙げてください。また、3)clonehdとは対照的にclonemediumは何をしていますか?2つのGUIDはどこから来ますか(特に宛先1つ)、クローンを作成しているにもかかわらず、すでに存在していますか?ありがとう
-mwarren

ありがとうございました。ここで、私はここでWindowsユーザーとして指示されました(これはaskUbuntuですが) GUID。
ショーンバーシェット

4

ここに全体のプロセスがあります、私は可能な限り詳細にしようとします

  1. サイズを拡大するマシンが「シャットダウン」状態(「保存済み」または他の状態ではない)であることを確認します。

私の場合、32 GBサイズのマシンであり、SMALL VMと呼ばれます

  1. 新しい希望のサイズで新しい仮想マシンを作成する

私の場合、この新しいVM内の小さなマシンのコンテンツを復元しながら、70 GBの新しい仮想マシンを作成することにしました。これを大規模VMと呼びます。

  1. コマンドを実行するVBoxManage list hddsか、仮想メディアマネージャーを開いて、SMALL VMの GUID (オリジン)とLARGE VMの GUID (宛先)を取得します

それらのGUIDで次のコマンドを作成します

VBoxManage clonemedium SMALL_VM_GUID LARGE_VM_GUID-既存

私の場合、ORIGIN-SMALL VM39143127-42b6-478a-afb2-5e58f14218bです

私の場合、DESINATION-LARGE VMは:bb808b5b-b88c-49b2-a646-3414af906d84

もちろん、GUIDは私のGUIDとは異なるものになります

GUIDを逆にしないでください。逆にしないと、新しいマシンが既存のマシンの内容を置き換えてしまいます!!!!

起点と終点を混在させていないことを確認した後、次のコマンドを実行します。

$ VBoxManage clonemedium 39143127-42b6-478a-afb2-5e58f14218b2 bb808b5b-b88c-49b2-a646-3414af906d84 --existing

0%... 10%... 20%... 30%... 40%... 50%... 60%... 70%... 80%... 90%... 100%

「VDI」形式で作成されたクローンメディア。UUID:bb808b5b-b88c-49b2-a646-3414af906d84

  1. 手順2で作成した新しいLARGE VMを起動します。

  2. コンピューターの管理ウィンドウツールで、マシンに実際にはより多くのサイズの未使用/未フォーマットのスペースがあることを確認します

  3. 必要に応じて、Cドライブで「chkdsk」を実行して、すべての準備が整っていることを確認できます(これにより、LARGE VMで 2回再起動する場合があります

  4. gparted-live * .isoを使用して、新しい仮想マシンに「挿入」し、再起動します

  5. gparted環境を起動します

  6. パーティションを拡大して変更を保存する

  7. gparted-live * .isoを「イジェクト」してWindowsを再起動します

  8. コンピューターの管理ウィンドウツールで、マシンのCドライブが大きくなり、スペックの問題を解決できることを確認します。

これらのプロセスのスクリーンショットはありましたが、Windows仮想マシンの空き領域を「急いで」いる人にとっては大きくて恐ろしいことに答えるので、それらを含めないことにしました。


ガイドをありがとう。ステップ3では、どこからGUIDを取得しますか?仮想メディアマネージャーとは何かわかりません。
A.ワン

3
私は私からそれを得たと思いますが、気にしないVBoxManage list hdds
A.Wan

- @ A.Wanこれは、仮想メディアマネージャーであるgoogle.com.co/...
マウリシオ・グラシアグティエレス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.