当前位置: 首页 > news >正文

Linux中使用计划任务和tar命令实现文件备份

Linux中使用计划任务和tar命令实现文件备份

1. 创建备份脚本

首先编写一个备份脚本 backup.sh,使用tar命令打包文件:

#!/bin/bash# 定义备份目录和文件名格式
BACKUP_DIR="/path/to/backup/folder"
SOURCE_DIR="/path/to/source/folder"
DATE=$(date +%Y%m%d)
FILENAME="backup_$DATE.tar.gz"# 创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR# 执行备份
tar -czf $BACKUP_DIR/$FILENAME $SOURCE_DIR# 删除7天前的旧备份
find $BACKUP_DIR -type f -name "backup_*.tar.gz" -mtime +7 -delete

参数说明:

  • -czf:创建gzip压缩的tar文件
  • -mtime +7:查找7天前的文件
  • -delete:删除匹配的文件
2. 设置脚本权限
chmod +x backup.sh

3. 配置计划任务(使用crontab)
  1. 编辑当前用户的crontab:
crontab -e

  1. 添加以下行(示例为每天凌晨2点执行):
0 2 * * * /path/to/backup.sh

cron时间格式说明:

* * * * *
| | | | |
| | | | +---- 星期几 (0-7) 0和7都表示周日
| | | +------ 月份 (1-12)
| | +-------- 日期 (1-31)
| +---------- 小时 (0-23)
+------------ 分钟 (0-59)

4. 验证配置
  • 查看当前计划任务:
crontab -l

  • 测试脚本执行:
./backup.sh

5. 高级选项
  1. 增量备份(使用tar的增量标志):
tar -g /path/to/snapshot.file -czf backup.tar.gz /source

  1. 备份验证(添加校验步骤):
tar -tf $BACKUP_DIR/$FILENAME > /dev/null && echo "备份验证成功"

  1. 邮件通知(添加邮件提醒):
echo "备份完成:$FILENAME" | mail -s "备份报告" user@example.com

注意事项
  1. 确保脚本中的路径存在且具有读写权限
  2. 使用绝对路径避免cron执行错误
  3. 测试备份文件是否可正常解压:
tar -tzf /path/to/backup.tar.gz

  1. 监控磁盘空间,避免备份占满磁盘

此方案通过Linux内置的cron服务实现定时任务,配合tar命令完成高效的文件备份,适合日常自动化运维场景。

http://www.lryc.cn/news/618688.html

相关文章:

  • 模拟人脑处理文本——从段落到时间线叙事,再到动画
  • 【PCB设计经验】去耦电容如何布局?
  • C++ 学习与 CLion 使用:(二)using namespace std 语句详解,以及 std 空间的标识符罗列
  • 【python实用小脚本-182】Python一键爬取今日新闻:5分钟生成Word+CSV——再也不用复制粘贴
  • 【web站点安全开发】任务2:HTML5核心特性与元素详解
  • 02-Ansible 基本使用
  • Python day42
  • 【运维进阶】Ansible 自动化
  • [激光原理与应用-250]:理论 - 几何光学 - 透镜成像的优缺点,以及如克服缺点
  • TensorBoard的使用 小土堆pytorch记录
  • centos 怎么部署 vscode 网页版
  • 半精度模型(16位)解析
  • TRO风暴预警GoPro携BSF律所重拳打击跨境侵权
  • QT6 如何在Linux Wayland 桌面系统抓屏和分享屏幕
  • 使用Excel制作甘特图
  • 将黑客拒之物联网网络之外的竞赛
  • 5G毫米波现状概述(截止2025 年7月)
  • ROS教育中自动驾驶机器人的技术融合与技术创新
  • 门店销售机器人的认知革命:当传统机械邂逅Deepoc具身智能
  • CVPR 2025丨机器人如何做看懂世界
  • 开疆智能Ethernet转ModbusTCP网关连接发那科机器人与三菱PLC配置案例
  • RoboNeo美图AI助手
  • 如何区分类的关系是关联和聚合?
  • Java工厂模式
  • 【图像算法 - 13】基于 YOLO12 与 OpenCV 的实时目标点击跟踪系统(系统介绍 + 源码详细)
  • mysql 简单操作手册
  • springboot+JPA
  • Socket 套接字常用方法
  • 知名车企门户漏洞或致攻击者远程解锁汽车并窃取数据
  • 外卖投诉:差评转复购的3步攻略