栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

定时备份crontab 计划任务 与 crontab文件误删还原 linux 持续更新

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

定时备份crontab 计划任务 与 crontab文件误删还原 linux 持续更新

  1. 利用crontab 用户计划任务存储文件进行备份

crontab 文件存储目录为/var/spool/cron

脚本地址

[root@iZwz96wz957owmvqecj6osZ scripts]# cat crontab_backup.sh 
#!/usr/bin/bash

#Tate:2022.3.24
#Author:Yingjian
#function: 定时备份root、普通用户计划任务
#必须为root用户执行 sudo用户 请在所有的命令前在sudo
#env

workdir=`cd $(dirname $0);pwd`
same_day=`date +%F`
seven_day_age=`date -d '-7 day' "+%F"`
backup_dir=/data/backup

cat > $workdir/user_list.txt << EOF
root
EOF

while read line
do
cp -ar /var/spool/cron/$line $backup_dir/$line-$same_day
done < $workdir/user_list.txt

find $backup_dir -iname "*-$seven_day_age" -exec rm -rf {} ;

计划任务

10 0 * * * /usr/bin/bash /data/scripts/crontab_backup.sh
  1. 使用crontab -l重定向生成备份文件
    脚本地址
[root@iZwz96wz957owmvqecj6osZ scripts]# cat crontab_backup_v2.sh 
#!/usr/bin/bash

#Tate:2022.3.24
#Author:Yingjian
#function: 定时备份root、普通用户计划任务
#必须为root用户执行 sudo用户 请在所有的命令前在sudo
#env

workdir=`cd $(dirname $0);pwd`
same_day=`date +%F`
seven_day_age=`date -d '-7 day' "+%F"`
backup_dir=/data/backup

cat > $workdir/user_list.txt << EOF
root
EOF

while read line
do
#cp -ar /var/spool/cron/$line $backup_dir/$line-$same_day
/bin/crontab -l > $backup_dir/$line-$same_day
done < $workdir/user_list.txt

find $backup_dir -iname "*-$seven_day_age" -exec rm -rf {} ;

计划任务如上

本文参考:https://blog.csdn.net/hittata/article/details/7713072
本文参考:https://blog.51cto.com/wutengfei/2287467

总结:当没有做计划任务备份时,可以去找到crontab 计划任务执行日志中过滤去重,日志路径为:/var/log/cron

cat /var/log/cron |cut -d " " -f 6- |sort |uniq  获取当天执行的计划任务

效果如下

当没有备份crontab文件时 可使用上述方式 恢复计划任务

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/835727.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号