以下是为 Ubuntu 18.04.6 LTS 系统备份和恢复的详细指南,包含命令行和图形界面两种方案:
一、备份方案
方法 1: 使用 tar 命令(推荐)
# 进入根目录
cd /
# 创建排除列表(根据需要调整)
sudo nano exclude.txt
------------------------
/proc/*
/sys/*
/tmp/*
/mnt/*
/media/*
/lost+found/*
/run/*
/var/cache/*
/var/tmp/*
/var/lib/docker/*
/home/*/.cache/*
/home/*/Downloads/*
*.log
------------------------
# 创建全系统备份
sudo tar -cvpzf backup_$(date +%F).tar.gz -X exclude.txt /
方法 2: 使用 rsync(增量备份推荐)
sudo rsync -aAXhv --progress --delete \
--exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} \
/ /mnt/backup/
方法 3: 使用 Timeshift(图形界面)
- 安装:
sudo apt install timeshift
- 启动后在 GUI 中选择:
- 备份类型:RSYNC(推荐)或 BTRFS
- 设置备份频率和保留策略
- 建议备份到外置存储设备
二、恢复方案
情境 1: 系统仍然可启动
# 解压 tar 备份
sudo tar -xvpzf backup.tar.gz -C / --numeric-owner
情境 2: 系统无法启动
- 使用 Ubuntu Live USB 启动
- 挂载原系统分区:
sudo mount /dev/sda1 /mnt sudo mount /dev/sda2 /mnt/boot/efi # 如果是 UEFI 系统
- 执行恢复:
# 使用 rsync 恢复 sudo rsync -aAXhv --progress /mnt/backup/ /mnt/ # 或使用 tar 恢复 sudo tar -xvpzf backup.tar.gz -C /mnt --numeric-owner
- 重建引导:
sudo chroot /mnt grub-install /dev/sda update-grub exit
使用 Timeshift 恢复
- Live USB 中安装 Timeshift:
sudo apt install timeshift
- 启动后选择备份快照恢复
- 需指定原系统分区位置
三、关键注意事项
-
存储建议:
- 至少保留 3 个历史备份
- 备份到外部存储或网络存储
- 使用 3-2-1 原则(3份备份,2种介质,1份异地)
-
系统变化后需重新备份:
- 内核更新后
- 安装/删除大型软件包
- 修改分区结构后
-
恢复测试建议:
- 每年至少执行一次恢复演练
- 在虚拟机验证备份有效性
四、各方案对比
方法 | 优点 | 缺点 | 适用场景 |
---|---|---|---|
tar | 完整系统镜像 | 占用空间大 | 完整系统迁移 |
rsync | 增量快/灵活 | 需要手动设置 | 频繁备份/服务器 |
Timeshift | 图形化/自动计划 | 依赖 GUI | 桌面用户日常使用 |
dd | 全盘克隆 | 需相同磁盘大小 | 硬件迁移/全盘复制 |
五、高级建议
- 对关键配置文件(如 /etc/)建议单独备份:
sudo apt install etckeeper
- 数据库服务需先停止或使用 dump 工具
- 云服务器建议结合快照功能
建议根据实际需求选择组合方案(如:Timeshift + rsync),并配合 cron 实现自动化定时备份。