Перейти к основному содержанию

Linux — расширяем раздел на лету 5

Linux 2

У нас есть традиция. Каждый год 30 декабря на сервере заканчивается место...

Шлифуем админское кунг-фу. Расширим раздел диска и файловую систему на лету без перезагрузки и без потери данных. Ранее я уже расширял разделы, но везде использовал fdisk. Сегодня я буду расширять диск на виртуальной машине VMware с операционной системой Ubuntu с помощью growpart. Данный метод подойдёт для Debian систем.

Подготовка

Увеличиваем диск на виртуальной машине VMware. Затем делаем снапшот на всякий случай. Если сначала сделать снапшот, то не получится увеличить размер диска.

Действовать приходится быстро, скриншоты делать некогда. На виртуалке у нас два диска по 50 ГБ, место закончилось на втором, а именно на /dev/sdb. Если быть точнее, на разделе /dev/sdb1. Я увеличиваю второй диск виртуалки со 50 до 60 ГБ. Решение временное, нужно потом разобраться как так быстро место закончилось за ночь, но это сейчас не важно, нужно запустить сервис.

Расширяем раздел

Заходим на виртуалку по SSH под рутом.

Мы увеличили диск sdb но система об этом не знает, нужно заставить сделать рескан диска.

echo 1>/sys/class/block/sdb/device/rescan

Или по всем дискам, если требуется:

for D in $(ls /sys/block/sd?/device/rescan ); do echo ${D}; echo 1 > ${D}; done

Теперь нужно изменить наш раздел. Воспользуемся утилитой growpart. Она входит в пакет cloud-guest-utils.

apt-get install cloud-guest-utils
growpart /dev/sdb 1
root@test-pg01:~# growpart /dev/sdb 1
CHANGED: partition=1 start=2048 old: size=104853504 end=104855552 new: size=125827039 end=125829087

Раздел увеличился но файловая система об этом не знает. Теперь изменяем файловую систему (если файловая система xfs то используем xfs_growfs /путь_куда_примонтировано)

resize2fs /dev/sdb1
root@test-pg01:~# resize2fs /dev/sdb1
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/sdb1 is mounted on /var/lib/postgresql; on-line resizing required
old_desc_blocks = 7, new_desc_blocks = 8
The filesystem on /dev/sdb1 is now 15728379 (4k) blocks long.

Смотрим что получилось.

lsblk
root@test-pg01:~# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   50G  0 disk
├─sda1   8:1    0    1M  0 part
└─sda2   8:2    0   50G  0 part /
sdb      8:16   0   60G  0 disk
└─sdb1   8:17   0   60G  0 part /var/lib/postgresql
sr0     11:0    1 1024M  0 rom

На /dev/sdb1 стало 60 ГБ места, база заработала, можно спать. Быстро и удобно. Хороший метод. Все действия на одном скрине:

linux

Ссылки

Linux — расширяем раздел на лету

Linux — расширяем раздел на лету 2

Linux — расширяем раздел на лету 3

Linux — расширяем раздел на лету 4

Linux — расширяем раздел на лету 6

Linux — расширяем раздел на лету 7

Теги

 

Похожие материалы

Резервное копирование Atlassian JIRA через GUI

Резервную копию Atlassian JIRA можно сделать в Администрирование > Система > Импорт и Экспорт > Резервное копирование. Здесь вы сможете сделать резервное копирование содержимого базы данных в доступном формате XML.

Теги

Bitvise SSH Server для Windows

Bitvise SSH Server (WinSSHD) — SSH-сервер, разработанный специально для Windows. Позволяет на Windows машине организовать сервер Secure Shell Handling 2 (SSH2) и Secure FTP (SFTP). Отличается большим количеством настроек. Бесплатно для частного использования при выборе версии Personal Edition, но с ограничениями.

Haproxy на Ubuntu 20.04 LTS

Установим и настроим балансировщик haproxy на Ubuntu 20.04 LTS. Балансировать будем в режиме roundrobin порт TCP 25 на порты localhost TCP 26, 27, 28, 29, 30. На этих портах работает postfix в режиме multi-instance, сделаем единый 25 порт, который будет балансировать нагрузку между экземплярами почтового сервера.

Теги