Как расширить диск виртуальной машины в VMware?
21.02.2023
itpro
PowerShell, VMware
комментариев 14
Основное преимущество виртуальных машин в том, что вы можете гибко выделять дополнительные ресурсы ВМ, если они ей нужны. Если на виртуальном диске закончилось свободное место, вы можете легко и быстро расширить его. В этой статье мы рассмотрим, как изменить размер диска виртуальной машины в VMware ESXi и затем расширить раздел в гостевой ОС Windows или Ubuntu без остановки или перезагрузки виртуальной машины.
Есть несколько ограничений, которые нужно учитывать, если вы хотите увеличить размер диска виртуальной машины VMware:
- Если у ВМ есть сохраненные снимки (снапшоты), вы не сможете расширить диск. Все снапшоты придется удалить;
Task name Reconfigure virtual machine The attempted operation cannot be performed in the current state (Powered on).
Процесс расширения диска виртуальной машины выполняется в два этапа:
Увеличить размер виртуального диска (VMDK) в VMware
Допустим, у вас есть виртуальная машина, которой презентован один виртуальный жесткий диск (vmdk) размером 40 Гб. Вы хотите увеличить данный виртуальный диск до 50 Гб.
- Подключитесь к своему серверу vCenter или отдельному серверу ESXi с помощью vSphere Client;
- Найдите виртуальную машину и откройте ее настройки (Actions ->Edit Settings);
- Найдите виртуальный диск, который нужно расширить. В этом примере у ВМ есть только один Hard Disk 1 размером 40 Гб. Укажите новый размер диска в этом поле и сохраните настройки. Обратите внимание, что максимальный размер диска, доступный для данного хранилища (VMFS, NFS, vSAN) указан в поле Maximum size;
Также вы можете расширить VMDK диск виртуальной машины с помощью командлетов из модуля VMware PowerCLI Установите модуль PowerCLI на свой компьютер (можно установить модуль PowerShell даже на Linux хост) и подключитесь к vCenter/ESXi:
Чтобы расширить диск ВМ, выполните команду:
Get-HardDisk «VMTest1» | where | Set-HardDisk -CapacityGB 50 -ResizeGuestPartition -Confirm:$false
Вы можете воспользоваться командлетом Invoke-VMScript для запуска команд расширения раздела в гостевой ОС:
Invoke-VMScript -vm VMTest1 -ScriptText «echo select vol c > c:diskpart.txt && echo extend >> c:diskpart.txt && diskpart.exe /s c:diskpart.txt» -GuestUser $guestUser -GuestPassword $guestPass -ScriptType BAT
Не забудьте завершить сессию.
После того, как вы увеличили виртуальный диска в консоли VMware, нужно расширить раздел в гостевой операционной системе.
Расширить диск в виртуальной машине Windows
Чтобы гостевая Windows увидела дополнительно пространство, нужно запустить консоль управления дисками (Computer Management-> Storage-> Disk Management) и выполнить команду Rescan Disk.
Затем выберите раздел, который нужно увеличить и выберите Extend Volume;
Укажите на сколько Мб нужно расширить выбранный раздел Windows за счет неразмеченного Unallocated пространства (в поле Select the amount of space in MB).
Нажмите Next -> Finish и проверьте, диск C был успешно расширен.
При расширении системного раздела с буквой диска C может оказаться, что после него находится том восстановления Windows Recovery Environment, а не неразмеченная область. В этом случае опция расширения тома Extend Volume будет неактивна.
Вы не сможете расширить ваш диск C:, пока не удалите или не переместите раздел Recovery в конец диска. Мы описали процедуру в статье не активен пункт Расширить том в Windows.
Windows XP и Windows Server 2003 не поддерживают онлайн расширение системного тома C:. Для увеличения системного раздела без перезагрузки можно воспользоваться утилитой ExtPart от Dell.
Чтобы расширить системный дисковый раздел в Windows 2003/XP скопируйте утилиту в гостевую ОС и запустите ее с параметрами:
extpart.exe c: 1020
, где c: — имя раздела который необходимо расширить, 1020 – размер (в Мб), на который нужно расширить диск
Скачать утилиту ExtPart можно здесь (40 Кб).
Также вы можете расширить раздел на диске ВМ в офлайн режиме другими способами:
Расширить диск виртуальной машины Linux
Теперь рассмотрим, как расширить диск если в виртуальной машине установлена гостевая ОС семейства Linux.
В первую очередь, нужно чтобы Linux увидела новое место на диске. Чтобы выполнить рескан, выполните команду:
Чтобы показать доступное место на диске, воспользуйтесь утилитой:
В данном примере вижно, что на диске /dev/sda есть свободно место размером 2 Гб. Выберите раздел, который нужно расширить (/dev/sda3 в этом примере) и выберите в меню Resize.
Чтобы применить изменена к разделу, выберите Write.
В моем случае мне нужно расширить диск на виртуальной машине с Ubuntu 22.04 LTS. По умолчанию приустановке в этой версии Ubuntu используются тома LVM:
Подробнее об увеличении раздела диска в Ubuntu Linux.
Для расширения тома на LVM нужно увеличить PV (Physical Volume):
$ sudo pvresize /dev/sda3
После этого можно расширить логической том (используем все доступно свободное пространство):
$ sudo lvextend -l +100%FREE /dev/mapper/ubuntu—vg-ubuntu—lv
Теперь нужно расширить файловую систему:
$ sudo resize2fs /dev/mapper/ubuntu—vg-ubuntu—lv
Проверьте свободное место в Linux с помощью команды:
Выведите сколько неразмеченного пространства свободно на диске:
Видно, что Free Space = 2149MB
Чтобы увеличить раздел /dev/sda3, выполните:
Укажите новый размер раздела (в данном примере нужно указать размер End из блока Free Space)
Завершите сеанс parted:
Осталось растянуть файловую систему (для файловых систем ext4, 3 и 2):
$ sudo resize2fs /dev/sda3
Итак, в данной статье мы разобрались в способах расширения виртуального жесткого диска в среде VMWare vSphere с гостевой ОС Windows и Linux. В отдельно статье мы описали, как уменьшить размер виртуального диска в VMware.
Предыдущая статья Следующая статья
Читайте далее в разделе PowerShell VMware
Установка и настройка сервера обновлений WSUS на Windows Server
Настройка NIC Teaming в Windows Server 2019/2016 и Windows 10
Как включить и настроить удаленный рабочий стол (RDP) в Windows?
Запуск VPN соединения до входа в Windows
Источник https://winitpro.ru/index.php/2012/11/21/kak-rasshirit-disk-virtualnoj-mashiny-v-vmware/