温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样备份用Shell脚本实现

发布时间:2026-11-08 21:26:30 来源:亿速云 阅读:93 作者:小樊 栏目:系统运维

下面按常见场景给你讲几种用 Shell 脚本备份 的方法和示例,你可以直接套用或修改。


一、最基础的备份(文件/目录)

示例:备份 /data 目录

#!/bin/bash

SRC=/data
DST=/backup/data_$(date +%Y%m%d).tar.gz

tar -czf $DST $SRC

echo "备份完成: $DST"

赋予执行权限:

chmod +x backup.sh
./backup.sh

二、自动按日期保留备份(推荐)

#!/bin/bash

BACKUP_DIR=/backup
SRC=/data
DATE=$(date +%Y%m%d)

tar -czf $BACKUP_DIR/data_$DATE.tar.gz $SRC

# 只保留最近7天备份
find $BACKUP_DIR -name "data_*.tar.gz" -mtime +7 -delete

三、数据库备份(以 MySQL 为例)

#!/bin/bash

USER=root
PASS=yourpassword
DB=testdb
DATE=$(date +%Y%m%d)

mysqldump -u$USER -p$PASS $DB > /backup/$DB_$DATE.sql

# 压缩
gzip /backup/$DB_$DATE.sql

⚠️ 生产环境建议用配置文件存密码,避免明文。


四、远程备份(scp / rsync)

使用 rsync(增量备份,推荐)

rsync -avz /data/ user@192.168.1.100:/backup/

使用 scp

scp -r /data user@192.168.1.100:/backup/

五、结合 crontab 定时执行

编辑定时任务:

crontab -e

每天凌晨 2 点执行:

0 2 * * * /root/backup.sh

六、备份脚本常用增强功能

  • 日志输出
  • 失败邮件通知
  • 判断磁盘空间
  • 校验备份完整性

如果你告诉我:

  • 要备份什么(文件 / 数据库 / 服务器)
  • 本地还是远程
  • Linux 还是 macOS

我可以直接帮你写一份完整可用的备份脚本。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手