Как увеличить размер диска виртуальной машины hyper v

Как увеличить/уменьшить размер виртуального диска Hyper-V?

Динамическое изменение размеров дисков виртуальных машин доступно, начиная с версии Hyper-V в Windows Server 2012 R2. Функция Online VHDX Resize позволяет вам увеличить или уменьшить размер vhdx диска виртуальной машины онлайн (без остановки ВМ). В этой статье мы рассмотрим, как увеличить или уменьшить (сжать) размер диска виртуальной машины в Hyper-V, запущенном в Windows 10 или Windows Server 2016 (инструкции применима для всех поддерживаемых версий Hyper-V, в том числе бесплатного Hyper-V Server).

Основные возможности и ограничений Online VHDX Resize в Hyper-V:

  • Вы можете изменить размер виртуального диска Hyper-V любого типа: фиксированного, динамического, и дифференциального.
  • Вы можете изменить размер VHDX диска (в том числе системного диска гостевой ОС) на-лету. Останавливать виртуальную машину не нужно;

Увеличиваем размер виртуальный VHDX диска в Hyper-V

Рассмотрим, как увеличить размер виртуального VHDX диска с помощью консоли Hyper-V Manager.

  1. В менеджере виртуальных машин Hyper-V выберите виртуальную машину, перейдите в ее настройки (Settings) -> SCSI Controller;
  2. Выберите нужный виртуальный диск и нажмите кнопку Edit;

Как сжать виртуальный VHDX диск в Hyper-V?

Рассмотрим теперь как уменьшить размер виртуального vhdx диска на Hyper-V.

    Перед тем как сжать виртуального диска из консоли Hyper-V, необходимо внутри гостевой ОС уменьшить размер логического раздела на диске, освободить часть места, преобразовав его в неразмеченную область. Для этого внутри гостевой ОС откройте диспетчер управления дисков, выберите нужный раздел и выберите пункт Shrink Volume (Сжать том);

Изменить размер виртуального диска Hyper-V с помощью PowerShell

Можно изменить размер VHDX диска с помощью PowerShell. Для этого используется командлет Resize-VHD (не путать с Resize-VirtualDisk , который относится к командлетам модуля управления дисками Storage).

Сначала нужно получить полный путь к VHDX диску виртуальной машины:

Get-VM -VMName fs01 | Select-Object VMId | Get-VHD

Здесь же можно увидеть реальный размер VHDX файла на диске (FileSize) и максимальный размер, который он может занять (Size).

MinimumSize – это минимальный размер VHDX диска, до которого можно уменьшить файл виртуального диска.

Чтобы увеличить размер VHDX диска нужно указать его новый размер:

Resize-VHD -Path ‘C:\VM\fs01\Virtual Hard Disks\fs01.vhdx’ -SizeBytes 50Gb

Можно сделать это удаленно через PowerShell Remoting. Подключитесь к виртуальной машины с помощью Invoke-Command или Enter-PSSession (по сети или через PowerShell Direct)
Enter-PSSession -ComputerName fs01
Получим информацию о том, на сколько можно расширить раздел и расширим его до максимального размера:
$MaxSize = (Get-PartitionSupportedSize -DriveLetter C).SizeMax
Resize-Partition -DriveLetter L -Size $MaxSize

Если нужно уменьшить размер виртуального диска до минимально-возможного, выполните:

Resize-VHD -Path ‘C:\VM\fs01\Virtual Hard Disks\fs01.vhdx’ -ToMinimumSize

Данная команда уменьшила максимальный размер VHDX файла на 6 Гб.

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

В процессе создания виртуальных машин Hyper-V на определенном этапе гипервизор предусматривает подключение виртуального жесткого диска. Если подключать новый жесткий диск, по умолчанию предлагается его создание с размером в 127 Гб. При выборе фиксированного диска объема в 127 гигабайт может быть много, если речь идет только о тестировании версий Windows. Другое дело – виртуальный жесткий диск динамического типа. Даже если виртуальная машина создается сугубо для исследовательских целей, можно не скупиться при определении объема динамического диска. Ведь последний занимает на физическом диске компьютера только то пространство, которое заполнено данными виртуальной машины. Но даже если изначально был создан виртуальный жесткий диск с малым объемом, а впоследствии остро встала необходимость в расширении пространства виртуальной машины, это решается очень просто. В арсенале Hyper-V имеется инструмент увеличения объема дисков виртуальных машин. И работает он, не причиняя вреда ни самой гостевой ОС, ни имеющимся в ней данным.

Как увеличить место на диске виртуальной машины Hyper-V – в этом вопросе детально разберемся ниже.

1. Увеличение объема диска виртуальной машины Hyper-V

Выключаем виртуальную машину, дисковое пространство которой нужно увеличить. В диспетчере Hyper-V выбираем ее, затем либо вызываем контекстное меню, либо используем панель инструментов справа, чтобы открыть «Параметры».

В окне параметров, во вкладке «Оборудование» увидим имеющийся жесткий диск виртуальной машины. В параметрах виртуальных машин поколения 2 диск будет находиться в числе SCSI-контроллеров, а в параметрах машин поколения 1 – в числе IDE-контроллеров. Делаем клик на жестком диске. Чтобы изменить диск, в частности, увеличить на нем место, жмем кнопку «Правка», которая расположена чуть ниже отображения пути к его VHDX- или VHD-файлу.

Жмем «Далее» в окне мастера изменения диска.

Выбор действия в нашем случае – последний пункт «Развернуть». Жмем «Далее».

В окне указания нового размера диска вписываем нужный показатель в гигабайтах. Жмем «Далее».

Возвратившись в окно параметров виртуальной машины, увидим проделанные с диском изменения. Жмем кнопку «Проверить». В отдельном окне свойств диска видим, что размер диска виртуальной машины увеличился.

Но это еще не все.

2. Распределение дискового пространства внутри гостевой ОС

Объем, на который увеличился диск виртуальной машины, внутри последней будет отображаться как нераспределенное дисковое пространство. Это пространство нужно упорядочить – либо приобщить к одному из имеющихся разделов, либо создать новый раздел диска. Для этих целей используем штатный инструмент гостевой Windows – утилиту управления дисками. В Windows 8.1 и 10 для быстрого запуска этой утилиты можно вызвать контекстное меню на кнопке «Пуск».

Универсальный способ запуска утилиты в более ранних версиях Windows – ввод команды «diskmgmt.msc» в поле службы «Выполнить» (вызывается клавишами Win+R).

В окне управления дисками увидим, собственно, то, о чем говорилось чуть выше – 50 Гб, на которые в нашем случае был увеличен диск виртуальной машины, является нераспределенным пространством.

Исправим это. Можем создать на базе этого объема новый раздел диска. Для этого на нераспределенном пространстве вызываем контекстное меню и выбираем «Создать простой том». Затем следуем пошаговому мастеру.

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

В нашем случае для появившихся лишних 50 Гб применим именно этот вариант. Следуем мастеру расширения тома.

В графе размера выделяемого пространства укажем весь объем в 50 Гб.

Все – в нашем случае несистемный раздел диска виртуальной машины получил весь объем, на который этот диск был увеличен.

Увеличить объем диска ext4 виртуальной машины Linux без потери данных на базе Hyper-V и KVM

В роли Hyper-V используется Windows 2012R2.

В роли KVM используется Ubuntu 14.04.1 и старше.

В роли Виртуальной машины используется Ubuntu 16.04.1.

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

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

a. В системе Linux это делается так

I. dd if=/img/образ-расширяемого-диска.qcow2 bs=8M conv=sync,noerror | gzip -c > /backup/img/образ-расширяемого-диска.qcow2-$(date «+%F»).gz

Данная команда выполняет по секторное копирование образа с текущей датой одновременно сжимая образ утилитой gzip

split -b 9000m /backup/img/образ-расширяемого-диска.qcow2-$(date «+%F»).gz /backup/img/образ-расширяемого-диска.qcow2-$(date «+%F»).gz.part

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

II. Или создать слепок диска

qemu-img snapshot -c

b. В системе Windows все достаточно просто

Открываем Диспетчер Hyper-V

I. Выбираем нужную виртуальную машину, нажимаем правой кнопкой мыши и выбираем пункт Контрольная точка (делается слепок виртуальной машины целиком)

II. Так же можно скопировать образ расширяемого диска в проводнике.

2. После того как сделали копию, приступаем к увеличению

a. В системе Linux используем команду qemu-img

qemu-img resize /img/образ-расширяемого-диска.qcow2 +20G (т.е. увеличить объем на 20Gb)

b. В системе Windows в меню справа выбираем изменить диск

I. Выбираем нужный нам образ.

II. В следующем меню выбираем пункт Развернуть.

III. На следующем этапе указываем полный размер образа (в Linux указывается на сколько увеличить, а в Windows указывается полный объем диска).

IV. Нажимаем Готово.

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

После того как загрузится система, выполняем команду

parted /dev/sdb (sdb диск который мы увеличиваем)

в консоле parted выводим командой print на экран наши разделы диска

Размер диска увеличился на 10GB (Диск /dev/sdb: 75.2GB)

Раздел ранее размеченного диска занимает 64.0GB primary ext4

resizepart 1 (1 — раздел который мы увеличиваем)

На вопрос где конец разделе указываем 75.2GB и нажимаем enter

Еще раз вводим команду print, чтобы убедится, что наш раздел увеличился


Если все в порядке нажимаем q и enter для выхода из parted

4. Запускаем утилиту e2fsck -f /dev/sdb1

5. Дальше нужно выполнить команду resize2fs /dev/sdb1 (без этого пункта система будет выдавать старую информацию о разделе)

6. Желательно после разметки проверить диск на ошибки

fsck.ext4 /dev/sdb1


7. Завершаем работу систему LiveCD

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

Как увеличить диск Hyper V

01 сентября 2019

Увеличить диск Hyper V можно через графический интерфейс и Powershell. После расширения диска в Hyper V нужно расширить жесткий диск в самой операционной системе. Мы это продемонстрируем на примере Windows

У коллег случались проблемы при расширении дисков в версиях Windwos Server 2012 и одна из рекомендаций делать расширение на выключенной машине. Проблемы не в потере данных, а в зависании виртуальной машины. Сам я с этим не сталкивался.

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

Теперь нужно зайти в раздел с виртуальными дисками (1) и нажать кнопку редактирования или Edit (2). У меня один диск, но у вас может быть больше:

Открытое окно соответствует второму варианту выполнения, но в нашем случае диск уже выбран. Нажимаем «Далее»:

Далее нам нужно выбрать «Расширить» или «Expand» и нажать «Далее»:

В указанном окне пишем новый размер диска, а не количество памяти, которые хотим прибавить. Я увеличил на 2 Гб:

В финальном окне проверяем правильность настроек и подтверждаем расширение диска в Hyper V:

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

В случае Windows нам нужно открыть Disk Management или Управление дисками:

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

В стартовом окне нажимаем «Далее» и увидим окно, где уже выбран весь возможный размер для расширения раздела жесткого диска Hyper V. Мы можем уменьшить или увеличить размер при необходимости:

В финальном окне подтверждаем операцию и видим, что диск увеличен.

Увеличение диска Hyper V в Powershell

Перед тем как увеличить размер диска Hyper V получим имя виртуальной машины через:

Для расширения диска нужно знать полный путь до его расположения. Мы указываем новый размер всего диска, а не на сколько планируем увеличить. Сам размер может быть в мегабайтах MB, гигабайтах GB, терабайтах TB и так далее:

Если при расширении диска Hyper V вы укажете размер меньше возможного, то получите ошибку:

Resize-VHD : Failed to resize the virtual disk.

Теперь включим виртуалку:

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

Либо выполнять дальнейшие действия с виртуальной машины. Теперь расширим диск внутри ОС. Этой командой мы получим информацию насколько возможно увеличить раздел ‘С’:

Командой ниже увеличиваем раздел до максимального. Указанное число соответствует значению SizeMax из предыдущего командлета:

Вместо значения Size допустимо указать и значение такого типа (900GB), то есть аналогично ситуации с VHD дисками.

Читайте также:  Средства для обработки порогов автомобиля снаружи от коррозии
Оцените статью