市场上有很多用来监控 Linux 系统的监控工具,当系统到达阀值后它将发送一封邮件。它监控所有的东西例如 CPU 利用率、内存利用率、交换空间利用率、磁盘空间利用率等等。然而,它更适合小环境和大环境。
想一想如果你只有少量系统,那么什么是最好的方式来应对这种情况。
是的,我们想要写一个 shell 脚本 来实现。
在这篇指南中我们打算写一个 shell 脚本来监控系统的磁盘空间使用率。当系统到达给定的阀值,它将给对应的邮件地址发送一封邮件。在这篇文章中我们总共添加了四个 shell 脚本,每个用于不同的目的。之后,我们会想出其他 shell 脚本来监控 CPU,内存和交换空间利用率。
在此之前,我想澄清一件事,根据我观察的磁盘空间使用率 shell 脚本使用情况。
大多数用户在多篇博客中评论说,当他们运行磁盘空间使用率脚本时他们获得了以下错误。
-
# sh /opt/script/disk-usage-alert-old.sh -
/dev/mapper/vg_2g-lv_root -
test-script.sh: line 7: [: /dev/mapper/vg_2g-lv_root: integer expression expected -
/ 9.8G
是的,这是对的。甚至,当我第一次运行这个脚本的时候我遇到了相同的问题。之后,我发现了根本原因。
当你在基于 RHEL 5 & RHEL 6 的系统上运行包含用于磁盘空间警告的 df -h 或 df -H 的 shell 脚本中时,你会发现上述错误信息,因为输出格式不对,查看下列输出。
为了解决这个问题,我们需要用 df -Ph (POSIX 输出格式),但是默认的 df -h 在基于 RHEL 7 的系统上运行的很好。
-
# df -h

本文介绍了如何编写四个不同的Linux Shell脚本来监控磁盘空间使用情况,并在达到预设阀值时自动发送邮件警告。脚本适用于不同场景,包括监控所有文件系统、仅发送一封综合警告邮件等。通过设置cronjob,可以实现定时检查和通知,确保及时发现磁盘空间问题。
最低0.47元/天 解锁文章
133

被折叠的 条评论
为什么被折叠?



