Как увеличить размер жесткого диска виртуальной машины?

введите описание изображения здесь

У меня закончилось свободное пространство на моей виртуальной машине WinXP, и я только дал 10 ГБ места, когда я его создал. Есть ли простой способ увеличить его, скажем, до 20 ГБ? Я не вижу ничего очевидного в настройках VirtualBox.


Приведенное ниже предложение дает эту ошибку

[email protected]:/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

Удаление .vdi из VirtualBox перед вызовом команды VBoxManage, а затем добавление ее обратно, было успешным. Но теперь я не могу загрузить виртуальную машину, я получаю этот тревожный экран:

введите описание изображения здесь>> </p>

<p> Кстати, он говорит <code>FATAL: Не удалось прочитать с загрузочного носителя! Система остановлена. </Code> </p>

<hr>
<p> После команды VBoxManage vdi должна быть подключена к виртуальной машине. Кроме того, раздел необходимо будет изменить размер из окон WITHIN, потому что у вас будет это пустое пространство: </p>

<p> <img src = EASEUS Partition Master 9.1.0 Home Edition .

229 голосов | спросил wim 18 SunEurope/Moscow2011-12-18T15:51:58+04:00Europe/Moscow12bEurope/MoscowSun, 18 Dec 2011 15:51:58 +0400 2011, 15:51:58

13 ответов


291

Откройте терминал и перейдите к папке с изображением диска VirtualBox, затем используйте следующую команду:

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB

заменив YOUR_HARD_DISK и SIZE_IN_MB с вашим именем изображения и желаемым размером. sudo может потребоваться на некоторых машинах или вы можете столкнуться с ошибкой. Этот ответ и более полное объяснение здесь, на webupd8 . Приобретите Эндрю для публикации этого ответа.

После изменения размера дополнительное пространство должно быть разделено и отформатировано для гостя. Это можно сделать с помощью gooting, загрузив гостя из живой ISO. Мы также можем изменить размер существующего раздела с помощью gparted. Для этого нам может потребоваться отключить /swap и создать новый раздел подкачки.

ответил Tom Brossman 18 SunEurope/Moscow2011-12-18T16:07:21+04:00Europe/Moscow12bEurope/MoscowSun, 18 Dec 2011 16:07:21 +0400 2011, 16:07:21
22

Следующие работали для меня:

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB

Однако я понимаю, как пробег может варьироваться :-) Что касается изменения размера раздела, в Windows 7 я смог изменить размер экрана, который вы показали, щелкнув правой кнопкой мыши на C: диск в нижней панели и выбор громкости.

Экран управления компьютером

ответил Richard Povinelli 15 PMpSun, 15 Apr 2012 15:53:13 +040053Sunday 2012, 15:53:13
17

Вим, мне кажется, вам нужно сначала отменить его из Vbox. File, Media Manager, нажмите на hdd и отмените регистрацию. Затем повторите попытку.

ответил tiempjuuh 19 MonEurope/Moscow2011-12-19T15:40:10+04:00Europe/Moscow12bEurope/MoscowMon, 19 Dec 2011 15:40:10 +0400 2011, 15:40:10
7

После изменения размера и отсутствия возможности просмотра изменения размера на гостевой машине Windows XP мне пришлось

  1. клонировать его
  2. измените размер "VBoxManage modifyhd winxppro \ Clone.vdi --resize 30720" и все работало

Я видел на других форумах, что моментальные снимки могут мешать для изменения размера и не удалять все снимки для разных ошибок, которые я получил, единственным найденным решением для меня было клонирование, чтобы удалить снимки, а затем изменить его размер, и все сработало , Для изменения размера внешних окон загруженный компакт-диск garded, который можно найти здесь , может помочь

ответил Philippe Gachoud 28 Maypm13 2013, 15:11:07
5

У меня была та же проблема, когда я переместил диск и заменил оригинал символической ссылкой. После этого это работает нормально, но вы сталкиваетесь с проблемами с командой «modifyhd», поскольку это, по-видимому, canonicalizes путь к vdi-файлу при работе с ним. Это означает, что вы пытаетесь добавить новый диск с тем же UUID, но на другом пути - или что-то в этом роде.

Существовали две проблемы:

  1. Диск должен быть удален из виртуальной машины, которая использовала его, но затем также «из списка виртуальных дисков hdds». Это было исправлено командой «closemedium», которая удаляет ее из этого списка.

  2. Размер диска, который должен быть изменен, был «фиксированным диском» вместо «динамического», и только динамические диски могут быть изменены. Это было исправлено командой «clone» (клон динамический), а затем изменил размер результирующего диска.

Это мой журнал, как это было сделано. Заметьте, что я не в любой точке, запущенной как root , за исключением случаев, когда я потом изменяю размер раздела и файловой системы.

УДАЛИТЕ АССОЦИАЦИЮ К ДИСКУ ОТ VM.

ПРОБЛЕМА ВСЕ ЕЩЕ НЕОБХОДИМОСТИ:

[email protected]:~/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

Ah, диск по-прежнему «находится в системе»:

[email protected]:~/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"):

[email protected]:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage closemedium disk 6cd99209-e4db-4178-a6c2-53f9581b1fad
[email protected]:~/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)

Повторите попытку изменения размера:

[email protected]:~/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, «фиксированный размер» НЕ РАБОТАЕТ! «clonehd» на помощь, так как это оставляет «динамически распределенный» клонированный диск:

[email protected]:/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

СЕЙЧАС УМЕНЬШИТЬ (мгновенно):

[email protected]:/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%

ТОГДА ПРИНИМАЙТЕ НА НЕКОТОРЫЕ ВМ, ДЛЯ ВЗРЫВА. Это делается как root. Предполагается, что у вас есть только один раздел и, возможно, своп.

# 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.
ответил stolsvik 9 PMpTue, 09 Apr 2013 16:01:43 +040001Tuesday 2013, 16:01:43
2

Это работало для меня с Virtualbox 5.2.6, установленным на Ubuntu 16.04 Host Machine и Windows 10 Гость: откройте Virtualbox Manager, щелкните Global Tools (верхний правый угол) и выберите Virtual Media Manager. Нажмите вкладку «Жесткий диск» и выберите гостевую ОС. В нижней части окна щелкните вкладку «Атрибуты». Внизу вы можете увидеть размер виртуального диска, а с помощью слайдера вы можете увеличить размер по своему вкусу. (Вы можете увеличить, а не уменьшать размер с помощью этого метода). Нажмите «Применить». Запустите гостевую ОС Windows, откройте «Управление компьютером», щелкните правой кнопкой мыши на диске C: и выберите «Расширить громкость», чтобы расширить файловую систему с нераспределенной частью.

Это все, что я должен был сделать, отлично работает для меня.

ответил Judex 24 Jpm1000000pmWed, 24 Jan 2018 20:55:55 +030018 2018, 20:55:55
1

Убедительный способ - сделать это так же, как переход на более крупный жесткий диск, который не работает в виртуальной машине. Сначала используйте ccleaner или аналогичную программу в XP, чтобы очистить все файлы нежелательной почты, которые он может. Затем создайте дополнительный виртуальный жесткий диск необходимого размера. Исправлена ​​загрузка с помощью идентификатора clonezilla ISO на вашем виртуальном диске ODD и клонирование вместе с параметром «изменить размер до нового размера раздела». Затем установите новый виртуальный жесткий диск в качестве основного и не удаляйте старый, пока не узнаете, что он сработал.

ответил xyzzyman 19 MonEurope/Moscow2011-12-19T18:03:23+04:00Europe/Moscow12bEurope/MoscowMon, 19 Dec 2011 18:03:23 +0400 2011, 18:03:23
1

Я получил ту же ошибку, пока не использовал sudo для запуска команды, а затем работал идеально, все равно нужно, чтобы раздел был увеличен из гостевой комнаты, чтобы использовать дополнительное пространство.

ответил JJinCO 1 FebruaryEurope/MoscowbWed, 01 Feb 2012 13:34:13 +0400000000pmWed, 01 Feb 2012 13:34:13 +040012 2012, 13:34:13
1

По сути, кажется, что modifyhd один не помогает вам в некоторых случаях. Я фактически расширил свой WinXP vdi, клонировав изображение после расширения.

Вот полное пошаговое руководство, которое работало для меня пару недель назад: http://libtronics.com/2011/07/resize-virtualbox-disk-for-winxp-guest/

ответил 0x61696f 1 Maypm12 2012, 23:25:23
1

Убедитесь, что вы вошли в систему как пользователь с правами на запись в файл образа диска. Затем запустите

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB  

Работал для меня в первый раз, спрашивая

ответил tindase 27 MaramTue, 27 Mar 2012 02:53:39 +04002012-03-27T02:53:39+04:0002 2012, 02:53:39
1

Вы также можете сделать это, используя меню VirtualBox:

Выберите File -> Virtual Media Manager ...

Откроется окно: введите описание изображения здесь

Выберите свой диск и выберите Properties. Теперь просто переместите ползунок внизу.

После запуска виртуальной машины окна не распознают новое пространство.

Откройте Computer Management (найдите его в меню «Пуск»), выберите Storage -> Disk Management в левом меню. Выберите свой раздел (возможно, C :), щелкните его правой кнопкой мыши и выберите Extend Volume .... Теперь просто щелкните мастер, и все готово.

ответил lenooh 6 J000000Friday18 2018, 15:36:18
0

Вот способ изменения размера вашего диска 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. Создайте новый диск VirtualBox с желаемым именем файла, размером (в мегабайтах) и форматом (либо Standard (динамический), либо Fixed)). Например, чтобы создать диск с фиксированным форматом 50 ГБ под названием MyNewDisk.vdi:

     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. Измените виртуальную машину на использование нового диска.

Далее, на гостевой ОС вам необходимо изменить размер разделов, чтобы использовать новое пространство.

ответил Virtlink 18 PM00000040000002131 2017, 16:53:21
0

Если ваш хост-компьютер является окном, вы можете запустить следующую команду для увеличения или уменьшения размера диска vdi в виртуальном поле:

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

В приведенной выше команде замените your_user_name на пользователя реальных окон, а 20000 - размер диска MB.

ответил Manish Jangir 3 AM000000100000004531 2018, 10:50:45

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132