systemctl list-timers --all 查看所有定时器状态。systemctl status <timer-name> 查看特定定时器详情。journalctl -u <service-name> 查看定时器关联服务的执行日志。TimeoutSec 设置超时时间,超时后触发失败处理。OnFailure 指令指定失败时的操作(如重启服务、执行脚本)。# 示例:监控磁盘空间,超过90%时发送邮件
DISK_USAGE=$(df -h / | awk 'NR==2{print $5}' | cut -d'%' -f1)
if [ $DISK_USAGE -ge 90 ]; then
echo "磁盘空间不足!当前使用率:${DISK_USAGE}%" | mail -s "磁盘告警" admin@example.com
fi
需先安装邮件服务:sudo apt install mailutils。rsyslog 或 syslog-ng 监控关键日志文件,触发异常时发送告警。cron + 邮件脚本(简单直接,适合基础告警)。Prometheus+Grafana(支持多维度监控、告警收敛与可视化)。inotifywait(配合定时器监控文件/目录变化)。chmod +x /path/to/script.sh。/etc/systemd/system/ 目录,并执行 systemctl daemon-reload 重新加载配置。参考来源: