Увеличение размера диска virtualbox. Расширяем фиксированный виртуальный диск в VirtualBox
На тот случай, если при создании виртуальной машины вы не угадали с размером, в Oracle VirtualBox есть штатная возможность изменить размер виртуального диска. Правда из графической оснастки изменить размер диска не получиться, для этого придется воспользоваться консольной утилитой VboxManage.exe, входящей в состав VirtualBox.
Увеличение размера
Открываем командную строку и переходим в директорию C:\Program Files\Oracle\Virtual Box (директория установки VirtualBox по умолчанию). Выведем информацию о виртуальном диске WKS2.vdi командой:
VboxManage.exe showhdinfo C:\VM\WKS2.vdi
В строке Logical size указан максимальный размер диска — 25600 Мб (25 Гб). Увеличим его до 30 Гб (30720 Мб) следующей командой:
VboxManage.exe modifyhd C:\VM\WKS2.vdi −−resize 30720
И затем еще раз посмотрим данные о диске.
После увеличения размера виртуального диска надо зайти в гостевую систему и увеличить размер логического диска. Cделать это можно из оснастки управления дисками (discmgmt.msc), выбрав в контекстном меню пункт «Расширить том». Эта возможность есть во всех ОС Windows, начиная с Vista\Server 2008. В других операционных системах придется воспользоваться сторонними программами, например Acronis Disk Director.
Уменьшение размера
Возможна и обратная ситуация, когда необходимо уменьшить размер дискового пространства, занимаемого виртуальной машиной. В этом случае алгоритм действий другой.
Сначала заходим в гостевую систему и удаляем все лишнее. Затем произведем очистку свободных секторов диска с помощью утилиты Sdelete от Sysinternals. Утилита не требует установки, ее достаточно распаковать и запустить из командной строки команду Sdelete.exe -s -z .
Примечание. В Linux для очистки диска можно воспользоваться утилитой ZeroFree.
После очистки выключаем виртуалку, открываем командную строку на хостовой машине и выполняем команду:
VboxManage.exe modifyhd C:\VM\WKS2.vdi −−compact
Эта команда сжимает образ виртуального диска, уменьшая место, занимаемое им на диске. При этом логический размер диска останется без изменения. Уменьшить размер диска с помощью ключа resize не получится, этот способ работает только в сторону увеличения.
В заключение скажу, что увеличение размера возможно только для динамических дисков формата VDI или VHD, а сжатие — только для VDI-дисков. Все остальные варианты не поддерживаются, по крайней мере на данный момент. И еще, перед изменением размера диска не поленитесь сделать его резервную копию, на всякий случай 🙂
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-подобный файл базы данных. Ищите эти строки:
В строке Сохраните этот файл и выйдите из текстового редактора. Переименуйте файл.vbox.bak чтобы вернуть ему ожидаемое расширение.vbox . Теперь безопасно удалить файлы.bak оставшиеся в каталоге. То, что остается, - это.vmdk размер.vmdk с обновленной.vbox данных.vbox то время как с ранее сохраненными настройками VirtualBox Manager. Теперь вы можете запустить 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". Потому что интернет. ;) Вы закончили. Наслаждайтесь вашим новым.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 есть утилита VBoxManage, которая позволяет управлять размерами дисков через командную строку или терминал в зависимости от типа операционной системы. Мы рассмотрим работу этой программы в Windows 10 и CentOS. Условия для изменения объема в этих ОС следующие: Прежде, чем начать изменение, вам нужно узнать точный размер диска гостевой ОС и путь, где хранится виртуальная машина. Это можно сделать через VirtualBox Менеджер. На панели меню выберите «Файл»
> «Менеджер виртуальных носителей»
или просто нажмите Ctrl+D
. Напротив ОС будет указан виртуальный размер, а если выделить ее кликом мыши, то внизу появится информация о расположении. После успешного изменения объема диска необходимо настроить саму виртуальную ОС, поскольку она будет продолжать видеть прежнее количество ГБ. Вам потребуются root-права для работы с терминалом и самой утилитой. vboxmanage list -l hdds vboxmanage modifyhd ВАШ_UUID --resize 25600 В Linux невозможно расширить раздел, пока запущена сама ОС. Либо в поле «Новый размер»
впишите число, которое указано в строке «Максимальный размер»
. Способ изменения размера диска через утилиту VBoxManage не единственный и не самый безопасный. Гораздо проще подключить второй виртуальный накопитель к созданной машине. Конечно, имеет смысл создавать второй диск, только если планируется существенно увеличить объем накопителя, и не планируется хранить файл (-ы) большого размера. Опять же рассмотрим способ добавления накопителя на примерах Windows 10 и CentOS. Эта ОС после подключения накопителя все еще не будет видеть дополнительный HDD, поскольку он не был инициализирован. Теперь диск виден в Проводнике и готов для работы. В отличие от Виндовс, в дистрибутивах на базе Линукс не нужно инициализировать накопители. После создания и подключения диска к виртуальной машине, остается проверить, все ли сделано правильно. Это были распространенные и наиболее удобные варианты увеличения размера диска виртуальных машин в ВиртуалБокс. Не забывайте делать резервные копии важных ОС, если решили пользоваться утилитой VBoxManage, и следите за тем, чтобы на основном диске, откуда выделяется место для виртуального накопителя, было достаточно свободного места.Шаг 2 - Удалить мусор
Шаг 3 - Измените размер раздела на диске, чтобы заполнить свободное пространство
Шаг 4 - Фотографии кошек
Способ 1: Утилита VBoxManage
Использование VBoxManage в Windows
Использование VBoxManage в Linux
Способ 2: Создание второго виртуального накопителя
Создание дополнительного накопителя в VirtualBox
Подключение виртуального диска в Windows
Подключение виртуального диска в Linux