Расширение диска LVM (GPT)

Рассмотрим расширение диска на примере для ОС Linux based с GPT.

Какие преимущества GPT перед MBR?

  • GPT позволяет использовать более четырех разделов, а если точнее - неограниченное количество разделов
  • GPT не ограничивает раздел 2 ТБ, а если точно, то можно создать диск размером 10 093 173 14 терабайт
  • GPT хранил копию разделе и загрузочных данных, MBR хранит информацию о разделе в одном месте - в главной загрузочной записи
  • GPT проверяет контрольную сумму загрузчика на повреждение, в случае несовпадения, самостоятельно восстановит эти данные из других областей диска

Расширение диска в CentOS и Rocky Linux

Перейдите в настройки виртуальной машины и там, во вкладке hard disk, нажмите "Edit", предварительно выбрав диск, размер которого собираетесь изменить. Затем измените объемы на необходимые и сохраните изменения.

Подключение образа с LiveCD

В нашем облаке используются образы, на которых по-умолчанию настроена разметка GPT. По этой причине, большую часть действий нужно делать из LiveCD системы или любой другой, у которой есть доступ к терминалу без установки на диск. Мы будем использовать Arch Linux ISO, но вам подойдет любая система LiveCD. Если вы смонтировали образ, но он не загружается, то включите функцию "Enter BIOS Setup" в "Details" -> "General" -> "Edit" и выберите там CD диск.

Подключаемся к машине. В первую очередь проверьте, изменился ли объем диска. Для этого используйте команду:

sudo fdisk -l

На наших образах используется GPT разметка. Из-за этого следует использовать parted вместо fdisk для изменения разделов. Переходим к изменению диска, на котором установлена LVM, изменяем тип отображения (чтобы увидеть номера секторов вместо гигабайтов) и удаляем lvm раздел:

Создайте новый раздел: mkpart

  • Partition name - можете оставить пустым. Название раздела
  • File system type - оставьте по умолчанию. Позже изменим его
  • Start - Значение сектора, c которого начинается раздел
  • End - значение сектора, на котором заканчивается раздел. Введите -1 для выделения максимального пространства

Измените его тип на lvm: toggle

  • Partition number - Номер созданного раздела
  • Flag - lvm

Теперь нужно изменить размер физического раздела. Перезагружаемся в основную систему и смотрим размер диска:

sudo fdisk -l

Изменяем размер раздела:

sudo pvresize /dev/sda3

Сейчас нужно узнать как называется логический раздел, который необходимо увеличить:

sudo lvdisplay

В нашем примере был еще swap раздел, но его увеличивать не нужно.

Теперь увеличиваем размер логического тома на все оставшееся место следующей командой:

sudo lvextend -l +100%FREE /dev/rl/root

Снова выполняем lvdisplay и видим, что поле LV Size изменилось с 27 до 59 гибибайт

sudo lvdisplay

Для файловой системы xfs выполните следующую команду:

sudo xfs_growfs /dev/cs/root

Для других файловых систем (вроде ext4) используется утилита resize2fs:

sudo resize2fs /dev/cs/root

Затем проверьте, применились ли все изменения,  выполнив команду df -h. В нашем случае, корневой раздел стал 60G.