Для сжатия раздела Linux можно использовать любой обычный инструмент, например gparted.
В случае, если в данный момент раздел используется LVM, необходимо выполнить некоторые предыдущие шаги.
Предполагаем, что на / dev / sda2 есть раздел 60Gb, и мы хотим сжать его 6Gb:
1. Определите доступное пространство (если есть) и имя компонентов LVM
// получить имя физического тома и доступное пространство # pvs PV VG Fmt Attr PSize PFree / dev / sda2 vg_main lvm2 a - 60,00 г 0,00 г // получить имена логических томов # lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert lv_root vg_main -wi-ao-- 56.03g lv_swap vg_main -wi-ao-- 3.97g
2. Измените размер любых логических томов из раздела
// reduce 6G from lv_root # lvresize --verbose --resizefs -L -6G /dev/vg_main/lv_root
3. Соедините содержимое логических томов вместе
Предыдущая команда оставит свободное пространство между lv_root и lv_swap:
# pvs -v --segments Scanning for physical volume names PV VG Fmt Attr PSize PFree Start SSize LV Start Type PE Ranges /dev/sda2 vg_main lvm2 a-- 60.00g 6.03g 0 12800 lv_root 0 linear /dev/sda2:0-12799 /dev/sda2 vg_main lvm2 a-- 60.00g 6.03g 12800 1543 0 free /dev/sda2 vg_main lvm2 a-- 60.00g 6.03g 14343 1016 lv_swap 0 linear /dev/sda2:14343-15358
Чтобы удалить этот пробел, выполните:
// the range 14343-15358 is obtained from the previous command # pvmove --alloc anywhere /dev/sda2:14343-15358
4. Измените размер физического объема диска
# pvresize --setphysicalvolumesize 50 /dev/sda2
Если приведенная выше команда вернет ошибку вот так:
/dev/sda5: cannot resize to xxxxx extents as later ones are allocated.
то это означает, что между логическими томами есть пробел (шаг шага 4) или новый размер слишком мал для текущих логических томов (укажите больший размер или еще больше уменьшите логические тома)
5. Измените размер раздела
Теперь раздел готов к изменению размера с помощью gparted или аналогичного