POWERED BY RBSOFT

Centos. Кто сожрал место на диске?

> Linux
Дата обновления: 23 мая 2024 г. Дата публикации: 23 мая 2024 г. Автор: Стрекаловский Александр

Рано или поздно на сервере может исчерпаться свободное дисковое пространство. Это в свою очередь приводит к неполадкам в работе програмного обеспечения.

Для своевременной реакции на такие случаи рекомендуем применять систему мониторинга zabbix, которая сообщает о проблемах на сервере, например о скором исчерпании свободного места.

Тут мы видим, что на сервере N01 в разделе /mnt/data осталось мало места.

Команда df
Заходим на сервере по SSH и вводим команду df -h

Команда выводит информацию о занятости дисковых разделов. Параметр -h позволяет выводить информация в более «человеческом» формате.

[root@n01 bainov]# df -h
Файловая система              Размер Использовано  Дост Использовано% Cмонтировано в
devtmpfs                         36G            0   36G            0% /dev
tmpfs                            36G            0   36G            0% /dev/shm
tmpfs                            36G         3,6G   32G           11% /run
tmpfs                            36G            0   36G            0% /sys/fs/cgroup
/dev/mapper/centos-root         197G         7,0G  180G            4% /
/dev/sda1                       976M         189M  721M           21% /boot
/dev/mapper/nsk--volume-SSDvm   394G         357G   18G           96% /mnt/SSDvm
/dev/mapper/NSK_data-data       686G         650G  2,1G          100% /mnt/data
tmpfs                           7,1G         152K  7,1G            1% /run/user/1000
tmpfs                           7,1G          72K  7,1G            1% /run/user/1001
tmpfs                           7,1G          56K  7,1G            1% /run/user/0

Видим, что на в каталоге /mnt/data осталось всего 2Гб из 686Гб.

Команда du
Для определения виновника пожирания места в каталоге /mnt/data, вводим команду du -hs /mnt/data/*

[root@n01 bainov]# du -hs /mnt/data/*
86M     /mnt/data/backup
129M    /mnt/data/ftp
12G     /mnt/data/ISO
16K     /mnt/data/lost+found
637G    /mnt/data/vm

Мы видим, что больше всего места занимает каталог /mnt/data/vm

Продолжаем исследование: du -hs /mnt/data/vm/*

[root@n01 bainov]# du -hs /mnt/data/vm/*
289M    /mnt/data/vm/n01v01m-chr.qcow2
203G    /mnt/data/vm/n01v24u18-web.qcow2
3,1G    /mnt/data/vm/n01v25c7-oldsite.qcow2
91G     /mnt/data/vm/n01v26u18-test.qcow2
3,1G    /mnt/data/vm/n01v27c-proxy.qcow2
49G     /mnt/data/vm/n01v29c-freepbx.qcow2
36G     /mnt/data/vm/n01v30w12-test.qcow2
34G     /mnt/data/vm/n01v50c7-csites.qcow2
221G    /mnt/data/vm/n01v54w12-specuslugi03.qcow2
3,4M    /mnt/data/vm/n01v55u180-scites.qcow2

Если бы файлов было много, то лучше бы было сразу отсортировать результат:

du -hs /mnt/data/vm/* | sort -rn

[root@n01 vm]# du -hs /mnt/data/vm/* | sort -rn
289M    /mnt/data/vm/n01v01m-chr.qcow2
221G    /mnt/data/vm/n01v54w12-specuslugi03.qcow2
203G    /mnt/data/vm/n01v24u18-web.qcow2
91G     /mnt/data/vm/n01v26u18-test.qcow2
49G     /mnt/data/vm/n01v29c-freepbx.qcow2
36G     /mnt/data/vm/n01v30w12-test.qcow2
34G     /mnt/data/vm/n01v50c7-csites.qcow2
3,4M    /mnt/data/vm/n01v55u180-scites.qcow2
3,1G    /mnt/data/vm/n01v27c-proxy.qcow2
3,1G    /mnt/data/vm/n01v25c7-oldsite.qcow2

В данном случае, встает вопрос об увеличении дискового пространства. Для обеспечения корректной работы необходимо удалить несущественные файлы. Например, из каталога /mnt/data/ISO

Смотрим, что там у нас есть: du -hs /mnt/data/ISO/* | sort -rn

[root@n01 vm]# du -hs /mnt/data/ISO/* | sort -rn
919M    /mnt/data/ISO/CentOS-7-x86_64-Minimal-1810.iso
835M    /mnt/data/ISO/ubuntu-18.04.2-live-server-amd64.iso
302M    /mnt/data/ISO/virtio-win-0.1.141.iso
44M     /mnt/data/ISO/chr-6.42.11.img.zip
5,1G    /mnt/data/ISO/SW_DVD9_Windows_Svr_Std_and_DataCtr_2012_R2_64Bit_Russian_-4_MLF_X19-82917.ISO
3,1G    /mnt/data/ISO/server_2008_r2_ru_oem_5clt.iso
1,7G    /mnt/data/ISO/SNG7-FPBX-64bit-1805-2.iso

Выводы
Таким образом, мы определили главных виновников пожирания места, и готовы приступить к дальнейшим действиям: либо переместить/удалить какие-то файлы, уменьшить размер, добавить дисковое пространство и т.п.
Решаем удалить все образы дистрибутивов из каталога /mnt/data/ISO, так как их при необходимости всегда можно закачать.

rm -f /mnt/data/ISO/*
Проверяем, что у нас теперь с дисками:

[root@n01 vm]# df -h
Файловая система              Размер Использовано  Дост Использовано% Cмонтировано в
devtmpfs                         36G            0   36G            0% /dev
tmpfs                            36G            0   36G            0% /dev/shm
tmpfs                            36G         3,6G   32G           11% /run
tmpfs                            36G            0   36G            0% /sys/fs/cgroup
/dev/mapper/centos-root         197G         7,0G  180G            4% /
/dev/sda1                       976M         189M  721M           21% /boot
/dev/mapper/nsk--volume-SSDvm   394G         357G   18G           96% /mnt/SSDvm
/dev/mapper/NSK_data-data       686G         643G  8,5G           99% /mnt/data
tmpfs                           7,1G         152K  7,1G            1% /run/user/1000
tmpfs                           7,1G          72K  7,1G            1% /run/user/1001
tmpfs                           7,1G          56K  7,1G            1% /run/user/0

Видим, что ситуация немного улучшилась. Система zabbix перестала ругаться на нехватку места. Но это временно :), поэтому идем покупать новые диски для установки на сервер.