Oracle Linux下每天10:00扫描"/",空间占用超过80%时发邮件提醒用户

这个任务涉及到Crontab, mailx,下面逐个介绍。

Crontab

Linux运行后,默认会启动守护进程crond,crond进程会定期执行crontab配置的命令

sudo service crond status

/etc/cron.allow: 白名单。只有在该文件中的用户可以使用crontab。

/etc/cron.deny: 黑名单。在该名单中的用户不能使用crontab。

假如这两个文件都不存在,则只有superuser能使用crontab。

经试验证明,同时在两个文件中的该用户可以使用crontab。


编辑用户的crontab配置

crontab -e
crontab配置文件保存在/var/spool/cron/<user_name>。

crontab格式

# Minute   Hour   Day of Month       Month          Day of Week        Command    
# (0-59)  (0-23)     (1-31)    (1-12 or Jan-Dec)  (0-6 or Sun-Sat)                
    0        2          12             *                *            /usr/bin/fin
/: 前表示起始,表示间隔。

*: 匹配所有

, 给出一个列表。

- 给出一个闭区间。

20-30/1 1 * * * echo "its lunch time" >> ~/cronout.txt 

表示每天凌晨01:20 - 01:30这个闭区间内,每隔一分钟执行一次。

查看crontab

crontab -l


预定义crontab

  • /etc/cron.hourly
  • /etc/cron.daily
  • /etc/cron.weekly
  • /etc/cron.monthly

将需要执行的脚本放入上述目录即可定期执行。

mailx

-s subject

mailx -s "Disk space is over 80% full" xxx@163.com


最终代码如下:

[oracle@odilab ~]$ crontab -l
0 10 * * * ~/3.sh

vi ~/3.sh
#!/bin/sh
if [[ `df -h | grep "/$" | awk "{print $4}"` > "80%" ]];  then
        mailx -s "Disk space is over 80% full" xxx@163.com
fi




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值