0

0

Linux 自动化备份与调度实现

冰川箭仙

冰川箭仙

发布时间:2026-02-16 10:27:10

|

516人浏览过

|

来源于php中文网

原创

crontab 备份不生效主因是环境差异:需用绝对路径、显式调用 bash、重定向日志;rsync 增量备份须用 --dry-run 预览、--delete-after 保安全;时间戳变量要加双引号;远程传输需免密 ssh 和断点续传;数据库备份须应用层快照。

linux 自动化备份与调度实现

crontab 定时执行备份脚本总不生效?检查这几点

不是脚本写得不对,而是 crontab 的运行环境和你终端里根本不是一回事。它默认没有 $PATH,不读取 ~/.bashrc,连 which rsync 都可能返回空。

  • 所有命令路径必须写绝对路径:用 which rsyncwhich tar 查出真实路径,比如 /usr/bin/rsync,别写 rsync
  • 脚本开头加 #!/bin/bash,并在 crontab 里显式调用 /bin/bash /path/to/backup.sh
  • 重定向输出到日志:0 2 * * * /bin/bash /opt/backup.sh >> /var/log/backup.log 2>&1,否则失败了你也看不到错误
  • 测试时先用 run-parts 或手动执行一遍脚本,确认权限(chmod +x)和路径都 OK

rsync 增量备份怎么避免删错文件?

rsync--delete 很危险——它只看「源端没有但目标端有」就删,一旦源路径配错或挂载失败,目标备份目录可能被清空。

  • 永远先加 --dry-run 看预览:rsync -av --dry-run --delete /data/ /backup/data/
  • --delete-after 而非 --delete,确保同步完成后再删,降低中间态风险
  • 对关键目录加 --exclude,比如排除临时文件:--exclude='*.tmp' --exclude='/cache/'
  • 目标目录末尾的斜杠不能少:/backup/data/ 是“进目录”,/backup/data 是“覆写目录本身”,差一个字符行为完全不同

备份文件怎么带时间戳又不搞乱命名逻辑?

date 生成时间戳时,如果没引号包裹,shell 会把带空格的结果拆成多个参数,导致 tar 报错 tar: Cowardly refusing to create an empty archive

先锋多用户商城系统
先锋多用户商城系统

修改自网上仿乐购商城,新增功能:1、数据库在线备份与导入功能,可以随时备份数据库,数据受损可以导入数据库,确保数据安全;2、增加组合商品概念,可以用于组配商品销售(比如外套有蓝色和红色,鞋子有40码和41码等),买一送一、组合销售(比如上衣+围巾+长裙做为一个套装商品)和加价购买等销售方式;3、按照商品重量和送货距离实时计算精确运费,并可在订单中予以显示,使运费金额实现实时动态准确显示、清晰明了;

下载
  • 时间戳变量必须用双引号:TS="$(date +%Y%m%d_%H%M%S)",然后用 "backup_${TS}.tar.gz"
  • 避免在文件名里用冒号(:),某些文件系统不支持;用下划线或短横线更稳妥
  • 如果要保留最近 7 天备份,别用 find /backup -name "*.tar.gz" -mtime +7 -delete 直接删——-mtime 看的是修改时间,而 tar 包解压后内容时间可能更早;改用 -ctime 或直接按文件名解析日期

本地备份够用吗?scp 传远程总断连怎么办

scp 在 crontab 里传备份,最常见问题是 SSH 连接被中断或需要交互输密码——crontab 不支持 tty,ssh 会卡住或报 Pseudo-terminal will not be allocated

  • 必须配置免密登录:用 ssh-keygen -t ed25519 生成密钥,ssh-copy-id user@remote 推过去,禁用密码登录
  • 加超时和重试:用 timeout 600 scp -o ConnectTimeout=30 -o ServerAliveInterval=60 backup.tar.gz user@remote:/backup/
  • 更稳的方式是换 rsync over sshrsync -avz -e "ssh -o StrictHostKeyChecking=no" /local/ user@remote:/remote/,自带断点续传
  • 远程磁盘空间不足时,scp 不报明确错误,只会静默失败;建议传完加一步 ssh user@remote 'df -h /backup | tail -1' 检查剩余空间

真正麻烦的不是调度或传输,而是备份一致性——比如 MySQL 正在写数据时直接 tar /var/lib/mysql,大概率恢复不了。这类场景得配合 mysqldumpmysqlbackup 做应用层快照,不是加个 crontab 就算完事。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

678

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

371

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

284

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

519

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

263

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

392

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

537

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

636

2023.08.14

pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

283

2026.02.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 9.2万人学习

Git 教程
Git 教程

共21课时 | 3.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号