- Оглавление
- Краткая справка по командам
- Шаг 1. Анализ конфигурации дискового пространства
- Шаг 2. Расширение раздела с помощью утилиты growpart.
- Шаг 3. Расширение пространства LVM
- Шаг 4. Расширение файловой системы
- Шаг 5. Проверка
- Оглавление
- Краткая справка по командам
- Добавление диска
- Шаг 1. Анализ конфигурации дискового пространства и поиск нового устройства (диска)
- Шаг 2. Создание нового раздела на новом устройстве (диске)
- Шаг 3. Анализ имеющейся конфигурации LVM и файловой системы
- Шаг 4. Расширение LVM
- Шаг 5. Расширение файловой системы
- Шаг 6. Проверка.
- Ошибки
- Вводные данные
- Увеличение размера диска
- Создание раздела
- Заключение
- Introduction
- Increase disk size
- Create partition
- Conclusion
- Шаг1. Проверяем размер дисков
- Шаг2. Создаем новый раздел
- Шаг3. Инициализация диска
- Шаг4. Расширение volume group
Оглавление
- Как расширить существующий диск в Linux?
- Краткая справка по командам:
Краткая справка по командам
lsblk — вывести список блочных устройств;
pvs — вывести список физических томов;
vgs — вывести список группы томов;
lvs — вывести список логических томов;
fdisk -l — просмотреть подробно разделы диска;
dnf -y install cloud-utils-growpart — установить утилиту growpart для Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux;
apt -y install cloud-guest-utils — установить утилиту growpart для Ubuntu, Debian;
growpart /dev/sda 2 — расширить раздел /dev/sda2;
pvresize /dev/sda2 — расширить существующий физический том /dev/sda2;
lvextend -r -l +100%FREE /dev/centos/root — расширить логический том /dev/centos/root из группы томов centos;
df -hT — вывести список разделов и файловых систем;
xfs_growfs /dev/mapper/centos-root — увеличить размер файловой системы XFS на логическом томе /dev/mapper/centos-root (для Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux);
resize2fs /dev/mapper/ubuntu-root — увеличить размер файловой системы EXT4 на логическом томе /dev/mapper/ubuntu-root (для Ubuntu, Debian).
В данном примере будет описано как расширить существующий раздел на диске используя 15Gb свободного дискового пространства из неразмеченной области этого же диска. Расширение будет выполнено на примере дистрибутива CentOS.
Данная инструкция подходит для большинства дистрибутивов Linux, дает подробную информацию как корректно расширить дисковое пространство, учитывает особенности команд различных дистрибутивов.
Примечание: Все команды необходимо выполнять под пользователем root либо с правами суперпользователя (sudo).
При выполнении данной инструкции есть риск потери данных, поэтому предварительно рекомендуется сделать резервную копию (backup) виртуальной машины.
Шаг 1. Анализ конфигурации дискового пространства
Сперва следует определить название раздела, который собираетесь расширить и объем неразмеченной области на устройстве (диске) с помощью команды
lsblk.Затем следует проверить существующую конфигурацию LVM командами:
pvs— вывести название и количество имеющихся физических томов (PV)
vgs— вывести группы томов (VG)
lvs— вывести логические тома (LV)
Необходимо определить системный раздел и тип файловой системы на нем, который требуется расширить с помощью командыdf -hT.Теперь необходимо проверить имеющиеся разделы диска с помощью утилиты
fdisk -l.
Подробнее по шагу 1
1.1 Выведите список блочных устройств командой lsblk. Определите раздел, который собираетесь расширить и объем неразмеченной области на диске.

В данном примере мы видим, что в системе имеется 1 устройство (диск) /dev/sda размером 45Gb.
На диске созданы 2 раздела общим объемом 30Gb:
- основной
/dev/sda1— 1Gb, - расширенный
/dev/sda2— 29Gb,
оставшиеся 15Gb остаются в неразмеченной области.
Также мы видим, что раздел /dev/sda2 (29Gb) является расширенным разделом LVM, где имеется группа томов centos и 2 логических тома root и swap.
Будем расширять логический том root на расширенном разделе dev/sda2 используя свободные 15Gb из неразмеченной области диска sda.
1.2 Проверьте существующую конфигурацию LVM, определив название и количество имеющихся физических томов (PV), группы томов (VG), логических томов (LV) следующими командами pvs, vgs, lvs соответственно:

В данном примере мы видим, что в системе имеется физический том /dev/sda2, который входит в созданную группу томов centos. В этой группе томов созданы 2 логических тома: root и swap.
1.3 Проверьте разделы диска с помощью утилиты fdisk -l.
Пример отображения для CentOS:

Раздел /dev/sda2 является расширяемым разделом LVM.
Пример отображения для Ubuntu:

Обратите внимание, в дистрибутиве Ubuntu сектора раздела /dev/sda5 входят в сектора раздела /dev/sda2, т.е. имеют одно дисковое пространство.
Раздел /dev/sda2 является расширенным, раздел /dev/sda5 является разделом LVM, созданным на расширенном разделе. Поэтому, для того чтобы расширить логический том root предварительно необходимо расширить оба этих раздела — об этом будет сказано далее.
Шаг 2. Расширение раздела с помощью утилиты growpart.
2.1 Сперва следует установить утилиту growpart в соответствии с вашим дистрибутивом:
dnf -y install cloud-utils-growpart — команда для дистрибутивов Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux.
Примечание: для устаревших дистрибутивов (CentOS 7.9) вместо dnf используйте yum.
apt -y install cloud-guest-utils — команда для дистрибутивов Ubuntu, Debian.
2.2 Затем необходимо расширить раздел с помощью команды:
growpart /dev/sda 2 — где /dev/sda 2 — имя расширяемого раздела.
Примечание: для Ubuntu может потребоваться расширить 2 раздела (это можно узнать по команде fdisk -l).
2.3 Чтобы убедиться в расширении раздела следует повторить команду lsblk.
Подробнее по шагу 2
2.1 Установите утилиту growpart в соответствии с вашим дистрибутивом.
- для дистрибутивов Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux команда:
- для дистрибутивов Ubuntu, Debian команда:
2.2 Расширьте раздел (в нашем случае /dev/sda2 — корневой раздел (root)) на всю неразмеченную область, т.е. в нашем случае на 15Gb. (В нашем примере /dev/sda2 — корневой раздел. Обратите внимание, у вас может быть другой раздел).
Для Ubuntu как мы выяснили на шаге 1.3 требуется расширить 2 раздела: расширенный раздел /dev/sda2 и раздел LVM /dev/sda5:
[root@ubuntu ~]# growpart /dev/sda 2
[root@ubuntu ~]# growpart /dev/sda 5Примечание: у вас могут быть другие разделы для расширения, проверить это можно командами lsblk и fdisk -l.
2.3 Убедитесь в расширении раздела командой lsblk.

Шаг 3. Расширение пространства LVM
3.1 Сперва необходимо расширить существующий физический том с помощью команды:
pvresize /dev/sda2, где /dev/sda2 — имя расширяемого раздела
3.2 Затем необходимо расширить логический том, выполнив команду:
lvextend -r -l +100%FREE /dev/centos/root,
где /dev/centos/root — путь расширяемой файловой системы,
centos — название группы (можно узнать по команде vgs),
root — название логического тома (можно узнать по команде lvs).
В команде выше, вместо /dev/centos/root можно указать другой путь /dev/mapper/centos-root (можно узнать по команде df -hT), результат будет тот же.
Подробнее по шагу 3
3.1 Расширьте существующий физический том (physical volume) командой pvresize.
Проверяем выполнение командой pvs — значение столбца PFree должно увеличится на расширяемый объем.
(В нашем примере физический том — /dev/sda2. Обратите внимание у вас может быть другой другой физический том).

3.2 Проверьте размер группы томов (volume group). Значение столбца VFree должно увеличиться на расширяемый объем.

3.3 Расширьте логический том (logical volume) используя команду lvextend -r -l +100%FREE /dev/centos/root,
где centos — имя группы томов,
root — имя логического тома.
Примечание: у вас могут быть другие названия группы и логического тома.
Проверьте выполнение командой lvs — значение столбца PFree должно увеличится.

Шаг 4. Расширение файловой системы
Примечание: Данная операция несет риск потери данных. Предварительно рекомендуется сделать резервную копию виртуальной машины.
Для увеличения файловой системы на логическом томе, необходимо ввести команду в зависимости от дистрибутива:
Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux (файловая система XFS):
xfs_growfs /dev/mapper/centos-root, где/dev/mapper/centos-root— название расширяемой файловой системы (название и тип можно узнать по командеdf -hT);Ubuntu, Debian (файловая система
ext4)
resize2fs /dev/mapper/ubuntu-root, где/dev/mapper/ubuntu-root— название расширяемой файловой системы (название и тип можно узнать по командеdf -hT)
Подробнее по шагу 4
4.1 Определим путь монтирования файловой системы расширяемого раздела, точку монтирования и тип файловой системы.
В нашем примере путь — /dev/mapper/centos-root (или /dev/centos/root),
точка монтирования — /,
тип файловой системы — xfs.
Обратите внимание, у вас будет свой путь и тип файловой системы.
4.2 Далее необходимо увеличить размер файловой системы на логическом томе. В зависимости от типа файловой системы и дистрибутива выберите ниже подходящий вам тип.
4.2.1 Для файловой системы XFS (дистрибутивы Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux) используется утилита xfs_growfs и путь указанный в выводе команды df -hT для расширяемого раздела (в примере ниже для Centos — это /dev/mapper/centos-root).

4.2.2 Для файловой системы ext4 (дистрибутивы Ubuntu, Debian) используется утилита resize2fs и путь указанный в выводе команды df -hT для расширяемого раздела (в примере ниже для Ubuntu — это /dev/mapper/ubuntu-root).

Шаг 5. Проверка
Для проверки нового размера диска и файловой системы следует повторить команды df -hT и lsblk.
Подробнее по шагу 5

Оглавление
- Как добавить новый диск в Linux?
- Краткая справка по командам:
- Добавление диска
Краткая справка по командам
lsblk — вывести список блочных устройств;
fdisk /dev/sdb — создать новый раздел в неразмеченной области /dev/sdb,
далее n — создать раздел, p — создать основной раздел, w — записать изменения на диск;
pvs — вывести список физических томов;
vgs — вывести список группы томов;
lvs — вывести список логических томов;
df -hT — вывести список разделов и файловых систем;
pvcreate /dev/sdb1 — создать новый физический том /dev/sdb1;
vgextend centos /dev/sdb1 — добавить том /dev/sdb1 в группу centos;
lvextend -l +100%FREE /dev/centos/root — расширить логический том /dev/centos/root;
xfs_growfs /dev/mapper/centos-root — увеличить размер файловой системы XFS на логическом томе /dev/mapper/centos-root (для Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux);
resize2fs /dev/mapper/ubuntu-root — увеличить размер файловой системы EXT4 на логическом томе /dev/mapper/ubuntu-root (для Ubuntu, Debian).
Добавление диска
В данном примере будет описано как расширить дисковое пространство раздела / (root) на 10Gb путем добавления нового устройства (диска) используя возможности LVM.
Расширение будет выполнено на примере дистрибутива CentOS. Данная инструкция подходит для большинства дистрибутивов Linux, дает подробную информацию, как корректно расширить дисковое пространство даже при нестандартной разметке разделов, учитывает особенности команд различных дистрибутивов.
Примечание: Все команды необходимо выполнять под пользователем root либо с правами суперпользователя (sudo).
При выполнении данной инструкции есть риск потери данных, поэтому предварительно рекомендуется сделать резервную копию виртуальной машины.
Шаг 1. Анализ конфигурации дискового пространства и поиск нового устройства (диска)
Сперва следует определить название нового добавленного устройства (диска) в системе с помощью команды lsblk.

Структуру дискового пространства можно отобразить в виде схемы:

В данном примере мы видим, что в системе имеется 3 устройства:
- /dev/sda
- /dev/sdb
- /dev/vda
На устройстве /dev/sda (30Gb) созданы 2 раздела:
- Раздел /dev/sda1 (1Gb) является первичным с меткой /boot, на который установлен загрузчик ядра linux.
- Раздел /dev/sda2 (29Gb) является расширенным разделом LVM, на котором создан физический том /dev/sda2. На основе физического тома создана группа томов centos, в которую входят 2 логических тома root и swap.
Устройства /dev/sdb (10Gb) и /dev/vda (20Gb) добавлены в систему, но не имеют разделов.
Выберем для расширения устройство /dev/sdb размером 10Gb.
Устройства (диски) в linux могут иметь следующие названия: sda, sdb, sdc и др.
Примечание: устройство vda было создано во время первичного заказа виртуальной машины с опцией дополнительный диск.
В данном примере мы используем новое устройство /dev/sdb (название устройства может отличаться).
Шаг 2. Создание нового раздела на новом устройстве (диске)
Необходимо создать новый раздел командой:
fdisk /dev/sdb, где /dev/sdb — имя нового раздела.
Далее последовательно ввести нижеуказанные ключи:
n — создать новый раздел
p — создать новый основной раздел
выбрать номер раздела, его первый и последний секторы (по умолчанию Enter)
w — сохранить новый раздел на диск
Созданный раздел можно увидеть, снова введя команду lsblk.
2.1 Используя утилиту fdisk, создайте новый раздел на новом устройстве, в нашем случае это /dev/sdb.
Примечание: название устройства может отличаться.
Введите n, чтобы создать новый раздел:
[root@centos ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xba91dc06.
Command (m for help): n2.2 Затем выберите p, чтобы создать новый основной раздел:
Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 1Примечание: В вашей системе может быть только 4 основных раздела на одном диске.
Если вы уже достигли этого предела, создайте расширенный раздел.
2.3 Выберите номер раздела и его первый и последний секторы, если вы нажмете Enter, то по умолчанию новый раздел будет использовать все доступное дисковое пространство:
First sector (2048-20971519, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519):
Created a new partition 1 of type 'Linux' and of size 10 GiB.2.4 Наконец, вам нужно записать раздел на диск с помощью команды w.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.2.5 Проверьте, был ли создан раздел с помощью команды lsblk.

На устройстве /dev/sdb (10Gb) имеется раздел /dev/sdb1 (10Gb).
Шаг 3. Анализ имеющейся конфигурации LVM и файловой системы
Для проверки существующей конфигурации LVM можно ввести команды:
pvs — вывести название и количество имеющихся физических томов (PV)
vgs — вывести группы томов (VG)
lvs — вывести логические тома (LV)
Необходимо определить системный раздел и тип файловой системы на нем, который требуется расширить с помощью команды
df -hT.

В данном примере мы видим, что в системе имеется физический том /dev/sda2, который входит в созданную группу томов centos.
В этой группе томов созданы 2 логических тома: root и swap.

В данном примере мы хотим расширить раздел с названием /dev/mapper/centos-root, размером 28Gb имеющий файловую систему xfs, который имеет точку монтирования /.
Структура дискового пространства до расширения LVM отображена на схеме:

Шаг 4. Расширение LVM
4.1 На новом диске необходимо создать новый физический том с помощью команды:
pvcreate /dev/sdb1, где /dev/sdb1 — имя нового раздела.
4.2 Расширить группу томов добавив к ней новый физический том с помощью команды:
vgextend centos /dev/sdb1, где centos — название группы томов (можно узнать по команде vgs).
4.3 Расширить логический том, выполнив команду:
lvextend -l +100%FREE /dev/centos/root, где
/dev/centos/root — путь расширяемой файловой системы,
centos — название группы (можно узнать по команде vgs),
root — название логического тома (можно узнать по команде lvs).
В команде выше, вместо /dev/centos/root можно указать другой путь /dev/mapper/centos-root (можно узнать по команде df -hT), результат будет тот же.
4.1 Создайте на только что созданном разделе физический том с помощью команды pvcreate. (в нашем примере созданный раздел это /dev/sdb1. Обратите внимание,что название раздела может отличаться, а также проверьте созданный физический том командой pvs:

В данном примере физический том имеет свободное пространство 10Gb и не имеет группы томов.
4.2 На шаге 3.1 мы узнали название группы томов. Расширьте эту группу томов, добавив к ней новый физический том с помощью команды vgextend.
Проверьте изменения с помощью команды vgs. (в нашем примере группа томов называлась centos, новый физический том — /dev/sdb1. Обратите внимание, у вас будет свое название группы и физического тома. Столбец VFree показывает количество свободного места.

В данном примере группа томов centos включает 2 физических тома и имеет 10Gb свободного пространства.
4.3 На шаге 3.1 мы узнали названия группы томов и расширяемого логического тома. Расширьте этот логический том, выполнив команду lvextend. (в нашем примере группа томов называлась centos, логический том — root. Обратите внимание, у вас будет свое название группы и логического тома. Убедитесь в расширении логического тома командой lvs.

В данном примере общий размер логического тома из группы томов centos расширен до 37.99Gb.
Шаг 5. Расширение файловой системы
Примечание: Данная операция несет риск потери данных. Предварительно рекомендуется сделать резервную копию виртуальной машины.
Для увеличения файловой системы на логическом томе, необходимо ввести команду в зависимости от дистрибутива:
Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux (файловая система XFS):
xfs_growfs /dev/mapper/centos-root, где
/dev/mapper/centos-root— название расширяемой файловой системы (название и тип можно узнать по командеdf -hT).Ubuntu, Debian (файловая система ext4):
resize2fs /dev/mapper/ubuntu-root,
где/dev/mapper/ubuntu-root— название расширяемой файловой системы (название и тип можно узнать по командеdf -hT).
5.1 Определим путь монтирования файловой системы раздела root, точку монтирования и тип файловой системы.
В нашем примере путь — /dev/mapper/centos-root (или /dev/centos/root),
точка монтирования — /,
тип файловой системы — xfs.
Примечание: Обратите внимание, у вас будет свой путь и тип файловой системы.
5.2 Далее необходимо увеличить размер файловой системы на логическом томе. В зависимости от типа файловой системы и дистрибутива выберите ниже подходящий вам тип.
5.2.1 Для файловой системы XFS (дистрибутивы Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux) используется утилита xfs_growfs и путь указанный в выводе команды df -hT для расширяемого раздела (в примере ниже для Centos — это /dev/mapper/centos-root).

5.2.2 Для файловой системы ext4 (дистрибутивы Ubuntu, Debian) используется утилита resize2fs и путь указанный в выводе команды df -hT для расширяемого раздела (в примере ниже для Ubuntu это /dev/mapper/ubuntu-root).

Шаг 6. Проверка.
Для проверки нового размера диска и файловой системы следует повторить команды:
df -hT и lsblk.

Итоговая конфигурация дискового пространства и файловой системы отображена на схеме:

В следствии увеличения использования одного из сервисов мониторинга и аналитики объёмы хранимых данных начали сильно расти. Эмпирическая оценка показала что лучше сразу увеличить объём хранилища, не дожидаясь переполнения диска и остановки сервиса. Благо этот сервер виртуальный и добавления ресурсов не составляет особого труда. Заходим на гипервизор и просто увеличиваем значение выделяемых под хранилище гигабайт:

Это действие сродни физической замены диска на вдвое больший. Особенность заключается в том, что операционная система «добавленное» место не сможет использовать самостоятельно, так как оно будет не размечено. Собственно разметкой и последующим использованием мы и займёмся. Сперва стартовые данные:
# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos_monitor-root 11G 17G 40% / devtmpfs 911M 0 911M 0% /dev tmpfs 921M 0 921M 0% /dev/shm tmpfs 921M 8.5M 912M 1% /run tmpfs 921M 0 921M 0% /sys/fs/cgroup /dev/sda1 497M 277M 221M 56% /boot tmpfs 185M 0 185M 0% /run/user/0
# fdisk -l Disk /dev/sda: 32.2 GB, 32212254720 bytes, 62914560 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000bf751 Device Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 30944256 8e Linux LVM Disk /dev/mapper/centos_monitor-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/centos_monitor-root: 29.5 GB, 29490151424 bytes, 57597952 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
Теперь создаём на диске новый раздел
# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): # Новый раздел
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p):
Partition number (3,4, default 3): # Следующий незанятый номер
First sector (62914560-125829119, default 62914560): # Следующий сектор
Last sector, +sectors or +size{K,M,G} (62914560-125829119, default 125829119): # Последний сектор, оставляем по умолчанию
Partition 3 of type Linux and of size 30 GiB is set
Command (m for help): # Меняем тип ФС
Partition number (1-3, default 3):
Hex code (type L to list all codes): # Соответствует Linux LVM
Changed type of partition 'Linux' to 'Linux LVM'
Command (m for help):
Disk /dev/sda: 64.4 GB, 64424509440 bytes, 125829120 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000bf751
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 1026047 512000 83 Linux
/dev/sda2 1026048 62914559 30944256 8e Linux LVM
/dev/sda3 62914560 125829119 31457280 8e Linux LVM
Command (m for help): # Сохраняем изменения
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks. После этого необходимо перегрузить машинку
# reboot
После перезагрузки создаём физический раздел:
# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created
Смотрим название группы томов, в который добавляется новый раздел
# vgdisplay --- Volume group --- VG Name System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 29.51 GiB PE Size 4.00 MiB Total PE 7554 Alloc PE / Size 7543 / 29.46 GiB Free PE / Size 11 / 44.00 MiB VG UUID B7FEqI-aDzN-G0xX-xUgH-oTpd-TRWc-O9sKMi
# vgextend centos_monitor /dev/sda3 Volume group "centos_monitor" successfully extended
название логического тома, который нужно расширить:
# lvdisplay --- Logical volume --- LV Path LV Name VG Name LV UUID cmFknm-2nVO-kREo-tQUr-Y7X5-VBPc-AfWkYR LV Write Access read/write LV Creation host, time localhost, 2015-05-26 02:03:59 +0300 LV Status available # open 1 LV Size 27.46 GiB Current LE 7031 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:1
# lvextend -l +100%FREE /dev/centos_monitor/root Size of logical volume centos_monitor/root changed from 27.46 GiB (7031 extents) to 57.50 GiB (14721 extents). Logical volume root successfully resized.
И последний шаг, который немного отличается в зависимости от версии
Для CentOS 6
# resize2fs -p /dev/mapper/centos_monitor-root resize2fs 1.42.9 (28-Dec-2013) Filesystem at /dev/mapper/centos_monitor-root is mounted on /; on-line resizing required old desc_blocks = 1, new_desc_blocks = 2 Performing an on-line resize of /dev/mapper/centos_monitor-root to 1799936 (4k) blocks. The filesystem on /dev/mapper/centos_monitor-root is now 1799936 blocks long.
Для CentOS 7
# xfs_growfs /dev/mapper/centos_monitor-root meta-data=/dev/mapper/centos_monitor-root isize=256 agcount=4, agsize=1799936 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 finobt=0 data = bsize=4096 blocks=7199744, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal bsize=4096 blocks=3515, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 7199744 to 15074304
Проверяем что получилось:
# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos_monitor-root 11G 47G 19% / devtmpfs 911M 0 911M 0% /dev tmpfs 921M 0 921M 0% /dev/shm tmpfs 921M 8.5M 912M 1% /run tmpfs 921M 0 921M 0% /sys/fs/cgroup /dev/sda1 497M 277M 221M 56% /boot tmpfs 185M 0 185M 0% /run/user/0
Как видим размер корневой файловой системы увеличился. Прелесть в том, что это расширение производится в online режиме без каких либо live-систем и прочего. Обошлись лишь перезагрузкой.
Самая главная проблема, что просто нельзя изменить размер между /centos-home и /centos-root и для реализации необходимо сделать резервную копию /home, затем удалить /centos-home, увеличить место на /centos-root, заного создать /centos-home, разархивировать /home.
# df -h
Файловая система Размер Использовано Дост Использовано% Cмонтировано в
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 40K 16G 1% /dev/shm
tmpfs 16G 9,2M 16G 1% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/centos-root 50G 46G 4,9G 91% /
/dev/nvme0n1p2 1014M 228M 787M 23% /boot
/dev/nvme0n1p1 200M 12M 189M 6% /boot/efi
/dev/mapper/centos-home 172G 36G 136G 21% /home
tmpfs 3,2G 0 3,2G 0% /run/user/997
tmpfs 3,2G 0 3,2G 0% /run/user/0Подсоединяю внешний диск для резервной копии и создаю папку для монтирования:
# mkdir /mnt/backup# ls /dev/sd*
/dev/sdaФорматирую диск в EXT4:
# mkfs -t ext4 /dev/sdaМонтирую диск к созданной папке:
# mount /dev/sda /mnt/backupСделать резервную копию /home:
# tar -czvf /mnt/backup/home.tgz -C /home .Проверить резервную копию:
# tar -tvf /mnt/backup/home.tgz# umount /dev/mapper/centos-homeУдалить домашний логический том:
# lvremove /dev/mapper/centos-homeВоссоздать новый логический том на нужный объем для /home, отформатировать и смонтировать его:
# lvcreate -L 62GB -n home centos
# mkfs.xfs /dev/centos/home
# mount /dev/mapper/centos-homeРасширьте / корневой том ВСЕМ оставшегося места и измените размер (-r) файловой системы при этом:
# lvextend -r -l +110%FREE /dev/mapper/centos-rootВосстановить резервную копию:
# tar -xzvf /mnt/backup/home.tgz -C /homeНужно проверить /etc/fstab на предмет соответствия тома /home. Если он использует UUID, нужно обновить часть UUID. (Поскольку был создан новый том, UUID изменился)
Ошибки
Если после не работает SSH авторизация пользователей
С включенным selinux вы можете получить это сообщение в /var/log/messages (с включенной отладкой в sshd_config), потому что /home был воссоздан
SELinux is preventing /usr/sbin/sshd from read access on the file authorized_keysДля исправления выполнить команду:
# restorecon -R -v /homeпри монтировании может быть ошибка:
target is busy# umount -l /dev/mapper/centos-homeЕсли появилась ошибка: Логический том centos /home содержит используемую файловую систему
# fuser -kuc /dev/vg_data /backup# yum install psmiscThe default disk space for the / directory is mostly limited. In case of me, even though I had a disk size of 1TB, the /home directory was allocated 945 GB whereas the remaining amount about 20 GB was allocated to the / directory. This situation can be very frustrating when you run out of space on the webserver even though you have a lot of space on the /home directory. In this tutorial, I will explain how to expand your /dev/mapper/centos-root to occur the entire disk space.
- check the partitions of the disk drive
# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 20G 20G 41M 100% / devtmpfs 7.8G 0 7.8G 0% /dev tmpfs 7.8G 84K 7.8G 1% /dev/shm tmpfs 7.8G 778M 7.0G 10% /run tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/sda1 497M 241M 257M 49% /boot tmpfs 1.6G 16K 1.6G 1% /run/user/42 tmpfs 1.6G 0 1.6G 0% /run/user/0 /dev/mapper/centos-home 945G 20G 925G 4% /home
For this instance, /home has 945G whereas / has 20G. So, there is enough space to expand / directory.
- Make a backup of /home directory to new directory /home-alt
# mkdir /home-alt # df -h # mv /home/USERNAME/ /home-alt
- Umount home directory
umount /dev/mapper/centos-home
- Remove home logical volume
lvremove /dev/mapper/centos-home
- Run pvs command to see the volume to extend to
PV VG Fmt Attr PSize PFree /dev/sda3 centos lvm2 a 855.45g 64.00m
- Check the new partition and reboot
# df -h
- Restore the /home directory
# mv /home-alt/USERNAME/ /home/ # rmdir /home-alt
# mount -a
Take note of the umounted points and comment them out in fstab.
# vi /etc/fstab # reboot
Ранее мы с вами установили CentOS 8. Но что делать, если размера диска оказалось недостаточно? К счастью, эта операционная система по умолчанию использует LVM и в этой статье мы рассмотрим на примере CentOS 8 увеличение LVM раздела. Данная процедура практически не отличается от действий в предыдущих версиях данной ОС.
Внимание! Перед тем, как приступить к работам по расширению LVM, обязательно сделайте резервную копию данных!
1 Вводные данные
2 Увеличение объема жесткого диска
3 Создание нового раздела
4 Добавление раздела в LVM
Вводные данные
Наша CentOS 8 установлена на Hyper-V. Для начала проверим размер файловой системы, выполнив df -h (все команды выполняются от root пользователя):
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 353M 0 353M 0% /dev
tmpfs 368M 0 368M 0% /dev/shm
tmpfs 368M 5.2M 363M 2% /run
tmpfs 368M 0 368M 0% /sys/fs/cgroup
/dev/mapper/cl-root 6.2G 2.3G 4.0G 37% /
/dev/sda1 976M 128M 782M 15% /boot
tmpfs 74M 0 74M 0% /run/user/0LVM том имеет размер 6.2 гигабайта и смонтирован в корневой каталог /, его мы и будем увеличивать.
Посмотрим вывод fdisk -l:
# fdisk -l
Disk /dev/sda: 8 GiB, 8589934592 bytes, 16777216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xde6ef740
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 16777215 14678016 7G 8e Linux LVM
Disk /dev/mapper/cl-root: 6.2 GiB, 6652166144 bytes, 12992512 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mapper/cl-swap: 820 MiB, 859832320 bytes, 1679360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytesВ данном примере у нас 1 диск /dev/sda размером 8 гигабайт, который разбит на 2 логических: загрузочный /dev/sda1 и /dev/sda2 с типом Linux LVM – он нас и интересует.
Увеличение размера диска
В среде виртуализации увеличиваем размер жесткого диска и перезагружаем систему. Я увеличил диск до 10 гигабайт:
#fdisk -l
Disk /dev/sda: 10 GiB, 10737418240 bytes, 20971520 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xde6ef740
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 16777215 14678016 7G 8e Linux LVM
Disk /dev/mapper/cl-root: 6.2 GiB, 6652166144 bytes, 12992512 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mapper/cl-swap: 820 MiB, 859832320 bytes, 1679360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytesСоздание раздела
После увеличения размера диска необходимо создать новый раздел. Выполним fdisk /dev/sda, где /dev/sda – метка нашего диска (Disk /dev/sda):
# fdisk /dev/sda
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help):Вводим n – создание нового раздела:
Command (m for help): nДалее указываем тип – основной p:
Partition type p primary (2 primary, 0 extended, 2 free) e extended (container for logical partitionsSelect (default p): pНас просят указать номер раздела, по умолчанию – это следующий с номером 3:
Partition number (3,4, default 3):3Далее указываются начальный и конечный сектор. Обязательно проверьте, чтобы они совпадали со значениям, указанными через дефис. Таким образом мы используем все неразмеченное пространство:
First sector (16777216-20971519, default 16777216):16777216
Last sector, +sectors or +size{K,M,G,T,P} (16777216-20971519, default 20971519):20971519
Created a new partition 3 of type 'Linux' and of size 2 GiB.Как видим, был создан раздел на 2 гигабайта с типом Linux. Изменим тип по умолчанию на Linux LVM. Для этого используем команду t, указываем, тип какого раздела мы хотим изменить (в данном случае 3) и вводим его код в шестнадцатеричной системе 8e:
Command (m for help): t
Partition number (1-3, default 3): 3
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'Командой p посмотрим, что у нас получилось:
Command (m for help): p
Disk /dev/sda: 10 GiB, 10737418240 bytes, 20971520 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xde6ef740
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 16777215 14678016 7G 8e Linux LVM
/dev/sda3 16777216 20971519 4194304 2G 8e Linux LVMОтлично! Мы создали раздел /dev/sda3 размером 2 гигабайта. Осталось только сохранить изменения командой w. После этого fdisk автоматически закроется:
Command (m for help): w
The partition table has been altered.
Syncing disks.Для использования созданного тома в LVM инициализируем его командой pvcreate:
# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created.Посмотрим название группы томов, в которою необходимо добавить раздел. Для это воспользуемся vgdisplay. По умолчанию – это cl:
# vgdisplay --- Volume group --- VG Name cl System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size <7.00 GiB PE Size 4.00 MiB Total PE 1791 Alloc PE / Size 1791 / <7.00 GiB Free PE / Size 0 / 0 VG UUID XwDF6A-wEWR-uazD-t4bz-bOMI-3z2L-VXCczxДобавляем наш раздел в данную группу:
# vgextend cl /dev/sda3 Volume group "cl" successfully extendedС помощью lvdisplay смотрим название и путь к логическому тому, который необходимо расширить (по умолчанию это root и /dev/cl/root):
# lvdisplay --- Logical volume --- LV Path /dev/cl/swap LV Name swap VG Name cl LV UUID 9cy6VE-EIXf-ky21-S55C-TGkH-mkYb-rTtCsU LV Write Access read/write LV Creation host, time localhost, 2019-10-17 08:32:49 +0300 LV Status available # open 2 LV Size 820.00 MiB Current LE 205 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:1 --- Logical volume --- LV Path /dev/cl/root LV Name root VG Name cl LV UUID kM68mo-2vZr-3zDP-Sfyc-TlAp-QQb7-XTh0X0 LV Write Access read/write LV Creation host, time localhost, 2019-10-17 08:32:50 +0300 LV Status available # open 1 LV Size <6.20 GiB Current LE 1586 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0Теперь расширим его. Для этого lvextend указываем путь к логическому тому и параметр -l +100%FREE, который говорит о том, что мы хотим использовать 100% свободного места:
# lvextend -l +100%FREE /dev/cl/root Size of logical volume cl/root changed from <6.20 GiB (1586 extents) to 8.19 GiB (2097 extents). Logical volume cl/root successfully resized.Остался последний шаг – расширить файловую систему. Если у вас файловая система xfs (используется на Centos 8 по-умолчанию), то выполним xfs_growfs:
# xfs_growfs /dev/mapper/cl-root
meta-data=/dev/mapper/cl-root isize=512 agcount=4, agsize=406016 blks = sectsz=4096 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1
data = bsize=4096 blocks=1624064, imaxpct=25 = sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=2560, version=2 = sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 1624064 to 2147328Если ext4, то воспользуемся resize2fs:
# resize2fs -p /dev/mapper/cl-root
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/mapper/cl-root is mounted on /; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/mapper/cl-root to 2147328 (4k) blocks.
The filesystem on /dev/mapper/cl-root is now 2147328 blocks long.# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 353M 0 353M 0% /dev
tmpfs 368M 0 368M 0% /dev/shm
tmpfs 368M 5.1M 363M 2% /run
tmpfs 368M 0 368M 0% /sys/fs/cgroup
/dev/mapper/cl-root 8.2G 2.3G 6.0G 28% /
/dev/sda1 976M 128M 782M 15% /boot
tmpfs 74M 0 74M 0% /run/user/0Заключение
Как видим, в CentOS 8 увеличение LVM раздела – не такая уж и сложная задача.
Earlier we installed CentOS 8. But what if the disk size was not enough? Fortunately, this operating system uses LVM by default, and in this article we will use for example the CentOS 8 extend LVM partition. This procedure is practically no different from the actions in previous versions of this OS.
Attention! Before you start work on increasing the size of LVM, be sure to backup your data!
1 Introduction
2 Increase disk size
3 Create partition
4 Increase LVM partition
Introduction
Our CentOS 8 is installed on Hyper-V. First, check the size of the file system by executing df -h (all commands are run as root):
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 353M 0 353M 0% /dev
tmpfs 368M 0 368M 0% /dev/shm
tmpfs 368M 5.2M 363M 2% /run
tmpfs 368M 0 368M 0% /sys/fs/cgroup
/dev/mapper/cl-root 6.2G 2.3G 4.0G 37% /
/dev/sda1 976M 128M 782M 15% /boot
tmpfs 74M 0 74M 0% /run/user/0The LVM volume has a size of 6.2G and is mounted in the root directory /, we will increase it.
Let’s see the output of fdisk -l:
# fdisk -l
Disk /dev/sda: 8 GiB, 8589934592 bytes, 16777216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xde6ef740
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 16777215 14678016 7G 8e Linux LVM
Disk /dev/mapper/cl-root: 6.2 GiB, 6652166144 bytes, 12992512 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mapper/cl-swap: 820 MiB, 859832320 bytes, 1679360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytesIn this example, we have 1 drive /dev/sda with a size of 8G, which is divided into 2 logical: boot /dev/sda1 and /dev/sda2 with Linux LVM type – we are interested in it.
Increase disk size
In a virtualization environment, increase the size of the hard disk and reboot the system. I increased the disk to 10 gigabytes:
#fdisk -l
Disk /dev/sda: 10 GiB, 10737418240 bytes, 20971520 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xde6ef740
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 16777215 14678016 7G 8e Linux LVM
Disk /dev/mapper/cl-root: 6.2 GiB, 6652166144 bytes, 12992512 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mapper/cl-swap: 820 MiB, 859832320 bytes, 1679360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytesCreate partition
After increasing the size of the disk, you need to create a new partition. Run fdisk /dev/sda, where /dev/sda is the label of our disk (Disk /dev/sda):
# fdisk /dev/sda
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help):Enter n – create a new partition:
Command (m for help): nNext, indicate the type – the primary p:
Partition type p primary (2 primary, 0 extended, 2 free) e extended (container for logical partitionsSelect (default p): pPartition number (3,4, default 3):3Next, the starting and ending sectors are indicated. Be sure to check that they match the values specified by a hyphen. Thus we use all unallocated space:
First sector (16777216-20971519, default 16777216):16777216
Last sector, +sectors or +size{K,M,G,T,P} (16777216-20971519, default 20971519):20971519
Created a new partition 3 of type 'Linux' and of size 2 GiB.As you can see, a 2G partition with the Linux type was created. Change the default type to Linux LVM. To do this, use the t command, indicate the type of partition we want to change and number (in this case 3), and enter its code in the 8e hexadecimal system:
Command (m for help): t
Partition number (1-3, default 3): 3
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'With the p command, let’s see what happened:
Command (m for help): p
Disk /dev/sda: 10 GiB, 10737418240 bytes, 20971520 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xde6ef740
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 16777215 14678016 7G 8e Linux LVM
/dev/sda3 16777216 20971519 4194304 2G 8e Linux LVMFine! We created /dev/sda3 partition. It remains only to save the changes with the w command. After that, fdisk will automatically close:
Command (m for help): w
The partition table has been altered.
Syncing disks.To use the created volume in LVM, initialize it with the pvcreate command:
# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created.Let’s look at the name of the volume group to which you want to add the partition. We will use vgdisplay for this. The default is cl:
# vgdisplay --- Volume group --- VG Name cl System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size <7.00 GiB PE Size 4.00 MiB Total PE 1791 Alloc PE / Size 1791 / <7.00 GiB Free PE / Size 0 / 0 VG UUID XwDF6A-wEWR-uazD-t4bz-bOMI-3z2L-VXCczxAdd our partition to this group:
# vgextend cl /dev/sda3 Volume group "cl" successfully extendedUsing lvdisplay, we look at the name and path to the logical one that needs to be expanded (by default, this is root and /dev/cl/root):
# lvdisplay --- Logical volume --- LV Path /dev/cl/swap LV Name swap VG Name cl LV UUID 9cy6VE-EIXf-ky21-S55C-TGkH-mkYb-rTtCsU LV Write Access read/write LV Creation host, time localhost, 2019-10-17 08:32:49 +0300 LV Status available # open 2 LV Size 820.00 MiB Current LE 205 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:1 --- Logical volume --- LV Path /dev/cl/root LV Name root VG Name cl LV UUID kM68mo-2vZr-3zDP-Sfyc-TlAp-QQb7-XTh0X0 LV Write Access read/write LV Creation host, time localhost, 2019-10-17 08:32:50 +0300 LV Status available # open 1 LV Size <6.20 GiB Current LE 1586 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0Now expand it. To do this, lvextend specify the path to the logical volume and the -l + 100% FREE parameter, which indicates that we want to use 100% free space:
# lvextend -l +100%FREE /dev/cl/root Size of logical volume cl/root changed from <6.20 GiB (1586 extents) to 8.19 GiB (2097 extents). Logical volume cl/root successfully resized.The last step left is to expand the file system. If you use xfs (default on Centos 8), execute xfs_growfs:
# xfs_growfs /dev/mapper/cl-root
meta-data=/dev/mapper/cl-root isize=512 agcount=4, agsize=406016 blks = sectsz=4096 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1
data = bsize=4096 blocks=1624064, imaxpct=25 = sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=2560, version=2 = sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 1624064 to 2147328If ext4, use resize2fs:
# resize2fs -p /dev/mapper/cl-root
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/mapper/cl-root is mounted on /; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/mapper/cl-root to 2147328 (4k) blocks.
The filesystem on /dev/mapper/cl-root is now 2147328 blocks long.Check the result:
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 353M 0 353M 0% /dev
tmpfs 368M 0 368M 0% /dev/shm
tmpfs 368M 5.1M 363M 2% /run
tmpfs 368M 0 368M 0% /sys/fs/cgroup
/dev/mapper/cl-root 8.2G 2.3G 6.0G 28% /
/dev/sda1 976M 128M 782M 15% /boot
tmpfs 74M 0 74M 0% /run/user/0Conclusion
As you can see, in CentOS 8 extend LVM partition is not such a difficult task.
You can see similar articles on expanding partitions in various linux distributions:
Шаг1. Проверяем размер дисков
Смотрим наши диски с помощью fdisk
fdisk -l

Здесь мы видим диск /dev/xvda размером 26.8 Гб. Смотрим сколько места в системе.
df -h

Размер диска около 15 Гб. Значит можно увеличить диск более чем на 10 Гб. Также запомним наше LVM устройство /dev/mapper/centos-root
Шаг2. Создаем новый раздел
Далее приводится пример для моей системы. У вас название дисков может отличаться.
fdisk /dev/xvda
n-новый раздел
p-primary
Далее жмем ENTER. И в конце w -запись таблицы на диск

Затем вводим команду
partprobe
Или перезагружаем систему. Смотрим что получилось
fdisk -l

Здесь мы должны увидеть новый созданный диск /dev/xvda3
Шаг3. Инициализация диска
pvcreate /dev/xvda3
Должны увидеть сообщение Physical volume «/dev/xvda3» successfully created.

Шаг4. Расширение volume group
Смотрим наши lvm группы
pvs

Как видим название нашей группы «centos», добавляем к ней раздел созданный выше.
vgextend centos /dev/xvda3
Видим сообщение что группа успешно расширена

Добавим к уже существующему разделу 5 ГБ.
lvextend -L +5G /dev/mapper/centos-root

И наконец увеличиваем размер файловой системы.
resize2fs /dev/mapper/centos-root
Если получите ошибку
resize2fs: Bad magic number in super-block while trying to open /dev/mapper/centos-root Couldn't find valid filesystem superblock.
Значит у вас файловая система не ext4, а xfs. В этом случае используйте xfs_growfs
xfs_growfs /dev/mapper/centos-root

Как мы видим раздел успешно расширен. Посмотрим что получилось
df -h

Как видим файловая система успешно расширена на 5 ГБ. Для того что бы увеличить раздел на всё свободное пространство, наберите команду
lvextend -l +100%FREE /dev/mapper/centos-root xfs_growfs /dev/mapper/centos-root

Подробнее про LVM читайте в статье Управление и настройка LVM в Linux. Понятие LVM
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.






