Задача: увеличить размер системного раздела в виртуальной машине на Proxmox.
В первую очередь надо дать виртуальной машине право на этот дополнительный ресурс, если этого ещё не было сделано.
В ОС у меня была следующая ситуация с уже существующей разметкой и разделами:
Number Start End Size Type File system Flags 1 1049kB 41.9GB 41.9GB primary ext4 boot 2 41.9GB 42.9GB 1022MB extended 5 41.9GB 42.9GB 1022MB logical linux-swap(v1) swap
Поэтому, при попытке сделать всё в лоб через parted /dev/sda, мне выдало:
Error: Can't have overlapping partitions
Ошибка достаточно распространённая, отлично гуглится. И вполне понятно определяет проблему: свободное пространство для резайза находится после разделов 2 и 5.
В моём случае их можно удалить. И мой roudmap был такой. Отключаю файл подкачки, который находится на /dev/sda5:
swapoff -v /dev/sda5
В /etc/fstab удаляю (или комментирую строчку, где прописано монтирование swap. В моём варианте всё равно надо перезагружаться будет, так что я перезагружаюсь и поверяю, что выполненные действия ничего не поломали и система стартует.
Далее я подмонтировал через веб интерфейс Proxmox образ SystemRescue к виртуальной машине (можно скачать тут — https://sourceforge.net/projects/systemrescuecd/) , загрузился с него и сделал следующую работу.
Через fdisk удалил разделы 5 и 2 (смотри начала статьи моей разметки разделов на диске). (можно сделать через gdisk /dev/sda). Далее увеличил размер раздела 1:
parted /dev/sda print resizepart 1 y 100% quit
После чего перезагрузился в рабочую систему виртуальной машины и выполнил:
resize2fs /dev/sda1 Результат: resize2fs 1.47.0 (5-Feb-2023) Filesystem at /dev/sda1 is mounted on /; on-line resizing required old_desc_blocks = 5, new_desc_blocks = 7 The filesystem on /dev/sda1 is now 12975872 (4k) blocks long.
После через через df -h убедился, что раздел действительно был увеличен.
Все действия можно сделать и без перезагрузки в образ восстановления системы, но у меня в таком случае после перезагрузки основной ОС она не загрузилась.