Дисковое пространство, контролирующее с Zabbix, в то время как дескриптор файла / дескриптор все еще открываются

Недавно я столкнулся с ситуацией, когда "стандартный" неудавшийся контроль дискового пространства - Zabbix использует vfs.fs.size объект для проверки использования диска, которое зарегистрировано и предварительно сконфигурировано в связанных шаблонах.

Проблема:

Когда файлы удалены, но дескриптор файла / дескриптор все еще открыт - диск мог бы быть заполнен, но Zabbix не сообщит ни о каком использовании в этом случае.

Как можно контролировать дисковое пространство в этом случае?

0
задан 3 September 2015 в 13:23
1 ответ

Вот тест, который я проделал:

df /
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1       15350768 14367976    809124  95% /

Я создаю файл 600 Мб и открываю его с меньшим объемом:

dd if=/dev/zero of=test bs=1024k count=600 & less test
[1] 1952
"test" may be a binary file.  See it anyway? 600+0 records in
600+0 records out
629145600 bytes (629 MB) copied, 11.895 s, 52.9 MB/s
[1]+  Done                    dd if=/dev/zero of=test bs=1024k count=600

Теперь df показывает, что используется больше места:

df /
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1       15350768 14981664    195436  99% /

теперь, если я удалю свой тестовый файл:

rm test 

df говорит:

df /
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1       15350768 14981712    195388  99% /

так что пространство все еще используется, мы можем увидеть его с lsof | grep удалено:

lsof |grep deleted|grep test
less       1953             mick    4r      REG                8,1  629145600       5407 /tmp/test (deleted)

теперь, если я остановлюсь меньше:

pkill less

df show что диск используется бесплатно:

df /
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1       15350768 14367584    809516  95% /

Я думаю, ваша проблема больше связана с неправильной интерпретацией df из-за процента, зарезервированного для root.

Из последнего df общий минус использованный минус доступный равен:

15350768-14367584-809516=173668

Так что, возможно, ваш у пользователя есть ошибка переполнения диска, но root все еще может записывать на диск, и Zabbix не увидит, что диск заполнен из-за того, что процент зарезервирован для root.

Вы можете проверить и изменить это с помощью tune2fs

1
ответ дан 4 December 2019 в 16:50

Теги

Похожие вопросы