一、实验想法
根分区剩余空间小于20%
发送告警邮件给自己
配合crond每5分钟检查一次脚本
二、实验思路
1.查看自己的内存大小,用df -h
2.切出内存的大小
3.创建脚本文件并编辑
4.编辑邮箱的配置文件
5.设置自动运行的脚本
三、步骤
[root@server ~]# df -h
文件系统 大小 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 708M 0 708M 0% /dev/shm
tmpfs 283M 4.3M 279M 2% /run
tmpfs 4.0M 0 4.0M 0%
/dev/mapper/openeuler-root 6.1G 1.6G 4.1G 28% / 这里的28%就是内存使用的大小
tmpfs 708M 0 708M 0% /tmp
/dev/sda1 974M 179M 728M 20% /boot
[root@server ~]# df -h | grep -w /
/dev/mapper/openeuler-root 6.1G 1.6G 4.1G 28% /
[root@server ~]# df -h | grep -w / | tr -s " " | cut -d " " -f 5
28%
[root@server ~]# df -h | grep -w / | tr -s " " | cut -d " " -f 5 | cut -d % -f 1
28
[root@server ~]# vim /root/script/3.sh
free_mem=`df -h | grep -w / | tr -s "" "" | cut -d " " -f5 | cut -d % -f 1 `
mem=$[100-free_mem] 使用变量设置剩余内存的大小
if [ $mem - gt 20 ]
then
echo 你的内存过载 | mail -s " 紧急处理" 邮箱地址 编辑要发送的邮箱地址
fi
[root@server ~]# vim /etc/mail.rc 配置自己的邮箱(让本机写的脚本登录上你自己的邮箱)
set from=************@**.com
set smtp=smtp.163.com
set smtp-auth-user=************@**.com
set smtp-auth-password=授权码
5set smtp-auth=login
[root@server ~]# systemctl start crond (这里启动不了就是没有下载crond)
[root@server ~]# crontab -e 使用crond编辑自动定时任务
*/5 * * * * /bin/bash /root/script/3.sh
[root@server ~]# bash /root/script/3.sh 运行脚本文件