Как увеличить обьем виртуального жесткого диска в VirtualBox

Я являюсь одним из поклонников такой полезной программы, как VirtualBox. Поэтому знаю что при создании новой виртуальной машины, которой ранее не было, обязательно запускается мастер создания виртуальных носителей, где вас просят выбрать тип виртуального носителя и его размер. Очень часто я выбирал значение размера жесткого диска по-умолчанию (20 ГБ), но со временем использования виртуальной ОС оказывалось что этого размера не всегда достаточно. Поэтому рассмотрим как можно увеличить размер виртуального жесткого без переустановки виртуальной ОС.

Для начала необходимо запустить терминал, если у вас Linux или командную строку, если Windows и ввести в нее следующую команду:

VBoxManage modifyhd /путь/к/vdi-файлу --resize x

Где в самом конце команды параметр «х» это размер в мегабайтах, к которому вы хотите увеличить ваш виртуальный жесткий. К примеру, если вы хотите увеличить размер виртуального жесткого для Windows 8 с 20 до 30 ГБ, то эта команда будет выглядеть так:

VBoxManage modifyhd /путь/к/Windows_8.vdi --resize 30000

Далее жмем клавишу Enter и вы должны увидеть процесс выполнения команды. После ее завершения (100%) размер виртуального жесткого увеличиться до заданного значения.

Со стороны вашей основной системы все. Теперь необходимо загрузиться в гостевую операционную систему и добавить появившейся размер в ее использование.

Для гостевых ОС Windows

К примеру, добавить новое дисковое пространство для Windows XP, Vista, Seven можно с помощью правой кнопки на ярлычке «Мой компьютер» на рабочем столе. Затем через меню Управление -> Управление дисками. Новое пространство появится там как неразмеченная область.  Рассмотрим на примере относительно новой Windows 8.  Для этого наберите в поиске (Search) слово «partition» щелкнув перед этим мышкой по опции «Настройки» (Settings).

Результат поиска должен выдать вариант «Create and format hard disk partitions». Выберите эту опцию. В окне редактирования разделов вы должны увидеть свободную неразмеченную область справа от активного раздела.

Далее правой кнопкой по активному разделу выберите из меню «Extend Volume» (Расширить раздел).

Далее просто «Next».

После этого Windows Explorer должен определить что размер жесткого увеличился к заданному ранее значению. А в диспетчере управления дисками свободная неразмеченная область должна слиться с активным разделом.

Для гостевых ОС Linux

В зависимости от настроек вашей гостевой системы расширить жесткий диск как в Windows может быть не просто. К примеру,  в Ubuntu даже если есть свободное место на жестком при расширении активного раздела сбиваются настройки загрузчика с вытекающими для этого последствиями. Поэтому как простейший вариант можно создать в неразмеченной области отдельно новый раздел и просто монтировать его при загрузке в нужное место.

Для этого в гостевой ОС необходимо установить менеджер управления разделами. Один из наиболее популярных — это GParted. Этот менеджер существует для различных видов Linux и имеет очень удобный интерфейс. Установить GParted для Ubuntu, Debian, Mint можно с помощью следующей команды:

sudo apt-get install gparted

Для Fedora, Centos:

su yum install gparted

Далее запускаем GParted и вы должны увидеть неразмеченный раздел.

Правой кнопкой мышки по новому разделу выберите из меню «Новый». В моем примере выбрана файловая система Ext4, такая же как и на основном разделе, но утилита GParted позволяет выбрать файловую систему из достаточно широкого списка: FAT, FAT32, NTFS, Ext2/3, ReiserFS и т.п.

После всего в главном окне программы кликните на зеленую галочку чтобы применить все изменения.

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

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

Запустите опять GParted чтобы узнать какое имя утилита присвоила новому разделу. Как правило это имя будет иметь следующий вид:

/dev/sdaХ

Где Х — это номер раздела. Это же можно выяснить с помощью команды в терминале:

sudo blkid

Где наш новый раздел будет последним.

После чего в терминале открываем от имени рута право на редактирование системного файла:

sudo gedit /etc/fstab

После чего вставляем в конец этого файла следующую строчку:

/dev/sdaХ /путь/куда/монтировать/раздел ext4 defaults 0 2

Где Х — это номер раздела.

К примеру:

/dev/sda5 /media ext4 defaults 0 2

Ну вот и все. Пишите, оставляйте комментарии.

Оцените эту статью: 1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд6 Звезд7 Звезд8 Звезд9 Звезд10 Звезд (1 голосов, среднее: 10,00)
Загрузка...

30 Комментариев

  1. Egor

    Большое спасибо за свежую статью!
    Как раз сегодня столкнулся с такой же проблемой — на виртуалке с ubuntu закончилось свободное место. После того, как попробую описанные действия сообщу результат )

  2. Артём

    При создании нового виртуального жёсткого диска можно выбрать пункт «Динамически расширяющийся образ» и всё будет о’кей…

  3. Сергей

    Спасибо, помогло, только стоит добавить, что если в пути к vdi-файлу есть пробелы, то нужно путь указывать в кавычках, например
    VBoxManage modifyhd «E:\Temp\Virtualbox\7 Ultimate\7 Ultimate.vdi» —resize 30000

  4. MNomzh

    В гостевой ХРюше так просто не получится увеличить объем диска С. Воспользовался EaseUS Partition Master Home Edition — все быстро и без проблем. Спасибо автору!!!

  5. stbass

    Спасибо огромное за статью!

  6. Александр

    Очень грамотно и доступно. Огромное спасибо!

  7. Андрей

    Еще, надо добавить, что команда должна запускаться от рута

  8. Александр

    Неплохо. Спасибо.

  9. Евгений

    Попытался… Вот ответ:
    «VBoxManage» не является внутренней или внешней
    командой, исполняемой программой или пакетным файлом.

    1. administrator (Автор записи)

      Каким способом вы устанавливали Virtual Box?

      1. alex

        Попытался… Вот ответ:
        “VBoxManage” не является внутренней или внешней
        командой, исполняемой программой или пакетным файлом.
        та же проблема, устанавливался путем скачивания с офф. сайта, не через yast2, у меня SUse13.4
        я новичек, что только не перепробовал, пропись от рута.

        1. administrator (Автор записи)

          Я точно знаю как проверить наличие команды в Ubuntu или Centos, думаю в SUse13.4 также. Для этого наберите в консоли начало команды, затем два раза клавишу Tab — такой способ покажет все похожие команды, которые начинаются с этого слова. К примеру: vbox -> 2-ной Tab, должны показаться возможные варианты: vboxautostart vboxballoonctrl vboxheadless vboxmanage vboxsdl vboxwebsrv. У меня Ubuntu выдает такой результат.

  10. alex

    BoxManage: error: Could not find file for the medium ‘/home/luckday1/~/VirtualBox/media/vin1.vdi’ (VERR_FILE_NOT_FOUND)
    VBoxManage: error: Details: code VBOX_E_FILE_ERROR (0x80bb0004), component Medium, interface IMedium, callee nsISupports
    VBoxManage: error: Context: «OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, enmAccessMode, fForceNewUuidOnOpen, pMedium.asOutParam())» at line 178 of file VBoxManageDisk.cpp

    1. administrator (Автор записи)

      Причина ошибки — файл vin1.vdi не найден, проверте ваш путь к файлу, смущает этот фрагмент: «/home/luckday1>>/~/< <VirtualBox/media/vin1.vdi»

  11. чубзик

    Спасибо, пацик! Помогло!

  12. Ольга

    Здравствуйте!
    Столкнулась с проблемой увеличения диска в машине, у которой был снимок. В моем случае увеличение стало доступно в гостевой ОС только после удаления снимка, т.к. последнее влечет за собой объединение vdi файлов — основного и в папке snapshots. Странно, что ни на одном из ресурсов проблема не освещена в случае наличия снимков. За статью спасибо!

    1. administrator (Автор записи)

      Спасибо за эту информацию, возможно кому-то она пригодится в попытках увеличения диска.

    2. Марина

      Hi,

      Сделала все по инструкции. Гостевая — ubuntu.
      После перезапуска новый диск не примонтирован . Более того, если его примонтировать вручную через gparted, он все равно не виден в Computer/Properties. Там прежнее кол-во памяти.
      Не подскажете, в чем может быть проблема?

      но все равно ничего не изменилось.

      1. Марина

        Не дописала.. 🙂
        В fstab написала сначала /dev/sda3 ..
        потом поменяла на UUID
        UUID=… / ext4 defaults 0 2

        но все равно ничего не изменилось.

        1. Марина

          Кажется поняла..
          Нельзя монтировать в корень?

          1. administrator (Автор записи)

            Ну в корень лучше не монтировать. И вы правильно написали, лучше использовать UUID раздела. Вот скопировал у себя рабочий пример:
            UUID=6df3b7e4-0cc8-4crc-8dd4-6266588b5644 /mnt ext4 defaults 0 0
            Это последняя строка добавленная в /etc/fstab.

      2. Андрей

        А у меня после перезапуска новый диск вообще не виден (хотя в настройках размер увеличился)

        1. administrator (Автор записи)

          Настройки виртуальной машины не изменились? Попробуйте передобавить диск к виртуальной машине…

  13. artstart

    Винда ХР: прекрасно всё сработало в связке с EaseUS Partition Master. Спасибо за наводку автору и MNomzh!
    Странно, что возможность изменения размера образа отсутствует в графическом меню. К примеру, виртуальный диск с ХР динамически расширяется очень маленькими порциями, и только после перезагрузки, что не по-деццки доставляет.

  14. Oleg

    У меня тип HD статичный, я так понял его нельзя расширить. А можно ли изменить тип на динамический?

    1. administrator (Автор записи)

      Вы пробовали изменить размер статичного диска? Что возвращает VBoxManage modifyhd?

      1. Leshiy20b

        0%…
        Progress state: VBOX_E_NOT_SUPPORTED
        VBoxManage: error: Resize medium operation for this format is not implemented yet!

        1. administrator (Автор записи)

          Нашел ответ на одном из форумов с похожей ошибкой. Вот пример решения, команды в консоли:

          $ VBoxManage showhdinfo windows7x64.vdi
          UUID: 15dccff1-30e0-4eac-a8d9-90ae90161a64
          Accessible: yes
          Logical size: 20480 MBytes
          Current size on disk: 20480 MBytes
          Type: normal (base)
          Storage format: VDI
          Format variant: fixed default
          In use by VMs: Win7x64 (UUID: 129eea26-f578-405a-924c-7a5076bcc5c8)
          Location: /mnt/moredata/VMs/Windows7x64/windows7x64.vdi

          Для начала необходимо выполнить клонирование диска:

          $ VBoxManage clonehd windows7x64.vdi windows7x64_C.vdi
          0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%
          Clone hard disk created in format ‘VDI’. UUID: 4e067a69-0f9b-4394-9607-8d7cc37b8223

          Затем все действия выполняем с клоном, что обеспечивает безопасность данных, при этом клон уже будет динамическим:

          $ VBoxManage showhdinfo windows7x64_C.vdi
          UUID: 4e067a69-0f9b-4394-9607-8d7cc37b8223
          Accessible: yes
          Logical size: 20480 MBytes
          Current size on disk: 20364 MBytes
          Type: normal (base)
          Storage format: VDI
          Format variant: dynamic default
          Location: /mnt/moredata/VMs/Windows7x64/windows7x64_C.vdi

          После чего должно получиться выполнить ресайз:

          $ VBoxManage modifyhd windows7x64_C.vdi —resize 40960
          0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%

          $ VBoxManage showhdinfo windows7x64_C.vdi
          UUID: 4e067a69-0f9b-4394-9607-8d7cc37b8223
          Accessible: yes
          Logical size: 40960 MBytes
          Current size on disk: 20365 MBytes
          Type: normal (base)
          Storage format: VDI
          Format variant: dynamic default
          Location: /mnt/moredata/VMs/Windows7x64/windows7x64_C.vdi

          Попробуйте этот способ.

  15. Рен

    Здравствуйте, большое спасибо за способ, вроде бы все получилось ,но при загрузке пишет
    serious errors were found while checking the disk drive media
    Если посл строку в файле fstab удалить , то предупреждение пропадает

    1. administrator (Автор записи)

      Ну тогда назревает такой вопрос, вы отформатировали этот подключаемый в fstab раздел, в какую файловую систему?

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Выполните действие! (обязательно) Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.