Я обнаружил, что monit не может эффективно контролировать файловую систему. Я добавил файл /etc/monit.d/disk.cnf
со следующим содержимым:
check device disk1 with path /dev/root
if space usage > 85% then exec "/bin/custom-alert"
...И когда я monit reload
, журнал мониторинга сообщает мне:
[PST Jan 4 14:48:39] error : 'disk1' filesystem doesn't exist
[PST Jan 4 14:48:39] info : 'disk1' trying to restart
Хорошо, так что я cat /proc/cmdline
и узнать, что root=/dev/sda
, а затем я заменяю /dev/root
на /dev/sda
в моем disk.cnf
файле. Затем журнал мониторинга говорит мне:
[PST Jan 4 14:46:35] error : Device /dev/sda not found in /etc/mtab
[PST Jan 4 14:46:35] error : 'disk1' unable to read filesystem /dev/sda state
Действительно, /etc/mtab
ссылки /dev/root
вместо /dev/sda
.
Почему монитор не может получить доступ к файловой системе, когда я указываю /dev/root
или /dev/sda
на этой машине?
Дополнительная информация: df -h
выводит следующее:
Filesystem Size Used Avail Use% Mounted on
/dev/root 173G 146G 26G 85% /
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 3.2G 29G 11% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
tmpfs 6.3G 0 6.3G 0% /run/user/1000
решение1
Monit требует указания фактической точки монтирования.
Если вы пытаетесь получить корневую файловую систему, вам следует использовать /
.
check device root with path /
if SPACE usage > 85% then alert