Как расширить дисковое пространство в Linux

Рассмотрим как в Linux (CentOS Almalinx) увеличить дисковое пространство, предназначенное под систему, без потери данных.

Ситуация следующая, на Linux машине, а точнее говоря на Almalinux почти неожиданно закончилось свободное место на диске. Это из-за того, что Zabbix активно пишет и база данных MYSQL сильно растёт. Конечно в Zabbix есть функционал по ограничению хранения количества данных, но это уже другая история.

  1. Выключаем нашу машину.
    systemctl poweroff

  2. Увеличиваем размер жесткого диска c 20Гб до 30Гб для виртуальной машины. В данном примере в качестве гипервизора: VMWare ESXi

    Запускаем виртуальную машину.

  3. Смотрим и анализируем что у нас по дискам в системе. Используя команды из списка:
    • lsblk
    • pvs - вывести название и количество имеющихся физических томов (PV)
    • vgs - вывести группы томов (VG)
    • lvs - вывести логические тома (LV)
    • fdisk -l
    • df -hT

    Как видим несмотря на то, что мы для виртуальной машины уже назначили 30Гб, сама система почти ничего про это не знает. Видит только, что диск sda равен 30Гб, но в нужные разделы место автоматически не добавилось. 

  4. Расширим раздел с помощью утилиты growpart
    • Если у вас прямой выход и Internet, если через непрозрачный прокси сервер, то прежде нужно авторизоваться на нём например так
      export http_proxy="http://домен\логин:пароль@FQDN прокси:порт"
      export htts_proxy="htts://домен\логин:пароль@FQDN прокси:порт"

    • Установка growpart
      dnf -y install cloud-utils-growpart
    • Запускаем growpart
      growpart /dev/sda 2

      После выполнения мы видим, что sda2 расширился до 29Гб (30Гб - 1Гб), а root так и остался 18Гб.

  5. Расширим LVM
    pvresize /dev/sda2
  6. Расширим размер логического тома с помощью утилиты lvextend
    df -hT
    lvextend -r -l +100%FREE /dev/mapper/almalinux/root

    Видим, что раздел стал шире — 28Гб.

  7. Расширяем файловую систему а точнее увеличение корневого раздела xfs без перезагрузки хоста. В моём случае XFS
    xfs_growfs /dev/mapper/almalinux-root

    Но возможны и другие варианты.

    resize2fs /dev/mapper/almalinux-root
  8. Проверяем, что получилось
    df -hT
    lsblk

    Как видим всё получилось, диск увеличился на 10Гб

В этой статье мы рассмотрели как просто и быстро расширить диск в Linux

Краткий лист команд для расширения дискового просстранстава в Linux

1. Анализируем
lsblk
pvs - вывести название и количество имеющихся физических томов (PV)
vgs - вывести группы томов (VG)
lvs - вывести логические тома (LV)
fdisk -l
df -hT
2. growpart
dnf -y install cloud-utils-growpart
growpart /dev/sda 2
3. lvextend
df -hT
lvextend -r -l +100%FREE /dev/mapper/almalinux/root
4. xfs_growfs
xfs_growfs /dev/mapper/almalinux-root

или

resize2fs /dev/mapper/almalinux-root
5. Итог
df -hT
lsblk

Рейтинг: 5/5 - 1 голосов

Комментарии ()