Как расширить диск ВМ
Расширение идёт в два шага: сначала увеличить сам виртуальный диск в Proxmox, потом раздел и файловую систему внутри машины. У контейнера шаг один — см. раздел Контейнер.
Шаг 1. Виртуальный диск в Proxmox
Машина → Hardware → выделите диск → Disk Action → Resize, в поле Size Increment (GiB) укажите, на сколько увеличить, например 10. Или в оболочке узла:
qm disk resize 100 scsi0 +10GЗдесь 100 — номер машины, scsi0 — имя диска из вкладки Hardware, +10G — прибавить 10 ГиБ. Диск расширяется и у работающей машины.
Уменьшить диск в Proxmox нельзя. Проверьте число перед нажатием. Перед изменением разделов внутри машины сделайте резервную копию или снимок: ошибка в номере диска или раздела может испортить данные.
Шаг 2. Раздел и файловая система внутри машины
В Linux внутри машины проверьте, что система видит новый размер:
lsblkДиск (например, sda) стал больше, а раздел на нём — прежнего размера. Дальше — по разметке: если под разделом в столбце TYPE стоит lvm, система лежит в LVM; если / в столбце MOUNTPOINTS стоит прямо у раздела (например, sda1), LVM нет.
Linux, система в LVMgrowpart, pvresize, lvextend
Пример для Ubuntu Server с разметкой по умолчанию: система лежит в LVM на последнем разделе sda3.
sudo growpart /dev/sda 3
sudo pvresize /dev/sda3
sudo lvextend -r -l +100%FREE /dev/ubuntu-vg/ubuntu-lvПо шагам: growpart (пакет cloud-guest-utils, в Ubuntu обычно уже есть) растягивает раздел 3 до конца диска — пробел между диском и номером обязателен; pvresize сообщает LVM, что раздел вырос; lvextend -r отдаёт тому всё свободное место и сразу расширяет файловую систему. Имена тома у вас могут быть другими — посмотрите их командой sudo lvs, а номер раздела — в выводе lsblk.
Linux без LVMgrowpart и файловая система
Растяните раздел командой growpart, как в ветке выше, но с номером своего раздела (для sda1 — sudo growpart /dev/sda 1), затем расширьте саму файловую систему:
| Файловая система | Команда |
|---|---|
| ext4 | sudo resize2fs /dev/sda1 (раздел — свой) |
| xfs | sudo xfs_growfs / |
Windows«Управление дисками»
После расширения откройте «Управление дисками» и выберите у раздела «Расширить том».
В Linux проверьте результат:
df -h /Контейнер
Для контейнера всё проще — один шаг: контейнер → Resources → Root Disk → Volume Action → Resize, или в оболочке узла:
pct resize 101 rootfs +5GФайловую систему контейнера Proxmox расширяет сам.
Подводные камни
- Раздел не последний. Если после системного раздела есть другой (например, swap),
growpartего не перепрыгнет. Проще всего — добавить машине второй диск и подключить его отдельно. - Тонкое хранилище. Расширение на LVM-Thin или ZFS не занимает место сразу, но обещает его машине. Следите, чтобы пул не переполнился — см. урок Хранилища.
- Снимки. На некоторых хранилищах размер диска с существующими снимками менять нельзя — удалите снимки или подождите с расширением.