Как увеличить размер виртуального диска VirtualBox. Расширяем фиксированный виртуальный диск в VirtualBox

16 ответов

Если вы хотите прекратить резервное копирование жесткого диска vmdk (может быть, вы заинтересованы в использовании диска также в vwmare), выполните следующие шаги:

VBoxManage clonemedium "source.vmdk" "cloned.vdi" --format vdi VBoxManage modifymedium "cloned.vdi" --resize 51200 VBoxManage clonemedium "cloned.vdi" "resized.vmdk" --format vmdk

Выше будет изменить размер жесткого диска до 50 ГБ (50 * 1024 МБ).

Чтобы завершить вещи, вам нужно изменить размер диска тоже! Чтобы достичь этого, вы можете загрузить iso и загрузиться с этого iso, чтобы изменить размер вашего диска (выберите iso в настройках виртуального ящика).

PS Если ваш новый размер слишком мал, вы получите такую же ошибку даже с вашим новым vdi файлом.

У меня есть клиент Windows 7 на хосте Mac, и этот пост был ОЧЕНЬ полезен. Благодарю.

  • Запустить новое увеличенное изображение vmdk.
  • Перейдите в меню "Пуск" и щелкните правой кнопкой мыши "Компьютер" и выберите "Управление".
  • Выберите "Управление дисками"
  • Вы должны увидеть какое-то серое пространство на вашем (в моем случае) диске C
  • Щелкните правой кнопкой мыши диск C и выберите Extend Volume.
  • Выберите размер и нажмите

Сладкое! Я предпочел использовать сторонний инструмент с предупреждениями о потере данных.

Собственно, нужны только эти команды:

VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi VBoxManage modifyhd "cloned.vdi" --resize 51200

Затем вы можете выбрать cloned.dvi в хранилище графического интерфейса Virtualbox.

После этого запустите виртуальные окна и разверните свой диск C как методы Code Chops.

Нет необходимости конвертировать файл *.vdi в файл *.vmdk.

Так как это файл vmdk, вы можете использовать VMWare vdiskmanager , если он доступен для вашей платформы. VMWare имеет версии x86 Linux, Windows и OS X .

И тогда вы просто выполните:

1023856-vdiskmanager-windows-7.0.1.exe -x 30720M Machine-disk1.vmdk

Это позволяет избежать клонирования, а затем развернуть диск. Теперь вам нужен дополнительный инструмент, а vmdk - формат диска VMWare, и вы все еще используете Virtualbox, поэтому могут быть несовместимости.

qemu-img также может работать, но я не уверен, поддерживает ли он изменение размера файлов vmdk. Это выглядело бы так:

Qemu-img resize Machine-disk1.vmdk +8G

И только напоминание, с обоими, вам все равно придется разбить раздел после изменения размера базового диска. Все эти инструменты в основном dd if=/dev/old_disk of=/dev/new_disk bs=16M .

Вы можете использовать проигрыватель Vmware для изменения размера vmdk. Это удаляет конверсию в оба конца (см. Другие сообщения), если вы хотите сохранить ее в формате vmdk. Просто убедитесь, что при добавлении vmdk в vmware не выбирайте формат обновления при появлении запроса, сохраните текущий, если VirtualBox не примет его.

Перепробовал все решения здесь, но ничего не получалось. После нескольких часов копания я нашел этот пост в блоге и, как по волшебству, все работает. Я должен был сделать небольшие корректировки, так что вот модифицированная версия. Протестировано с версией Docker 17.06.0-ce, сборка 02c1d87.

Как только разработчики действительно начинают контейнировать свои приложения, они часто генерируют большое количество изображений и быстро заполняют пространство на жестком диске 20 ГБ, выделенное для виртуальной машины Docker по умолчанию. Чтобы на виртуальной машине Docker было достаточно места на диске, мы должны изменить размер /dev/sda1 до более разумного числа.

VirtualBox для Windows

Изменение размера файла на диске при сохранении настроек виртуальной машины!

Шаг 1 - Изменить размер файла на диске

Запустите cmd.exe

cd в каталог Oracle VM VirtualBox (в 64-разрядных системах: "C:\Program Files\Oracle\VirtualBox\")

Запустите эти команды (как указано выше):

VBoxManage clonehd "C:\path\to\source.vmdk" "C:\path_to\cloned.vdi" --format vdi VBoxManage modifyhd "C:\path\to\cloned.vdi" --resize 51200

Проводник Windows и "копирование адреса в виде текста" через адресную строку должны помочь вам найти нужный путь.

В системе Windows каталог VirtaulBox VM под вашим пользователем может содержать файл базы данных в формате XML с настройками, которые вы настроили для своей виртуальной машины. Переименуйте этот файл с.bak расширением (он имеет.vbox расширения). Переименуйте исходный.vmdk файл с.bak расширением, а также, чтобы избежать повторения ошибок. Теперь вы можете безопасно выполнить третий шаг без сообщения об ошибке, чтобы преобразовать машину обратно в формат.vmdk или с ошибкой "дубликат диска".

VBoxManage clonehd "C:\path_to\cloned.vdi" "C:\path_to\source.vmdk" --format vmdk

Вам будет представлен токен UID . Скопируйте этот токен, выделив его перетаскиванием из окна Windows Command Interpetor и используя Ctrl+C

Откройте файл.vbox.bak в текстовом редакторе, например Notepad++. Вам будет представлен XML-подобный файл базы данных. Ищите эти строки:

В строке удалите старый маркер UID между скобками и вставьте тот, который вы скопировали из окна командной строки. Убедитесь, что вы оставили скобки на месте !

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

Шаг 2 - Удалить мусор

Теперь безопасно удалить файлы.bak оставшиеся в каталоге. То, что остается, - это.vmdk размер.vmdk с обновленной.vbox данных.vbox то время как с ранее сохраненными настройками VirtualBox Manager.

Шаг 3 - Измените размер раздела на диске, чтобы заполнить свободное пространство

Теперь вы можете запустить VirtualBox VM Manager и запустить вашу виртуальную машину, используя соответствующие инструменты для операционной системы, чтобы заполнить новое свободное пространство.

Для виртуальных машин Windows используйте diskpart из командной строки, загруженной из Windows Recovery Consule (раздел восстановления), в SELECT DISK 1 , LIST PARTITION и соберите номер раздела вашего диска C:\ , затем SELECT PARTITION # . Вы можете использовать EXTEND SIZE=mb чтобы изменить размер диска Windows C:\до соответствующего значения. Не забудьте оставить место для разделов восстановления и загрузки! Чтобы получить это значение, можно безопасно вычесть 4096 МБ из вашего нового размера виртуального диска из-за файлов теневого копирования и восстановления Windows.

Для виртуальных машин Linux , действующий.ISO gparted, который вы можете загрузить с дисковым файлом виртуальной машины, можно найти по адресу: http://gparted.org/. Он откроет вам прямо в gparted-gtk на основе графического интерфейса пользователя, откуда вы можете может заполнить ваше свободное пространство.

Для виртуальных машин PPC/Mac Disk Utility из Finder поможет вам заполнить свободное пространство, но вы можете рассмотреть вариант gparted Linux , так как в настоящее время единственным способом загрузки MacOSX в VirtualBox является hackintosh, и вы не можете расширить его. ваш объем при загрузке в MacOSX. Вы также можете временно gparted параметры виртуальной машины для gparted , чтобы загрузить его. Разделы MacOSX распознаются gparted как разделы HFS - "Heaping File System".

Шаг 4 - Фотографии кошек

Потому что интернет. ;) Вы закончили. Наслаждайтесь вашим новым.vmdk виртуального.vmdk диска.vmdk с VirtualBox для Windows!

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

⚠️ Резервное копирование виртуального диска. Вы никогда не знаете, что может пойти не так.

На хосте:

    Откройте окно терминала.

    В Windows: откройте командную строку cmd .

  • Перейдите в каталог с виртуальным диском, который вы хотите изменить. Например:

    Cd "My VMs"

    Создайте новый диск 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

  • Скопируйте исходный диск на новый диск.

    VBoxManage clonemedium "MyOriginalDisk.vdi" "MyNewDisk.vdi" --existing

    Размер сделан! Вы можете проверить свойства нового диска, если хотите:

    VBoxManage showmediuminfo "MyNewDisk.vdi"

    Измените виртуальную машину на использование нового диска.

    У меня здесь, потому что мне нужно было изменить размер диска для моей среды разработки Docker (CoreOS).

    При создании виртуального диска в программе virtualbox, назначенного объема в процессе работы может не хватить. Тогда необходимо будет как-то увеличить размер диска. В принципе сделать это не сложно в случае динамического носителя, но осложнения могут возникнуть если диск является фиксированный. Так как в программе не предусмотрено увеличение объема такого типа созданных носителей.

    Но не стоит отчаиваться, решение все же имеется, правда займет времени побольше. Данный метод осуществляется путем клонирования фиксированного диска и преобразование его в динамический, далее работа будет вестись уже с клоном. Для тех кто не в курсе, в клонированные диски переносится вся информация(папки, файлы, установленные программы) от донора. Ну давайте уже разберемся в данном вопросе на визуальном примере.

    Клонируем фиксированный диск в VirtualBox

    Открываем программу, переходим файл -> менеджер виртуальных носителей .

    В списке виртуальных жестких дисков выбираем нужный, жмем правой кнопкой и нажимаем копировать . В моем случае это фиксированный windows 7, с объемом 20 ГБ.

    Диск у нас уже выбран, поэтому нажимаем next .

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

    В этом окне нас естественно интересует динамический виртуальный жесткий диск .

    Задаем любое имя будущему диску и нажимаем копировать .

    Ожидаем примерно 10-15 минут окончание процесса клонирования.

    После завершения процедуры, переходим в папку с виртуальными дисками, дабы убедится, что носитель создан.

    Увеличиваем размер диск в VirtualBox

    Убедившись в создании, переходим к процедуре увеличения размера. Здесь нам понадобится открыть командную строку. Если у вас стоит windows 10, то кликаем правой кнопкой мыши по меню пуск и открываем командную строку, желательно от имени администратора.

    В случае семерки, жмем пуск и в поиске вводим cmd , найденный файл запускаем под администратором.

    Теперь нам понадобится ввести определенную команду, но в начале нужно убедитесь в расположении папок с файлами программы и виртуального диска(клона).
    Убедившись вводим команду:

    "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd "H:\VirtualBox VMs\Windows 7\Windows 7_2.vhd" --resize 31000

    • C:\Program Files\Oracle\VirtualBox\VBoxManage.exe - путь к папке с файлами программы virtualbox.
    • H:\VirtualBox VMs\Windows 7\Windows 7_2.vhd - расположение созданного диска(клона).
    • --resize 31000 - команда изменения размера до 31000МБ.

    Ждем окончание процесса.

    Создаем виртуальную машину

    После открываем virtualbox, нажимаем кнопку создать .

    В экспертном режиме вводим нужное имя, тип ОС 1 , указываем необходимы объем памяти(RAM) 2 , выбираем пункт использовать существующий виртуальный жесткий диск 3 и жмем кнопку обзора 4 .

    Выбираем наш клон и нажимаем кнопку открыть.

    Теперь жмем создать .

    Как видим машина создана, запускаем ее.

    Переходим в мой компьютер и видим, что объем как был 20ГБ так и остался. Все дело в том, что и в самой виртуальной системе нужно расширить том. При создании клона создается точная копия, а сам объем уже надо увеличить вручную в системе.

    Увеличиваем размер диска в виртуальной машине

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

    Тут нас интересует вкладка управление дисками. Как видим имеется не распределенное пространство в размере 9 ГБ . Как раз столько нам и не хватает. Теперь нужно прибавить данный раздел к разделу (С:), для этого жмем правой кнопкой мыши по (С:) и выбираем пункт расширить том .

    Размер выделяемого пространства должен быть максимальный, так как мы переносим весь объем диска.

    Готово .

    Как видим не распределенного пространства уже нет, так оно нашло распределение в локальном диске (С:).

    Зайдя в мой компьютер увидим, что размер диска увеличен.

    Возможно вы скажите, так диск же динамический, а хотели увеличить размер фиксированного . Так вот, теперь клонируете созданный клон с преобразованием в фиксированный, благо вы уже это делать научились и получите то, что хотели.

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

    Спасибо за внимание!

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

    Начнем с некоторых общих понятий. У VirtualBox существуют 3 основных метода предоставления гостевой операционной системе (ОС) доступа к данным. Сей текст концентрируется на использовании виртуальных дисков.

    Виртуальные диски подключаются к виртуальной - гостевой ОС, методом эмуляции подключения через соответствующий контроллер, IDE, SATA (AHCI), SCSI, SAS.

    Поведение контроллеров запрограммировано таким образом, чтобы имитировать физические прототипы, следовательно IDE контроллер будет работать медленнее SATA и потреблять больше ресурсов процессора , ОС без соответствующих драйверов и аппаратной поддержки не будут взаимодействовать с виртуальными дисками и т.д. Например, в семействе Windows до Windows Vista нет поддержки Advanced Host Controller Interface (AHCI), к которому относится SATA, поэтому в частности, виртуальная машина с ОС Windows XP с SATA работать не будет.

    Файлы виртуальных дисков

    VirtualBox позволяет работать с разными форматами файлов виртуальных дисков. Помимо собственного VDI, поддерживаются VMDK (VMware), VHD (Microsoft), Parallels version 2 HDD format (Parallels).

    Каждому виртуальному диску присваивается уникальный идентификатор UUID, это помогает VirtualBox удостовериться, что каждый диск используется только один раз и не позволяет импортировать в гостевую ОС обычные копии дисков (для этого существует отдельная процедура клонирования).

    Виртуальные диски могут быть, как фиксированного размера, так и динамически выделяемого, причем VirtualBox позволяет увеличить размер дискового пространства, независимо от объёма и формата диска и даже в том случае, если диск содержит данные. Ниже пример, как это сделать с помощью утилиты vboxmanage .

    Vboxmanage modifyhd --resize
    При выборе динамически выделяемого образа, файл контейнера будет «разрастаться» постепенно, по мере заполнения секторов данными, до тех пор, пока размер контейнера не достигнет указанного при создании виртуальной машины лимита.

    Учитывая то, что в процессе регулярного увеличения размера контейнера задействуются дополнительные вычислительные ресурсы, скорость записи при использовании опции с фиксированным размером, как правило выше, в с равнении с динамическим диском. Тем не менее, если размер динамического диска в долгосрочной перспективе значительно не увеличивается, то разница в скорости записи практически нивелируется.

    Управление виртуальными медиа (Virtual Media Manager)

    VirtualBox ведет реестр всех виртуальных медиа носителей, которые используются всеми гостевыми ОС. Это так называемые ”known media”, доступ к списку (реестру) которых можно получить используя утилиту Virtual Media Manager (доступно из меню File). Эта утилита показывает детальную информацию о каждом виртуальном диске, включая полный путь к файлу, а также к какой именно виртуальной машине файл прикреплен. Информацию из реестра можно удалить используя встроенную функцию удаления “Remove”

    Каждый отдельно взятый образ можно «открепить» от виртуальной машины за которой он закреплен, используя функцию ”Release”

    Открепив образ, прикрепить его обратно нажатием одной кнопки не удастся, для этого необходимо будет добавить образ, как жесткий диск. Аналогичным способом «прикрепляются» и снэпшоты (снимки диска).

    В очередной раз отмечу, что из-за наличия UUID, о которых говорилось выше, нельзя просто скопировать и прикрепить образ диска.

    Snapshots (Снэпшоты)

    Как известно snapshot в переводе с английского означает снимок. Принцип работы механизма прост. При создании снэпшота, VirtualBox переводит текущий образ (образы, если их несколько), прикрепленный к ВМ в режим только для чтения и создает отдельный виртуальный диск (диски) и все последующие процедуры записи производятся уже в новом виртуальном хранилище. Причем фиксируются только изменения в определенных секторах, проще говоря при создании снэпшота диска размером 10GB, новый снэпшот будет гораздо меньше, и будет увеличиваться в размере постепенно, как будут заполнятся сектора.

    Логично предположить, что чем больше используется снэпшотов одной виртуальной машины, тем больше используется вычислительных ресурсов для выполнения операций чтения с диска. Действительно, если есть 2 снэпшота, то вначале VirtualBox смотрит есть ли нужный сектор в образе снэпшота2, если нет, то система обращается к снэпшоту1, если и там ничего не обнаружено, то тогда идет обращение к основному диску. Нагрузка все-же будет незначительной и мало заметной для конечного пользователя, т, к. вся таблица секторов постоянно присутствует в памяти.

    Стоить помнить, что при удалении снэпшота, все изменения произведенные после его создания «сливаются» с ранее «замороженным» образом.

    Кэширование ввода/вывода

    Затронув тему производительности уместно будет упомянуть и о кэшировании. Изначально VirtualBox работает с файлами образов, как с обычными файлами, которые само-собой кэшируются хостовой ОС. Это сделано, как нистранно с целью увеличение скорости. Когда гостевая ОС производит операцию записи, то операция кэшируется хостовой ОС и сообщение об успешном завершении операции отправляется в гостевую ОС сразу-же, в то время как сама операция обрабатывается гостевой ОС асинхронно. Такой подход не всегда себя оправдывает, т.к. файлы образов диска имеют тенденцию увеличиваться в объеме и вся процедура начинает давать обратный эффект - происходит двойное кэширование на стороне гостевой и хостовой операционных систем и снижается скорость производимых операций.

    Помимо расходa ресурсов еще одним недостатком кэширования является недостаточная надежность. Например, если внезапно случился перебой с электропитанием в момент, когда хоставая ОС уже сообщила гостевой об успешном выполнении записи, а сам процесс асинхронной записи еще не завершился. Такой сценарий безусловно приводит к потере данных.

    Отключение кэширования выполняется следующим образом:

    Vboxmanage storagectl "VM name" --name --hostiocache off

    Bandwidth

    VirtualBox позволяет ограничивать ширину пропускного канала для одного или нескольких виртуальных дисков.

    Создаем группу “Limit” и устанавливаем лимит в 20 Mb/s

    Vboxmanage bandwidthctl "VM name" add Limit --type disk --limit 20M
    Добавляем нужные диски в группу.

    Vboxmanage storageattach "VM name" --storagectl "SATA" --port 0 --device 0 --type hdd --medium disk1.vdi --bandwidthgroup Limit vboxmanage storageattach "VM name" --storagectl "SATA" --port 1 --device 0 --type hdd --medium disk2.vdi --bandwidthgroup Limit
    Суммарный для обоих дисков bandwidth не будет превышать 20 MB/s. Этот лимит можно изменить в любой момент, не выключая виртуальной машины.

    Vboxmanage bandwidthctl "VM name" set Limit --limit 100M

    Особые режимы записи образов

    Для каждого образа виртуального диска, поддерживаемого VirtualBox, не зависимо от формата , можно определить режим поведения при записи данных, будь это следствие операций внутри виртуальной машины или снимка дика (snapshot). Такие режимы называются «нестандартными», в то время, как по умолчанию все образы дисков функционируют в «нормальном» режиме. Для того, что бы перевести режим из «нормального» в «нестандартный» можно воспользоваться вышеупомянутым Virtual Media Manager или консольной утилитой vboxmanage

    Vboxmanage modifyhd .vdi settype immutable
    В «нормальном» режиме записи, гостевая ОС может осуществлять чтение и запись с физического диска без всяких ограничений a при создании снимков диска (snapshot), VirtualBox создает oтдельный файл в котором фиксируются все изменения.

    В режиме «write through» функция снэпшотов работать не бует.

    Режим работы «shareable» своего рода разновидность предыдущего. Тут тоже нет возможности работы со «снэпшотами», зато есть возможность использования несколькими одновременно работающими виртуальными машинами одного образа диска, сценарий кластеризации.

    Схожий по названию, но отличающийся по принципам работы режим «multiattach», также позволяет использовать один образ диска для нескольких виртуальных машин, но в этом режиме каждая отдельная виртуальная машина использует свой независимый «снэпшот» и изменения произведенные в одной ВМ не доступны для других.

    Режим «read only» используется в основном для работы с образами CD/DVD, т.к. предполагает только чтение.

    Режим на который стоит обратить внимание называется «Immutable ». Как следует из названия immutable образы не меняются с течением времени. Любые изменения в immutable диске актуальны ровно до тех пор, пока виртуальная машина работает. После отключения виртуальной машины все изменения пропадают. Прежде чем перевести диск в режим immutable стоит сначало создатъ «нормальный» диск, установить и настроить систему в оптимальное состояние, желательно не подключаясь к интеренету, и только после того, как гостевая система готова - «откреплять» диск и переводить его в режим immutable.

    Одним из сценариев работы может быть схема при которой используются два диска – один в режиме immutable, на котором находится сама система, второй в нормальном или write-through режиме. На первый взгляд вполне безопасный и понятный сценарий работы - каждый раз загружается «свежая» система. Но не все так прозрачно и есть некоторые нюансы.

    Во первых, для immutable дисков есть одно важное исключение. Они не “обнуляются ” в случае, когда прикреплены к виртуальной машине, снимок диска которой был сделан пока та была запущенна - так называемый online-snapshot. Это означает, что если например, пользователь создал immutable disk, а потом в процессе работы, создал «снэпшот», не завершив работу виртуальной машины, то начиная с упомянутого «снэпшота» все последующие операции и действия внутри системы будут носить необратимый эффект, т.к. все действия будут де-факто происходить в «снэпшоте».

    В случае если основной целью является «свежая система» при каждом запуске, то от использования снэпшотов, лучше воздержаться.

    Во-вторых, вышеописанное «обнуление» отдельного образа происходит только в случае, когда команда включения/отключения виртуальной машины посылается самой средой VirtualBox, а не происходит внутри гостевой ОС. Проще говоря, если например перезагрузить гостевую ОС Windows стандартным методом (Меню пуск, перезагрзить систему), то обнуление immutable диска не произойдет.

    Наконец последнее и самое важное - все изменения происходившие внутри виртуальной машины сохраняются на физическом диске и остаются там до тех пор, пока виртуальная машина не будет запущена заново .

    После того, как текущий контейнер установлен в режим immutable, VirtualBox перестает использовать этот контейнер и фактически диск переходит в режим «read only». Все операции записи перенаправляются в отдельный образ и каждый раз, когда виртуальная машина начинает работу этот новый «отдельный» образ «обнуляется». В реальности на жестком диске создается временный «снэпшот», который находится в папке Snapshots, соответствующей виртуальной машины, внутри которого и происходит вся работа. После завершения работы виртуальной машины вышеупомянутый временный скриншот остается нетронутым.

    Рассмотрим простой пример

    Боб создал виртуальную машину, настроил ОС и перевел диск в режим immutable. Боб регулярно использует свою виртуальную машину для тайного общения с Алисой. При каждом запуске, загружается «свежая» система, не содержащая никаких логов предыдущего общения, текстов, видео или фото. В очередной раз закончив переписку, Боб спокойно выключает виртуальную машину и идет спать.
    Предположим также, что перед каждым запуском ОС Боб проверяет, что режим диска установлен как “immutable”.

    Ева имеет доступ к компьютеру на котором установлена виртуальная машина. Ей достаточно зайти в папку Snapshots внутри директории соответствующей виртуальной машины и там будет требуемый «снэпшот».

    Все что остается сделать Еве, что бы увидеть всю переписку, равно как и результат всех действий производимых Бобом внутри ОС, это перевести диск в «нормальный» режим и перед тем, как запустить виртуальную машину прикрепить к ней снэпшот. Более того, Ева может каждый день делать резервные копии таких «снэпшотов», главное, что бы это было сделано до того, как Боб снова запустит виртуальную машину.

    Решением для Боба в данной ситуации будет после завершения работы, вручную удалять все содержимое папки Snapshots. Не говоря уже о том, что надо постоянно проверять в каком режиме работает диск и желательно, либо вообще заблокировать некоторые элементы GUI, что достаточно просто реализуется

    Vboxmanage setextradata global GUI/Customizations OPTION[,OPTION...]
    Справедливости ради стоит сказать, что у тех-же Parallels, с самых ранних версий для того, что бы перевести диски из одного режима в другой необходим пароль суперпользователя, а временные «снэпшоты» удаляются моментально, после завершения работы.

    Вместо заключения

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

    Oracle VM VirtualBox является одним из самых популярных и стабильных программных обеспечений, с помощью которых пользователи могут устанавливать и тестировать операционные системы различных версий и сборок. При создании нового образа виртуальной машины, VirtualBox позволяет пользователям выбрать необходимый им размер виртуального диска, оперативной памяти, и памяти графической подсистемы. Но после установки операционной системы на виртуальную машину, пользователи не всегда могут так легко изменить размер виртуального диска. Эта опция недоступна в виртуальной среде. В статье мы расскажем вам, как исправить эту ситуацию и увеличить размер дискового виртуального пространства.

    ВАЖНО! При выполнении каких-либо манипуляций с виртуальным жестким диском, всегда делайте его резервную копию!

    Способ 1 – использование командной строки

    Примечание: увеличение размера виртуально носителя поддерживается только в динамических дисках, формата VDI или VHD.

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

    Шаг 1

    Перейдите к основной операционной системе и откройте командную строку с привилегиями администратора.


    Шаг 2

    Введите следующую команду и нажмите «Enter»:

    CD C:\Program Files\Oracle\VirtualBox\

    Шаг 3

    После этого введите следующую команду:

    vboxmanage 30000 modifyhd-[новый размер диска] "D:\VirtualBox\Windows 8.1 Preview.vdi "

    Вместо указанного пути вам необходимо указать путь, где хранится ваш образ.


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

    Шаг 4

    Откройте VirtualBox и запустите виртуальную машину, дисковое пространство которой вы хотите расширить.

    Шаг 5

    Если у вас установлена ОС Windows, то вам нужно запустить консоль «Управление дисками» (нажать сочетание клавиш Win+R и ввести в поле «diskmgmt.msc», после этого нажать «ОК»).

    Шаг 6

    В консоли управления дисками добавленное вами дисковое пространство будет отображаться как незанятое. Чтобы задействовать его, щелкните правой кнопкой мыши на виртуальном диске и выберите пункт «Расширить том».


    Шаг 7

    Увеличьте объём диска до предела и нажмите кнопку «ОК». Процедура займет несколько минут времени, после чего размер жесткого диска будет изменен.

    Примечание: перед тем, как выполнить описанные выше действия, рекомендуем создать резервную копию виртуальной машины, объем диска которой вы хотите увеличить. Также обратите внимание на тот факт, что раздел, на котором вы храните виртуальную машину (.VDI) должны иметь достаточно свободного места, чтобы иметь возможность увеличить виртуальный диск.

    Способ 2 – Создание второго раздела

    В некоторых случаях вышеописанный способ может привести к потере данных, поэтому мы рассмотрим второй способ – самый безопасный. Он заключается в создании второго виртуального жесткого диска и подключении его к вашей текущей виртуальной машине. Сделать это можно следующим образом:

    Шаг 1

    Отключите виртуальную машину и перейдите в ее настойки.


    Шаг 2

    Перейдите в подменю «Носители» и в поле «Носители информации» нажмите на значок «Добавить устройство». Выберите пункт «Добавить жесткий диск».


    Шаг 3


    Шаг 4

    Перед вами откроется конфигуратор, в котором вам необходимо указать имя и путь, где будет находиться образ жесткого диска. Также не забудьте указать его размер и тип (желательно VDI). После того, как вы выставили подходящие вам значения, нажмите кнопку «Создать». Новый виртуальный HDD будет создан и сразу добавлен в виртуальную машину.


    Шаг 5

    Запустите виртуальную машину, перейдите в диспетчер дисков как описано в способе 1 (шаг 5).

    Шаг 6

    Вы увидите неразмеченный раздел диска. Кликните по нему правой клавишей мыши и выберите «Создать том».


    Шаг 7

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


    назначить букву, а также выбрать файловую систему.


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

    Что делать если у вас виртуальная ОС Linux?

    Если у вас на виртуальной машине установлена Linux, то расширение в физической ОС делается также, как и в описанных выше способах, но при запуске гостевой ОС, необходимо действовать по-другому, так как менеджера дисков в ОС Linux, как такового, нет. Чтобы добавить созданный диск или расширить существующий, выполните следующее:

    Шаг 1

    Откройте консоль, введите «su» и нажмите ввод.

    Шаг 2

    Введите пароль администратора и нажмите «Enter».

    Шаг 3

    Установите пакет «GParted». Для этого в консоли введите команду:

    Для дистрибутивов Ubuntu, Debian, Mint она будет иметь следующий вид:

    sudo apt-get install gparted

    Для Fedora, Centos, команда будет выглядеть иным образом:

    su yum install gparted

    Шаг 4

    Дождитесь окончания загрузки и установки пакета. Чтобы установка завершилась успешно, ваша виртуальная ОС должна быть подключена к интернету.

    Шаг 5

    Запустите GParted. В главном окне вы увидите список всех доступных дисков. Здесь вы также найдете добавленную вами область. Она будет помечена как неразмеченная.


    Теперь, в зависимости от того, какой из способов выше вы выбрали, сделайте следующее:

    Для способа 1:

    1. Кликните правой клавишей мыши по вашему текущему диску, на котором установлена ОС и выберите пункт «Изменить размер».
    2. В новом окне ползунком укажите новый размер диска, с учетом того количества места, которое вы выделили. После этого нажмите кнопку «Изменить размер».
    Для способа 2:

    Пользователю необходимо указать объем, который он хочет выделить под нужды гостевой ОС. В некоторых случаях выделенного количества гигабайт со временем может перестать хватать, и тогда актуальным будет вопрос об увеличении объема виртуального накопителя.

    Точно рассчитать размер, который понадобится после установки системы в ВиртуалБокс, удается не всегда. Из-за этого некоторые пользователи сталкиваются с нехваткой свободного пространства в гостевой ОС. Есть два способа добавить свободное пространство к виртуальной машине без удаления образа:

    • Использование специальной утилиты от VirtualBox;
    • Добавление второго виртуального жесткого диска.

    Способ 1: Утилита VBoxManage

    В арсенале VirtualBox есть утилита VBoxManage, которая позволяет управлять размерами дисков через командную строку или терминал в зависимости от типа операционной системы. Мы рассмотрим работу этой программы в Windows 10 и CentOS. Условия для изменения объема в этих ОС следующие:

    • Формат хранения: динамический;
    • Тип диска: VDI или VHD;
    • Состояние машины: выключена.

    Прежде, чем начать изменение, вам нужно узнать точный размер диска гостевой ОС и путь, где хранится виртуальная машина. Это можно сделать через VirtualBox Менеджер.

    На панели меню выберите «Файл» > «Менеджер виртуальных носителей» или просто нажмите Ctrl+D .

    Напротив ОС будет указан виртуальный размер, а если выделить ее кликом мыши, то внизу появится информация о расположении.

    Использование VBoxManage в Windows

    После успешного изменения объема диска необходимо настроить саму виртуальную ОС, поскольку она будет продолжать видеть прежнее количество ГБ.


    Использование VBoxManage в Linux

    Вам потребуются root-права для работы с терминалом и самой утилитой.

    1. Пропишите команду

      vboxmanage list -l hdds

    2. В строке UUID скопируйте значение и вставьте его в эту команду:

      vboxmanage modifyhd ВАШ_UUID --resize 25600

    3. В Linux невозможно расширить раздел, пока запущена сама ОС.

    4. Запустите утилиту . Чтобы сделать ее загрузочной, в VirtualBox Менеджере зайдите в настройки машины.

    5. Переключитесь на раздел «Носители» , и в «Контроллер: IDE» добавьте скачанный GParted Live. Для этого нажмите на «Пусто» и в правой части выберите образ оптического диска с утилитой GParted, как показано на скриншоте.

    6. Сохраните настройки и запустите машину.
    7. В загрузочном меню выберите «GParted Live (Default Settings)» .

    8. Конфигуратор предложит выбрать раскладку. Для расширения диска этот параметр не важен, поэтому можете выбрать любой вариант.

    9. Укажите желаемый язык, введя его номер.

    10. На вопрос о предпочтительном режиме введите ответ «0» .

    11. Запустится GParted. В окне будут отображены все разделы, в том числе добавленная через VBoxManage область.

    12. Правым кликом мыши по системному разделу откройте контекстное меню (обычно это sda2), и выберите пункт «Изменить раздел или переместить» .

    13. При помощи регулятора или поля для ввода установите тот объем, до которого вы хотите расширить раздел. Для этого сдвиньте регулятор вправо:

      Либо в поле «Новый размер» впишите число, которое указано в строке «Максимальный размер» .

    14. Создастся запланированная операция.

    15. На панели инструментов нажмите «Правка» > «Применить все операции» или кликните по самой запланированной операции правой кнопкой мыши и выберите ее применение.

    16. В окне подтверждения нажмите на «Apply» .

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

    18. По завершении вы увидите, что размер виртуального диска стал больше.

    19. Виртуальную машину можно выключить, и из настроек ее загрузки убрать носитель GParted Live.

    Способ 2: Создание второго виртуального накопителя

    Способ изменения размера диска через утилиту VBoxManage не единственный и не самый безопасный. Гораздо проще подключить второй виртуальный накопитель к созданной машине.

    Конечно, имеет смысл создавать второй диск, только если планируется существенно увеличить объем накопителя, и не планируется хранить файл (-ы) большого размера.

    Опять же рассмотрим способ добавления накопителя на примерах Windows 10 и CentOS.

    Создание дополнительного накопителя в VirtualBox


    Подключение виртуального диска в Windows

    Эта ОС после подключения накопителя все еще не будет видеть дополнительный HDD, поскольку он не был инициализирован.

    1. Запустите виртуальную машину.

    2. Нажмите Win+R , впишите команду diskmgmt.msc .

    3. У вас должно запуститься окно, требующее провести инициализацию. Не меняйте настроек и нажмите «ОК» .

    4. Новый накопитель отобразится в нижней части окна, но его область еще не задействована. Чтобы его задействовать, правым кликом мыши выберите «Создать простой том» .

    5. Откроется специальная утилита. В окне приветствия нажмите «Далее» .

    6. Не меняйте настроек на этом этапе.

    7. Выберите букву тома или оставьте ее по умолчанию.

    8. Параметры форматирования можно не менять. При желании в поле «Метка тома» можете вписать имя (обычно это имя «Локальный диск»).

    9. Кликните «Готово» .

    10. Статус накопителя сменится, и он будет распознаваться системой.

    Теперь диск виден в Проводнике и готов для работы.

    Подключение виртуального диска в Linux

    В отличие от Виндовс, в дистрибутивах на базе Линукс не нужно инициализировать накопители. После создания и подключения диска к виртуальной машине, остается проверить, все ли сделано правильно.


    Это были распространенные и наиболее удобные варианты увеличения размера диска виртуальных машин в ВиртуалБокс. Не забывайте делать резервные копии важных ОС, если решили пользоваться утилитой VBoxManage, и следите за тем, чтобы на основном диске, откуда выделяется место для виртуального накопителя, было достаточно свободного места.



Понравилась статья? Поделиться с друзьями: