crontab 误删除恢复
crontab 误删除恢复
恢复操作
获取完整日志和cmd日志。从日志中恢复出一份最近几天的完整crontab 运行日志和cmd日志,并存储,用于之后完善和核准例行时间。
CentOS 系统的 crontab 任务的日志,打印在 /var/log/cron 之中。考虑过滤日志:
cat /var/log/cron* | grep CMD | awk -F'CMD' '{print $2}' | awk -F'[(|)]' '{print $2}' | sort -u
由此得到系统记录过的 crontab 执行命令,过滤其他账号的命令后即可追回目标账号的 crontab 任务。
反思工作
防止类似事件再次发生,写个简单shell脚本,每天对crontab进行备份,备份最近15天的数据。过期清楚
#!/bin/bash
# 每天对crontab 进行备份 ,同时删除最近15天的数据
DATE=$(date +%Y%m%d)
crontab -l > /home/work/bak/crontab_$DATE.bak
find /home/work/bak/ -mtime +15 -name '*.bak' -exec rm -rf {} \;
禁止crontab -r清空定时任务列表误操作
关于crontab
1、附件放/usr/bin目录下面
2、在/etc/bashrc文件末尾添加
aliascrontab='/usr/bin/cron.sh'
cron.sh作用
1、禁止crontab–r
2、每次编辑都备份cron列表到~/cronbak目录下面
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?