web-dev-qa-db-ja.com

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

enter image description here

WinXP仮想マシンのスペースが足りなくなったため、作成時に10 GBのスペースしか使用できませんでした。たとえば20 GBに増やす簡単な方法はありますか? VirtualBoxの設定に明らかなオプションが表示されません。


以下の提案はこのエラーを与えます

wim@wim-ubuntu:/media/data/winxp_vm$ VBoxManage modifyhd wim.vdi --resize 20000
VBoxManage: error: Cannot register the hard disk '/media/data/winxp_vm/wim.vdi' {46284957-2c09-4e70-8a49-bfbe0f7f681d} because a hard disk '/home/wim/VirtualBox VMs/winxp_vm/wim.vdi' with UUID {46284957-2c09-4e70-8a49-bfbe0f7f681d} already exists
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBox, interface IVirtualBox, callee nsISupports
Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, AccessMode_ReadWrite, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 210 of file VBoxManageDisk.cpp

VBoxManageコマンドを呼び出す前にVirtualBoxから.vdiを削除してから、追加し直すと成功しました。しかし、今では仮想マシンを起動できません。この心配な画面が表示されます。

enter image description here

ところで、それはFATAL: Could not read from the boot medium! System halted.と言います


VBoxManageコマンドの後で、vdiをVMに再接続する必要があります。さらに、次の空のスペースがあるため、WITHINウィンドウからパーティションのサイズを変更する必要があります。

enter image description here

EASEUS Partition Master 9.1.0 Home Edition と呼ばれる少しのフリーウェアを使用して、パーティションのサイズを簡単に変更できました。

255
wim

ターミナルを開き、VirtualBoxディスクイメージがあるフォルダーに移動してから、次のコマンドを使用します。

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB

YOUR_HARD_DISKSIZE_IN_MBを画像名と希望のサイズに置き換えます。一部のマシンではSudoが必要な場合や、エラーが発生する場合があります。この答えと詳細な説明は ここでは、webupd8 です。この回答を投稿してくれたAndrewに感謝します。

サイズ変更後、ゲストが使用するために余分な 仮想ハードドライブ領域をパーティション分割してフォーマットする必要があります 。これは、ライブISOからゲストを起動することでgpartedで実行できます。 gpartedを使用して、既存のパーティションのサイズを変更することもできます。このために、/swapを無効にし、新しいスワップパーティションを作成する必要があります。

323
Tom Brossman

次は私のために働いた:

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB

ただし、マイレージがどのように変化するかを理解しています:-)パーティションのサイズを変更する限り、Windows 7では、下部パネルのC:ドライブを右クリックし、ボリュームの拡張を選択することで、表示された画面でサイズを変更できました。

Computer management screen

24

ウィム、最初にVboxから登録解除する必要があると思います。ファイル、メディアマネージャー、hddをクリックして、登録を解除します。その後、もう一度試してください。

17
tiempjuuh

VirtualBoxメニューを使用して行うこともできます。

File-> Virtual Media Manager ...を選択します

ウィンドウが開きます: enter image description here

ディスクを選択し、Propertiesを選択します。下部のスライダーを動かしてください。

仮想マシンを起動すると、ウィンドウは新しいスペースをnot認識します。

WindowsでComputer Management(スタートメニューで検索)を開き、左側のメニューでStorage-> Disk Managementを選択します。パーティション(おそらくC :)を選択し、右クリックしてExtend Volume ...を選択します。ウィザードをクリックするだけで完了です。

11
lenooh

サイズ変更して、ウィンドウXPゲストマシンでサイズ変更を表示できなくなった後、

  1. クローン
  2. 「VBoxManage modifyhd winxppro\Clone.vdi --resize 30720」でサイズを変更すると、すべてが機能しました

私は他のフォーラムで、スナップショットがサイズ変更を妨げ、私が得たさまざまなエラーのすべてのスナップショットを削除できないことを見ました。私にとって唯一の解決策は、スナップショットを削除してサイズを変更することであり、すべてが機能していましたウィンドウの外でサイズを変更するには、gpartedブートCDを参照してください here

9

ディスクを移動したときに同じ問題が発生し、オリジナルをシンボリックリンクに置き換えました。これはその後正常に動作しますが、vmodファイルを操作するときに明らかにパスを正規化するため、「modifyhd」コマンドで問題が発生します。これにより、同じUUIDで別のパスに新しいディスクを追加しようとしているように見えます-またはそのようなものです。

2つの問題がありました。

  1. ディスクは、それを使用したVMから削除する必要がありましたが、「hddsのVirtualBoxリストから」削除する必要がありました。これは 'closemedium'コマンドで修正され、リストから削除されました。

  2. サイズ変更されるディスクは「ダイナミック」ではなく「固定ディスク」であり、ダイナミックディスクのみがサイズ変更できます。これは「クローン」コマンドで修正され(クローンは動的)、結果のディスクのサイズを変更します。

これは、それがどのように行われたかの私のログです。 ルートとして実行されている任意の時点で、私はnotであることに注意してください、ただし、後でパーティションとファイルシステムのサイズ変更を行う場合を除く。

VMからディスクへのアソシエーションを削除します。

問題のまだパーシスト:

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage modifyhd TestInception\ 64\ bit.vdi --resize 8192
VBoxManage: error: Cannot register the hard disk '/datadisk/VirtualBox VMs/TestInception 64 bit/TestInception 64 bit.vdi' {6cd99209-e4db-4178-a6c2-53f9581b1fad} because a hard disk '/home/virt_box/VirtualBox VMs/TestInception 64 bit/TestInception 64 bit.vdi' with UUID {6cd99209-e4db-4178-a6c2-53f9581b1fad} already exists
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBox, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, enmAccessMode, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 178 of file VBoxManageDisk.cpp

ああ、ディスクはまだ「システム内」にあります:

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage list hdds
UUID:        ba58276a-bbe1-4354-8ae5-246bdac390c8
Parent UUID: base
Format:      VDI
Location:    /home/virt_box/VirtualBox VMs/TestInception 32 bit/TestInception.vdi
State:       locked write
Type:        normal
Usage:       TestInception 32 bit (UUID: a693ac62-7caa-4f11-9d00-51d3a149f5f7)

UUID:        6cd99209-e4db-4178-a6c2-53f9581b1fad
Parent UUID: base
Format:      VDI
Location:    /home/virt_box/VirtualBox VMs/TestInception 64 bit/TestInception 64 bit.vdi
State:       created
Type:        normal

VirtualBoxディスクリストからディスクを削除/削除します( "closemedium"):

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage closemedium disk 6cd99209-e4db-4178-a6c2-53f9581b1fad
virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage list hdds
UUID:        ba58276a-bbe1-4354-8ae5-246bdac390c8
Parent UUID: base
Format:      VDI
Location:    /home/virt_box/VirtualBox VMs/TestInception 32 bit/TestInception.vdi
State:       locked write
Type:        normal
Usage:       TestInception 32 bit (UUID: a693ac62-7caa-4f11-9d00-51d3a149f5f7)

サイズ変更を再試行してください:

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage modifyhd TestInception\ 64\ bit.vdi --resize 8192
0%...
Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!

DAMN、 "fixed-size"は機能しません! 'clonehd'が救助にかかります。 '動的に割り当てられた'クローンディスクが残っているためです:

virt_box@TestBox:/datadisk/VirtualBox VMs/TestInception 64 bit$ VBoxManage clonehd TestInception\ 64\ bit.vdi TestInception\ 64\ bit-cloned.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VDI'. UUID: 8e237500-173b-401a-9e63-9e64da110da9

サイズ変更(インスタント):

virt_box@TestBox:/datadisk/VirtualBox VMs/TestInception 64 bit$ VBoxManage modifyhd --resize 8192 TestInception\ 64\ bit-cloned.vdi 
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

その後、サイズを変更するために一部のVMにアタッチします。これはルートとして実行されます。パーティションが1つだけで、場合によってはスワップすることを想定しています。

# fdisk /dev/sdb  # <- The extra disk, just attached to be resized
// The procedure looks like this:
// m - print help
// p - print table
// d ... - delete partition (delete both if you have root and swap)
// n - new partition (create root/first partition starting on exact same sector as before, typically 2048, but ends on last, or last minus swap)
//  ... n.. (.. then add the swap partition. Calculate how many sectors using original table)
// t - change type of partition (swap partition, if any, to 82 - not 83 which is "normal Linux").
// w - write partition table (write out, with the resized partition)

# e2fsck -f /dev/sdb1

e2fsck 1.42.5 (29-Jul-2012)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sdb1: 99918/122160 files (0.3% non-contiguous), 471032/487936 blocks

# resize2fs /dev/sdb1

resize2fs 1.42.5 (29-Jul-2012)
Resizing the filesystem on /dev/sdb1 to 1965824 (4k) blocks.
The filesystem on /dev/sdb1 is now 1965824 blocks long.
5
stolsvik

これは、Ubuntu 16.04ホストマシンおよびWindows 10ゲストにインストールされたVirtualbox 5.2.6で機能しました。VirtualboxManagerを開き、グローバルツール(右上隅)をクリックして、Virtual Media Managerを選択します。 [ハードディスク]タブをクリックして、ゲストOSを選択します。ボックスの下部にある[属性]タブをクリックします。下部には仮想ディスクのサイズが表示され、スライダーを使用して好みに合わせてサイズを増やすことができます。 (この方法では、サイズを小さくすることはできず、増やすことしかできません)。適用をクリックします。 WindowsゲストOSを起動し、コンピューターの管理を開き、C:ドライブを右クリックし、[ボリュームの拡張]を選択して、未割り当ての部分でファイルシステムを拡張します。

それは私がしなければならなかったすべてであり、私にとって完璧に機能します。

3
Judex

ディスクイメージファイルへの書き込み権限を持つユーザーとしてログインしていることを確認してください。次に実行する

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB  

最初に尋ねたときに私のために働いた

1
tindase

ホストマシンがWindowsの場合、次のコマンドを実行して、仮想ボックスのvdiディスクサイズを増減できます。

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd "C:\Users\your_user_name\VirtualBox VMs\Ubuntu18LTS\Ubuntu18LTS.vdi" --resize 20000

上記のコマンドで、your_user_nameを実際のWindowsユーザーに置き換え、20000はディスクのMBサイズです。

1
Manish Jangir

コマンドを実行するためにSudoを使用するまで同じエラーを受け取りましたが、完璧に動作しましたが、追加のスペースを使用するにはゲスト内からパーティションを拡大する必要があります。

1
JJinCO

確実な方法は、VMで実行されていないより大きなハードドライブに移動するのと同じことです。まず、XPのc​​cleanerまたは同様のプログラムを使用して、可能なすべてのジャンクファイルをクリーンアップします。次に、必要なサイズのセカンダリ仮想HDDを作成します。仮想ODDドライブのclonezilla ISOで起動し、「新しいパーティションサイズにサイズ変更」オプションを選択してクローンを作成します。次に、新しい仮想HDDをプライマリとして設定し、動作することがわかるまで古い仮想HDDを削除しないでください。

1
xyzzyman

実際のところ、modifyhdだけでは場合によっては役に立たないようです。実際にWinXP vdiを展開した後、展開後にイメージを複製しました。

数週間前に私のために働いた完全なステップバイステップガイドは次のとおりです: http://libtronics.com/2011/07/resize-virtualbox-disk-for-winxp-guest/

0
0x61696f

VirtualBoxディスクのサイズを変更する方法は、固定形式のディスクか動的形式のディスクかに関係ありません。具体的には、このエラーを防ぎます:

Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!

⚠️仮想ディスクをバックアップします。何がうまくいかないかは決してわかりません。

ホストで:

  1. ターミナルウィンドウを開きます。

    Windowsの場合:コマンドプロンプトcmdを開きます。

  2. サイズを変更する仮想ディスクがあるディレクトリに移動します。例えば:

    cd "My VMs"
    
  3. 目的のファイル名、サイズ(メガバイト単位)、および形式(Standard(動的)またはFixedのいずれか)で新しいVirtualBoxディスクを作成します。たとえば、MyNewDisk.vdiと呼ばれる50 GBの固定フォーマットディスクを作成するには:

    VBoxManage createmedium --filename "MyNewDisk.vdi" --size 50000 --variant Fixed
    

    VBoxManageがコマンドとして認識されない場合は、それへのフルパスを指定します。 VirtualBoxのインストールディレクトリにあります。 Windowsでは、上記のコマンドは次のようになります。

    "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" createmedium
        --filename "MyNewDisk.vdi" --size 50000 --variant Fixed
    
  4. 元のディスクを新しいディスクにコピーします。

    VBoxManage clonemedium "MyOriginalDisk.vdi" "MyNewDisk.vdi" --existing
    
  5. サイズ変更が完了しました!必要に応じて、新しいディスクのプロパティを確認できます。

    VBoxManage showmediuminfo "MyNewDisk.vdi"
    
  6. 代わりに新しいディスクを使用するように仮想マシンを変更します。

次に、ゲストOSで、新しく使用可能なスペースを使用するようにパーティションのサイズを変更する必要があります。

私がやったように、VHD上にWindowsを持っている人のために、最初に次のLinuxコマンドでクローンを作成してVDIに変換します。 (注意、Windows VMの電源はオフです。)

VBoxManage clonehd Windows10.vhd Windows10.vdi --format vdi

これにより、vhdが複製されます。

次に、VDIのサイズを次のように変更できます。 VDIは実際に使用されるまで成長しないことに注意してください。

VBoxManage modifyhd Windows10.vdi --resize 80000

VMホストソフトウェアでストレージのマウントを修正し、VMの電源を入れると、Windowsが起動しますが、パーティションは同じサイズのままです。 Cドライブパーティションのサイズを変更できるWindowsツール用のGoogle。 EaseUs Partition Masterを使用して、Cドライブパーティションを新しいサイズに拡大しました。

最後に、VHDを削除できます。

0
jws