备份 Linux 关键文件的核心思路是:明确“关键文件”范围 → 选择备份方式 → 定期执行并验证。下面按实用程度给你一套可落地的方案。
通常建议备份:
/etc(所有服务、网络、用户配置)/home(用户数据与配置文件)/root/boot(内核与引导)/var/lib/mysql、/var/lib/postgresql)/var/www)/var/spool/cron/usr/lib/systemd/system 或 /etc/systemd⚠️ 不建议直接整盘冷备份(除非用镜像),应先备份“可恢复的最小关键集”。
tar -czpf /backup/etc-home-$(date +%F).tar.gz /etc /home /root
-p 保留权限/var/www、/boot 等恢复:
tar -xpf backup.tar.gz -C /
适合定期同步到另一块盘或远程服务器
rsync -aAXH --delete /etc /home /root /mnt/backup/
参数说明:
-A 保留 ACL-X 保留 SELinux-H 保留硬链接远程备份:
rsync -aAXH /etc root@backup-server:/data/linux-backup/
不要直接 tar 数据库目录!
MySQL / MariaDB
mysqldump -u root -p --all-databases > db.sql
PostgreSQL
pg_dumpall > db.sql
timeshift --create --comments "manual backup"
Borg 示例
borg create /backup/repo::$(date +%F) /etc /home
优点:
✅ 推荐:
❌ 不推荐:
crontab -e
0 3 * * * rsync -aAXH /etc /home /mnt/backup/
如果你是个人服务器,这一行就够用:
tar -czpf /backup/linux-$(date +%F).tar.gz /etc /home /root /var/www
如果你愿意,我可以:
你现在是哪种使用场景?(个人 / 公司服务器 / 云主机)