- OSBoy notes.
- Изменение размера виртуального диска в VirtualBox
- Увеличение размера
- Уменьшение размера
- Уменьшаем размер динамичиских виртуальных дисков VirtualBox
- Как уменьшить размер диска виртуальной машины virtualbox
- RTFM.WIKI
- Инструменты пользователя
- Инструменты сайта
- Боковая панель
- Навигация
- Линкшэринг
- ALARM!
- Добавить новую страницу
- Реклама
- Содержание
- VirtualBox: изменение размера диска
- Как увеличить/уменьшить размер диска
- Как сжать VDI диск
- Изменение размера виртуального диска в Oracle VirtualBox
- Увеличение размера
- Уменьшение размера
OSBoy notes.
Записки обо всём.
Изменение размера виртуального диска в VirtualBox
Увеличение размера
Предположим, что нам стало не хватать дискового пространства на виртуальной машине. Можно, конечно, добавать ещё один виртуальный диск, но в Oracle VirtualBox, также, есть возможность увеличить уже имеющийся виртуальный диск.
Для увеличения размера виртуального диска, сначала удаляем все снимки состояния данной ВМ. Затем воспользуемся утилитой VBoxManage, идущей в комплекте с Virtualbox. Открываем командную строку и выполняем в ней команду, подобную этой:
«C:\Program Files\Oracle\VirtualBox\VBoxManage.exe» modifyhd «E:\VirtualBox\VMs\Debian\Debian_disk1.vdi» —resize 102400
- C:\Program Files\Oracle\VirtualBox\ — путь до каталога с установленной VirtualBox (у вас может отличаться);
- E:\VirtualBox\VMs\Debian\Debian_disk1.vdi — путь до образа виртуального диска, размер которого мы изменяем;
- 102400 — размер в мегабайтах, до которого мы хотим увеличить наш виртуальный диск (в данном случае — 100ГБ).
После выполнения данной команды, запускаем виртуальную машину и можем видеть, что на виртуальном диске появилось нераспределённое пространство, на которое теперь можно растянуть нужные разделы, средствами гостевой ОС, либо загрузившись с LiveCD (например, можно воспользоваться diskmgmt.msc или Acronis Disk Director в Windows, GParted в Linux, и т.п. утилитами ).
Однако, опция —resize работает только для увеличения размера диска. Для уменьшения — алгоритм будет другой.
Уменьшение размера
В VirtualBox очень удобно использовать динамически расширяющиеся жёсткие диски, которые не резервируют сразу всё отведённое им место на хост-машине, а расширяются по мере необходимости. Но при всём их удобстве, есть у них и недостаток: если с такого диска удалить файлы, то размер его образа на хост машине не уменьшится, а останется прежним.
Чтобы cжать образ этого диска до минимальных размеров, для начала нужно очистить его неразмеченные области (от остатков удалённых файлов). Для этого, в гостевой ОС нужно воспользоваться специальной утилитой, обнуляющей свободные секторы.
В Windows — можно использовать утилиту Sdelete. Утилита не требует установки, ее достаточно распаковать и запустить из командной строки команду:
В Linux — есть утилита zerofree.
В моём примере на ВМ установлен Debian. Устанавливаем zerofree через систему управления пакетами (если ещё не установлена):
# apt install zerofree
Для очистки раздела, его нужно отмонтировать, либо перемонтировать в режиме read-only (только чтение), иначе zerofree выдаст ошибку. Если требуется перемонтировать коренной раздел, то сначала нужно перейти в однопользовательский режим:
В данном случае будем чистить раздел /dev/sda3 , который у меня смонтирован в /home — на нём хранятся все пользовательские файлы:
# mount -o remount,ro -t ext4 /dev/sda3
Запускаем zerofree для очистки нужного раздела:
# zerofree -v /dev/sda3
Для выхода из однопользовательского режима выключаем ВМ:
После очистки диска и выключения ВМ, удаляем все снимки состояния данной ВМ, запускаем консоль и выполняем команду:
«C:\Program Files\Oracle\VirtualBox\VBoxManage.exe» modifyhd «E:\VirtualBox\VMs\Debian\Debian_disk1.vdi» —compact
Эта команда сожмёт образ виртуального диска до минимального размера.
Следует отметить, что в интернете есть информация, что можно увеличить размер только ДИНАМИЧЕСКИХ виртуальных дисков форматов VDI или VHD, уменьшить — только VDI. Лично я использую динамические диски в формате VDI (родной формат VirtualBox), с которым всё вышеописанное точно работает. С другими форматами не эксперементировал.
Уменьшаем размер динамичиских виртуальных дисков VirtualBox
В своей работе постоянно использую VirtualBox в котором живет Debian и выполняет роль веб-сервера. Располагается Debian на динамическом виртуальном диски .vdi, который ограничен размеров в 8 ГБ, но такой размер установлен на всякий случай, а так ОС и файлы занимает 3ГБ. Со временем файлы динамических виртуальных дисков разрастаются и съедают свой лимит. Если мы будем удалять данные в гостевой ОС, то это не уменьшает размер динамического диска. Я сильно ограничен в свободном пространстве из-за SSD на 128ГБ, поэтому держать виртуальные диски по 8ГБ нет возможности.
Удобного и автоматического способа уменьшения размера нет, но всегда есть запасной план. Можно удалить пустые блоки на виртуальном диске которые заполнены нулями. Удаляя файлы в гостевой ОС, блоки на диске обрастают «мусором», поэтому все это нужно заполнить нулями.
Для гостевых машин с Windows данную проблему не решал, но есть утилита https://technet.microsoft.com/ru-ru/sysinternals/bb897443.aspx
Для гостевых Linux машин все проще. Создаем в гостевой машине файл размером в пустое пространство, а потом удаляем его:
Теперь выключаем вирутальну машину и открываем консоль на хосте, где переходим в папку с нужным виртуальным диском и выполняем команду:
Важно:
- Делайте резервную копию виртуальной машины перед данными действиями.
- Убедитесь, что у вас достаточно свободного места на физическом диске для максимального увеличения размера виртуального диска.
Как уменьшить размер диска виртуальной машины virtualbox
Понадобилось мне сегодня для одного из виртуальных серверов, с которыми я работаю для тестирования серверного ПО, несколько увеличить размер основного жесткого диска. Иногда так бывает — сначала ты планируешь реализовать одно, а потом, уже во время работы, тебя посещает идея о том, что это можно сделать лучше и интереснее, только вот жесткий диск-то уже создан и его прежний размер уже не соответствует новым реалиям. Так случилось и сегодня. У меня есть шаблон веб-сервера на Gentoo, но поскольку там все по-минимуму, то и размер основного системного диска минимален.
Раньше я уже многократно сталкивался с этой задачей, но запамятовал четкий порядок действий. Решил поискать его в Интернете и пожалел. Чего только не советуют на форумах и в блогах, я просто был в шоке. Я приведу парочку советов здесь чисто юмора ради.
Нужно установить gparted, с помощью которого стрелочкой растянуть нужный раздел на свободное пространство и задача будет решена. Если нет графического окружения, то нужно установить базовое.
Потребуется создать новый виртуальный жесткий диск с фиксированным размером, привязать его к той же виртуальной машине, что и основной, после чего запустить машину и все с основного диска переписать plain-способом на новый при помощи dd.
Достаточно будет подключить к компьютеру флешку и пробросить ее на виртуальную машину, после чего перенести на флешку в виде архива (stage4) содержимое основного диска. Перезагрузить виртуальную машину, загрузиться с установочного ISO-образа, отформатировать раздел с нужным размером, потом скопировать архив с флешки обратно на отформатированный раздел.
Я, честно признаться, не понимаю прикола в том, чтобы переносить или копировать куда-либо данные с жесткого диска. Быть может, мой виртуальный диск имеет объем в 2Тб. Весело будет такой архив гонять по сети, за флешки я вообще молчу, тут уже надо брать выше — съемный HDD. Непременно твердотельный, ибо иначе увеличение размера виртуального жесткого диска может занять неделю, а то и больше (особенно, с использованием USB 2.0).
А если быть немножко серьезнее, то меня немного расстраивает нежелание современных системных администраторов изучать какие-то там справки к системным утилитам. Давайте рассмотрим процесс увеличения объема виртуального жесткого диска по порядку, чтобы всем сразу стало понятно, насколько это просто.
Непосредственно предельный размер виртуального жесткого диска увеличивается в «Менеджере виртуальных носителей» VirtualBox. Для того, чтобы изменить этот параметр, даже не потребуется отключать виртуальную машину — можно все делать прямо при включенной.
Перезагрузку на следующем шаге я выполнил, но, скажу честно, забыл посмотреть, можно ли без нее, поэтому рекомендую попробовать. Для этого после того, как в VirtualBox был изменен размер виртуального носителя, выполните на гостевой машине следующую команду:
Она возвратит реальные объемы блочных устройств. Если вы по-прежнему видите старый объем — стоит отправить гостевую машину в перезагрузку. Как только вы увидите новый размер, переходим ко второму шагу — распределению свободного пространства между разделами.
Тут стоит отметить один момент: добавленное пространство будет в конце диска. Как правило, в конце диска у меня swap-раздел, а вот основной — достаточно редко. Так вот прежде, чем вы сможете при таком раскладе увеличить размер основного раздела, вам придется удалить swap.
Итак, запускаем cfdisk. Если без аргументов — он покажет первый виртуальный жесткий диск. Если у вас их несколько, нужно передать аргументом путь к тому диску, который нужно править. Например:
В таблице сразу видим свободное пространство и те разделы, которые стоят между тем, что нам потребуется увеличить, и свободным местом. Как я уже говорил, у меня между ними оказался swap, который я успешно удалил, после чего изменил размер нужного мне раздела, оставив свободное место под swap, который после этого снова создал в прежнем размере. Когда все будет готово, не забудьте выбрать write и ответить ему «yes» на заданный вопрос.
Все, теперь неразмеченного пространства у нас нет, все перешло под существующие разделы. Но есть одно «но». Помните, что происходит после разметки дисков при установке Gentoo, к примеру? Да, создание файловых систем. В данный момент, файловая система увеличенного нами раздела еще не подозревает о том, что произошли какие-то пертурбации. На форуме ради ее уведомления советовали собрать графическую среду и установить gparted, но мы сделаем это проще:
Где «/dev/sdb3» — раздел, который мы увеличивали. Теперь, сразу после этой операции, вы сможете выполнить df -h и увидеть новый размер раздела.
RTFM.WIKI
Ordnung muß sein. Ordnung über alles (18+)
Инструменты пользователя
Инструменты сайта
Боковая панель
Навигация
Линкшэринг
socialite Display:icon facebook twitter
ALARM!
Добавить новую страницу
Реклама
Содержание
VirtualBox: изменение размера диска
Рано или поздно пользователи VirtualBox сталкиваются с тем, что диск (динамический) гостевой системы стал занимать много места на хост системе.
Диск в гостевой системе 25 ГБ. Занято в Windows только 13 ГБ, но на хост системе диск занимает почти 19 ГБ.
Вывод команды VBoxManage
Для ещё большей наглядности скриншот
Диск в менеджере носителей
Как увеличить/уменьшить размер диска
Для изменения размера диска нужно запустить vboxmanage с опцией modifymedium . В прошлых релизах VirtualBox опция называлась modifyhd или modifyvdi .
For compatibility with earlier versions of VirtualBox, the «modifyvdi» and «modifyhd» commands are also supported and mapped internally to the «modifymedium» command.
Для хост системы Mac/Linux
Для хост системы Windows
Увеличим диск с 25 ГБ до 30 ГБ. Размер указывается в МБ. 30 ГБ = 30*1024 = 30720.
Далее остаётся только расширить диск внутри гостевой ОС
Как сжать VDI диск
Шаг 1. Выполняем дефрагментацию диска (зачем?!) в гостевой системе (только для Windows).
Шаг 2. Заполняем диск нулями
Для гостевой системы Windows
Для Windows есть специальная утилита SDelete.
Для гостевой системы Linux
Для Linux вариантов несколько:
Или через утилиту zerofree
Или через утилиту sfill (входит в состав пакета secure-delete ; только для Debian)
Шаг 3. Выключаем гостевую машину.
Шаг 4. Запускаем modifymedium с опцией compact .
Для хост системы с Mac
Для хост системы с Linux
Для хост системы с Windows
Изменение размера виртуального диска в Oracle 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-дисков. Все остальные варианты не поддерживаются, по крайней мере на данный момент. И еще, перед изменением размера диска не поленитесь сделать его резервную копию, на всякий случай 🙂