Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных


Исходные данные:
df -h
Filesystem                      Size  Used Avail Use% Mounted on
udev                            7,5G     0  7,5G   0% /dev
tmpfs                           1,6G  2,5M  1,6G   1% /run
/dev/mapper/system-root          30G   17G   12G  58% /
tmpfs                           7,6G     0  7,6G   0% /dev/shm
tmpfs                           5,0M     0  5,0M   0% /run/lock
tmpfs                           7,6G     0  7,6G   0% /sys/fs/cgroup
/dev/mapper/system-lib           30G  8,0G   20G  29% /var/lib
/dev/mapper/system-log          9,8G  5,4G  4,0G  58% /var/log
/dev/mapper/system-home          29G  956M   27G   4% /home
/dev/mapper/system-glusterfs     15G   43M   14G   1% /var/lib/ecss/restfs
/dev/mapper/system-ecss--mysql   15G   54M   14G   1% /var/lib/ecss-mysql
/dev/mapper/system-mysql        9,8G  243M  9,0G   3% /var/lib/mysql
/dev/nvme0n1p1                  1,1G  4,4M  1,1G   1% /boot/efi

Для примера, возьмем раздел /dev/mapper/system-glusterfs. В первую очередь необходимо отмонтировать раздел. 

sudo umount /dev/mapper/system-glusterfs
umount: /var/lib/ecss/restfs: target is busy.

Если  в результате выполнения команды возникнет ошибка "target is busy", то необходимо остановить сервисы, которые используют этот раздел.

Посмотрим, какие сервисы используют раздел командой lsof

Проверяем кто использует этот раздел
sudo lsof /dev/mapper/system-glusterfs
COMMAND    PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
unitd     1406 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs
unitd     2007 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs
ecss-rest 2041 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs
unitd     2102 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs
unitd     2139 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs
unitd     2211 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs
unitd     2285 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs
unitd     2341 www-data  cwd    DIR  253,6     4096    2 /var/lib/ecss/restfs

Видим какие процессы висят, и останавливаем их через kill -9 <PID>, либо, через остановку сервиса systemd.

Останавливаем ecss-restfs, т.к он используется /var/lib/ecss/glusterfs
sudo systemctl stop ecss-restfs


Проверяем статус остановленного сервиса
sudo systemctl status ecss-restfs
● ecss-restfs.service - nginx - high performance web server
Loaded: loaded (/lib/systemd/system/ecss-restfs.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Fri 2023-02-17 15:28:36 +07; 3s ago
Docs: http://nginx.org/en/docs/
Process: 24667 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/ecss-restfs-nginx.pid (code=exited, status=0/SUCCESS)
Process: 24251 ExecStart=/usr/sbin/ecss-restfs (code=exited, status=0/SUCCESS)
Process: 24212 ExecStartPre=/usr/sbin/ecss-restfs -t -q (code=exited, status=0/SUCCESS)
Main PID: 24253 (code=exited, status=0/SUCCESS)

фев 17 15:28:25 ecss1 systemd[1]: Starting nginx - high performance web server...
фев 17 15:28:25 ecss1 systemd[1]: Started nginx - high performance web server.
фев 17 15:28:35 ecss1 systemd[1]: Stopping nginx - high performance web server...
фев 17 15:28:36 ecss1 systemd[1]: Stopped nginx - high performance web server.
Убиваем оставшиеся процессы
sudo umount /dev/mapper/system-glusterfs
umount: /var/lib/ecss/restfs: target is busy.
sudo lsof /dev/mapper/system-glusterfs
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ecss-rest 24367 www-data cwd DIR 253,6 4096 2 /var/lib/ecss/restfs
sudo kill 24367
sudo lsof /dev/mapper/system-glusterfs
sudo umount /dev/mapper/system-gluster

Теперь раздел отмонтирован. Можно приступать к изменению размера.

Допустим, нам необходимо забрать 5ГБ от этого раздела, тогда воспользуемся командой

sudo lvresize --resizefs -L-5G /dev/mapper/system-glusterfs
Do you want to unmount "/var/lib/ecss/restfs" ? [Y|n] y
fsck from util-linux 2.31.1
/dev/mapper/system-glusterfs: /lost+found not found. CREATED.
/dev/mapper/system-glusterfs: 601/983040 files (0.5% non-contiguous), 99133/3932160 blocks
resize2fs 1.44.1 (24-Mar-2018)
Resizing the filesystem on /dev/mapper/system-glusterfs to 2621440 (4k) blocks.
The filesystem on /dev/mapper/system-glusterfs is now 2621440 (4k) blocks long.

Size of logical volume system/glusterfs changed from 15,00 GiB (3840 extents) to 10,00 GiB (2560 extents).
Logical volume system/glusterfs successfully resized.

Обязательно используйте ключ --resizefs или -r. Он используется для того, чтобы в момент изменения размера, сам LVM пересчитал итоговый размер и чтобы система определила этот раздел с правильным размером. 

Если же нужно добавить места, то после -L ставим +<необходимый размер>G

После всех проделанных процедур, снова подключаем раздел и включаем сервисы, которые выключали.

В результате имеем вот это
sudo mount -a
df -h
Filesystem                      Size  Used Avail Use% Mounted on
udev                            7,5G     0  7,5G   0% /dev
tmpfs                           1,6G  2,5M  1,6G   1% /run
/dev/mapper/system-root          30G   17G   12G  58% /
tmpfs                           7,6G     0  7,6G   0% /dev/shm
tmpfs                           5,0M     0  5,0M   0% /run/lock
tmpfs                           7,6G     0  7,6G   0% /sys/fs/cgroup
/dev/mapper/system-lib           30G  8,0G   20G  29% /var/lib
/dev/mapper/system-log          9,8G  5,4G  4,0G  58% /var/log
/dev/mapper/system-home          29G  956M   27G   4% /home
/dev/mapper/system-ecss--mysql   15G   54M   14G   1% /var/lib/ecss-mysql
/dev/mapper/system-mysql        9,8G  243M  9,0G   3% /var/lib/mysql
/dev/nvme0n1p1                  1,1G  4,4M  1,1G   1% /boot/efi
/dev/mapper/system-glusterfs    9,8G   43M  9,2G   1% /var/lib/ecss/restfs
sudo systemctl start ecss-restfs


  • Нет меток