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

Posted by

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

Вот только заготовки виртуальных машин я порой создаю не задумавшись о требования которые накладывают мои задумки, вот и сейчас мне нужно чтобы на виртуальной системе Windows Server 2008 R2 Enterprise системный диск был равен более 25Gb, а лучше чтобы он равнялся 50Gb. Формат который я задавал для диска — это vdi. Виртуальный раз VM 25Gb

 

ekzorchik@dv6:~$ ls -lh VirtualBox\ VMs/Server2008R2№1/

итого 6,5G

-rw——- 1 ekzorchik ekzorchik 2,0M окт. 5 20:41 BackupAD.vdi

drwx—— 2 ekzorchik ekzorchik 4,0K окт. 21 19:31 Logs

-rw——- 1 ekzorchik ekzorchik 49K окт. 21 19:34 Server2008R2№1.vbox

-rw——- 1 ekzorchik ekzorchik 48K окт. 21 19:31 Server2008R2№1.vbox-prev

-rw——- 1 ekzorchik ekzorchik 6,5G авг. 19 23:43 Server2008R2№1.vdi

drwx—— 2 ekzorchik ekzorchik 4,0K окт. 21 19:30 Snapshots

А внутри системы сейчас свободно: 8.25Gbмне нужно больше, как этого добиться?

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

Выключаем виртуальную систему:

ekzorchik@dv6:~$ vboxmanage controlvm Server2008R2№1 poweroff

0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%

ekzorchik@dv6:~$ cd VirtualBox\ Vms/Server2008R2№1/

Далее указываем в MB размер на который хотим расширить диск с уже имеющегося объема на требуемый (т. к. у меня сейчас 25Gb, а нужно 50Gb, то нужно: (50 — 25) * 1024 = 25600Mb, тот объем который будем указывать ниже):

ekzorchik@dv6:~/VirtualBox VMs/Server2008R2№1$ vboxmanage modifyhd Server2008R2№1.vdi --resize 25600

0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%

После включив VM проверил, что диск как был 25Gb так и остался и ни какого намека на его увеличение нет.

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

ekzorchik@dv6:~/VirtualBox VMs/Server2008R2№1$ vboxmanage controlvm Server2008R2№1 poweroff

Вообще-то моя формула по которой я расширяю диск не правильна, как оказалось выше, нужно же просто сразу указать размер диска который мне нужен, а именно 50Gb, потому команда будет следующей:

ekzorchik@dv6:~/VirtualBox VMs/Server2008R2№1$ vboxmanage modifyhd Server2008R2№1.vdi --resize 51200

0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%

Теперь смотря свойства виртуальной системы через окружение VirtualBOX наблюдаю — что виртуальный размер равен 50Gb

Виртуальный размер VM расширил до 50Gb

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

Загружаю VM с образа gparted

включаю ее:

ekzorchik@dv6:~/VirtualBox VMs/Server2008R2№1$ vboxmanage startvm Server2008R2№1

Waiting for VM «Server2008R2№1» to power on…

VM «Server2008R2№1» has been successfully started.

После того как изменения с контейнером виртуальной системы произведены сохраняем их и запускаем виртуальную систему:

Утилита GParted не видит место на которое я увеличил VDI диск

Но в очередной раз сталкиваюсь, что размер в 50Gb внутренности виртуальной системы не видят, как же добиться того, чтобы расширить задействованное место гостевой системы?

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

ekzorchik@dv6:~/VirtualBox VMs/Server2008R2№1$ vboxmanage controlvm Server2008R2№1 poweroff

Проделываю со всеми снапшотами:

ekzorchik@dv6:~/VirtualBox VMs/Server2008R2№1/Snapshots$ vboxmanage modifyhd \{2b10065a-5656-4ee0-9324-49e2babc5f51\}.vdi --resize 51200

0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%

Проделываю с основным диском виртуальной системы:

ekzorchik@dv6:~/VirtualBox VMs/Server2008R2№1$ vboxmanage modifyhd Server2008R2№1.vdi --resize 51200

0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%

Далее включаю VM.

После открываю оснастку управления дисками:

Start — Control Panel — Administrative Tools — Server Manager — Storage — Disk Management

перевожу текущий диск в динамический диск, для этого выделяю Disk 0 и через правый клик нахожу элемент меню «Convert to Dynamic Disk…»

Пробую сконвертировать жесткий диск в динамический

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

Снова гружусь с Gparted — Other modes of Gparted Live — Gparted Live (To RAM. Boot media can be removed later) — Don’t touch keymap — 33 и нажимаю далее клавишу Enter — после запустив предварительно консоль командной строки:

LiveCD с утилитой Gparted на борту через консоль видит весь диск целиком

Отлично теперь на рабочем столе запускаю приложение gparted и вот что самое удивительно я уже вижу не размеченное пространство в размере тех самых добавленных 25Gb

И чудесным образом Gparted увидела еще 25Gb - Будем значит расширять раздел

Отлично же, теперь на разделе /dev/sda3 через правый клик мышью вызываю пункт Resize/Move и посредством мастера текущую область расширяю взявшись левой (зажатой кнопкой) за правый край двигая в самый конец в итоге у меня получается следующее. Далее нажимаю Resize/Move

Расширяю раздел

После диски виртуальной системы примут следующий вид — и для активации внесенных изменений нажимаю «Apply»

Сохраняю внесенные изменения

Но может случится что на этапе преобразования/расширения будут ошибки — у меня были, из этого далее я попробовал создать просто раздел на выделенной увеличенной части в 25Gb — изменения применились, но вот когда я запустил VM на загрузку, меня ожидало удивление — синий экран смерти и строки белого цвета его сопровождающее, а после меню на черном фоне:

  • Launch Startup Repair (recommended)
  • Start Windows Normally (при загрузке синий экран)

Выбираю первый пункт:

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

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

И о чудо, открыв оснастку управления дисками обнаружил, что система увидела дополнительное место прибавленное к основному диску:

LiveCD с утилитой GParted я убил раздел, пришлось откатываться на снапшот

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

Левой кнопкой мыши на логическом диске C: через правый клик вызываю элемент: Extend Volume — Next — указываю размер на который я хочу расширить:

Select the amount of space in MB: 25599 (оставляю данное значение по умолчанию выбранное системой), Next — Finish

В конечном итоге получаю то к чему так стремился, размер логического диска С: стал равен 49.8Gb, а свободно стало — 40,4Gb — результат достигнут.

Логический диск С успешно расширен

Теперь подведу итог действий на будущее применительно к гостевой системе Windows:

  • выключить виртуальную машину
  • если есть снапшоты произвести resize для них
  • после сделать resize для диска самой виртуальной системы
  • включить виртуальную машину
  • и через диспетчер дисков произвести расширение тома

вот и все.

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

Leave a Reply

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

2 + 4 =