在Ubuntu 20.04 LTS系统中备份和恢复数据或整个系统可以通过多种方式实现,以下是分步指南:
一、备份方法
1. 文件级备份(重要数据)
适用于备份 /home
目录或其他关键文件。
(1) 使用 rsync
(增量备份)
sudo apt install rsync
rsync -av --delete /path/to/source /path/to/backup
-a
:归档模式(保留权限、属性)-v
:显示详细过程--delete
:同步删除源目录中已删除的文件- 示例:
rsync -av --delete /home/user /mnt/backup
(2) 使用 tar
(压缩打包)
tar -cvpzf backup-$(date +%Y%m%d).tar.gz --exclude=/proc --exclude=/sys --exclude=/tmp --exclude=/mnt --exclude=/dev /
-c
:创建新存档-z
:使用gzip压缩-p
:保留文件权限--exclude
:排除不需要备份的目录- 建议将生成的
.tar.gz
文件保存到外部设备。
2. 系统级备份(完整系统快照)
(1) Timeshift(推荐)
Timeshift 提供类似系统还原点的功能。
sudo apt install timeshift
# 启动图形界面并配置备份位置和策略
timeshift &
- 默认保存到外部磁盘或独立分区。
- 支持定时自动备份。
(2) DD命令(全盘克隆)
警告:误操作可能导致数据丢失!
sudo dd if=/dev/sdX of=/path/to/backup.img bs=4M status=progress
if
:输入设备(如系统盘/dev/sda
)of
:输出文件或设备- 仅适用于完全相同的硬件环境恢复。
3. 自动化备份工具
- Deja Dup(集成到GNOME)
通过图形界面配置备份到本地磁盘、网络存储或云服务(如Google Drive)。sudo apt install deja-dup
二、恢复方法
1. 文件级恢复
-
解压
tar
备份tar -xvpzf backup.tar.gz -C /restore/path
-
使用
rsync
还原rsync -av /path/to/backup /path/to/restore
2. 系统级恢复
(1) 使用 Timeshift
- 启动 Timeshift(如果系统无法启动,使用Live USB)。
- 选择备份快照并还原。
(2) 使用 DD 镜像恢复
sudo dd if=/path/to/backup.img of=/dev/sdX bs=4M status=progress
3. 从 Live USB 恢复系统(严重故障时)
- 制作Ubuntu Live USB。
- 启动后选择“Try Ubuntu”。
- 挂载原系统分区:
sudo mount /dev/sdXn /mnt
- 使用
chroot
进入原系统环境:sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo chroot /mnt
- 执行修复操作或还原备份。
三、注意事项
- 定期验证备份:确保备份文件可读且完整。
- 存储位置:备份保存到外部磁盘、网络存储或云服务。
- 加密敏感数据:使用
gpg
加密备份文件:gpg -c backup.tar.gz
- 自动化脚本:通过
cron
定时执行备份任务:crontab -e # 每天凌晨2点备份 0 2 * * * /path/to/backup-script.sh
四、推荐方案
- 日常使用:Timeshift + Deja Dup(系统快照 + 用户文件备份)
- 服务器环境:
rsync
增量备份到远程存储 +tar
定期全量备份。
通过上述方法,您可以根据需求灵活选择备份策略,并在系统故障时快速恢复。