Напишу небольшую заметку о том, как расширить корневой раздел на Ubuntu 22.04. Уже несколько раз мне приходилось выполнять эту операцию – как на серверном варианте, так и на десктопном. А это уже повод для того, чтобы написать хотя бы краткую заметку.
Описание окружения
Я проверял этот метод для операционной системы Ubuntu 22.04. В серверном и десктоплном исполнении. Правда, все системы, на которых я выполнял эту операцию, были виртуальными машина на Proxmox или VMware.
В чем суть. При первоначальной установки операционной системы для корневой файловой системы был выдан какой-то небольшой объем. По мере работы операционной системы свободной место закончилось. Необходимо увеличить размер диска, а затем увеличить размер файловой системы.
Примеры ниже приведены для конфигурации дисков с использованием LVM и GPT.
Пример исходной конфигурации дисков:


roman@test1:~$ sudo pvs
[sudo] password for roman:
PV VG Fmt Attr PSize PFree
/dev/sda3 ubuntu-vg lvm2 a-- <38.00g 0
roman@test1:~$ sudo vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu-vg 1 1 0 wz--n- <38.00g 0
roman@test1:~$ sudo lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
ubuntu-lv ubuntu-vg -wi-ao---- <38.00g
roman@test1:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 792M 1.3M 791M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 38G 6.8G 29G 20% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda2 2.0G 130M 1.7G 8% /boot
tmpfs 792M 4.0K 792M 1% /run/user/1000
roman@test1:~$
Как расширить корневой раздел на Ubuntu
Как я выполнял расширение диски и размера файловой системы:
1. Сначала я увеличивал размер диска непосредственно в гипервизоре. Эта операция выполняется на каждом гипервизоре по разному. Обратитесь к руководству по вашему гипервизору для уточнения деталей.
2. Теперь увеличим размер раздела с LVM. Перейдем в редактирования таблицы разделов:
sudo parted /dev/sda
, где /dev/sda – это имя вашего диска.
3. Определим номер раздела, для которого нужно увеличить размер:

(parted) print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 64.4GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 2150MB 2147MB ext4
3 2150MB 42.9GB 40.8GB
4. Увеличим раздел раздела с корневой файловой системой и выйдем из режима редактирования таблицы разделов:

(parted) resizepart 3
End? [42.9GB]? 60GB
(parted) print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 64.4GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 2150MB 2147MB ext4
3 2150MB 60.0GB 57.9GB
(parted) quit
5. Теперь изменю размеры физического диска в LVM томе:
sudo pvresize /dev/sda3
roman@test1:~$ sudo pvresize /dev/sda3
Physical volume "/dev/sda3" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
roman@test1:~$

6. Теперь я могу увидеть дополнительной свободное место в группе томов LVM:
sudo vgdisplay
roman@test1:~$ sudo vgdisplay
--- Volume group ---
VG Name ubuntu-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size <53.88 GiB
PE Size 4.00 MiB
Total PE 13792
Alloc PE / Size 9727 / <38.00 GiB
Free PE / Size 4065 / <15.88 GiB
VG UUID 7Sokt1-ZWKM-jmXy-KPDo-4BUe-jjQS-FNxqFA
roman@test1:~$

7. Расширим логический том:
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
roman@test1:~$ sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
Size of logical volume ubuntu-vg/ubuntu-lv changed from <38.00 GiB (9727 extents) to <53.88 GiB (13792 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
roman@test1:~$

8. Заключительным шагом я выполню расширение размера файловой системы:
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
roman@test1:~$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required
old_desc_blocks = 5, new_desc_blocks = 7
The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 14123008 (4k) blocks long.
roman@test1:~$

9. Расширение корневого раздела завершено. Теперь вы можете увидеть тот дополнительный объем свободного места, который вы добавляли для корневого раздела:
df -h
roman@test1:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 792M 1.3M 791M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 53G 7.0G 44G 14% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda2 2.0G 130M 1.7G 8% /boot
tmpfs 792M 4.0K 792M 1% /run/user/1000
roman@test1:~$

Расширение корневого раздела завершено. Обратите внимание, что перезагрузка потребовалась только в одном случае – когда мы с вами физически увеличивали размер диска в гипервизоре. Все остальные операции выполняются без перезагрузки операционной системы.
Как расширить корневой раздел на Ubuntu 22.04: 2 комментария
Команда pvresize не срабатывает – “Command failed with status code 5”. В чем может быть причина?
Сложно сказать точно. Возможно, что диск у вас используется. Если диск системный, то его необходимо редактировать с live дистрибутива. Попробуйте еще с -vvvv запустить команду – это расширенный режим логирования. Возможно, что в расширенном выводе будет указана более явная причина.