我写了一个脚本,用于在我登录时使用shell脚本检查linux机器中的磁盘空间。 现在,如果我没有登录该机器,但如果磁盘空间超过阈值(ex:80)我需要提醒,这意味着我该如何检查?
1.使用ssh(远程命令执行) 2.Run作为后台脚本。
哪一个更有效率?
或者还有其他想法吗?
我不想直接/间接地进行任何类型的登录。即。我甚至不想使用ssh keygen存储密钥。它应该像网页一样工作,任何新系统,但没有任何安全调整
请告诉我。
答案 0 :(得分:0)
cron计划是一个很好的起点。它可以在任何Linux系统上使用,并且可以设置为定期运行程序。如果程序产生错误消息,通常会通过电子邮件将其发送到创建cron作业的帐户。
答案 1 :(得分:0)
用于检查磁盘使用情况和CPU使用情况的脚本
ALERT=60
df命令用于检查可用磁盘列表及其属性。这里我们获取Filesystem信息并获取文件系统名称和文件用法 系统通过awk命令。接下来获取值我们剪切%符号并仅获取整数。然后我们检查警报消息的条件。
df -H | grep -vE '^Filesystem' | awk '{ print $5 " " $1 }' | while read output; do
usep=$(echo $output | awk '{ print $1}'| cut -d '%' -f1 )
partition=$(echo $output | awk '{ print $2 }' )
if [ $usep -ge $ALERT ]; then
echo "Alert: Almost out of disk space $usep $partition $HOSTNAME"
fi
done
这是我为检查磁盘空间而编写的脚本。 然后我在终端中给crontab -e命令将脚本添加到文件中。现在已经分配了新的cron作业。我设置了每1小时执行一次的cronjob来监视磁盘空间检查。
所以,现在我无法收到消息通知。如果我没有登录该机器,如何获取有关磁盘空间检查的信息?
脚本中是否有任何需要改进的地方?