准备工作
- 硬件要求
- 存储空间:目标磁盘容量 ≥ 源系统占用空间(通过
df -h
查看)。 - 外部介质:U 盘或移动硬盘(存放镜像文件)。
- 存储空间:目标磁盘容量 ≥ 源系统占用空间(通过
- 软件工具
- 必备工具:
dd
(原始磁盘克隆)、rsync
(增量备份)、tar
(文件归档)。 - 可选工具:Clonezilla(图形化克隆)、GParted(分区调整)。
- 必备工具:
- 启动环境
使用 Live USB(如 Ubuntu ISO)操作,避免锁定正在运行的系统。
方法 1:使用 dd
命令(全盘镜像)
适用场景:完整备份磁盘(含分区表、引导扇区),适合物理机迁移。
操作步骤:
- 识别磁盘设备:
sudo fdisk -l # 确认源磁盘(如 /dev/sda)和目标存储路径(如 /dev/sdb)
- 创建镜像文件:
sudo dd if=/dev/sda of=/path/to/backup.img bs=4M status=progress
if
:输入设备(源磁盘)of
:输出文件(镜像路径)bs
:块大小(加速传输)status=progress
:显示进度(需coreutils
v8.24+)
恢复镜像:
sudo dd if=/path/to/backup.img of=/dev/sda # 将镜像写入新磁盘
注意事项:
- 风险提示:错误指定
of
可能覆盖数据!操作前断开非必要磁盘。 - 压缩镜像:添加
gzip
压缩减少体积:sudo dd if=/dev/sda bs=4M | gzip > /path/to/backup.img.gz
方法 2:使用 rsync
(文件级镜像)
适用场景:灵活备份文件系统(排除临时文件),支持增量备份。
操作步骤:
- 挂载目标存储:
sudo mount /dev/sdb1 /mnt/backup # 将U盘挂载到 /mnt/backup
- 同步文件(保留权限、符号链接):
sudo rsync -aAXhv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /mnt/backup/
-aAX
:归档模式(保留属性、ACL、扩展属性)--exclude
:跳过虚拟文件系统和缓存
- 生成可引导镜像:
- 安装引导加载器(如 GRUB):
sudo grub-install --root-directory=/mnt/backup /dev/sdb
- 安装引导加载器(如 GRUB):
优势:
- 增量更新:再次运行命令仅同步修改文件。
- 跨文件系统兼容(如 ext4 → btrfs)。
方法 3:使用 Clonezilla(图形化工具)
适用场景:新手友好,支持网络存储和加密镜像。
操作步骤:
- 下载 Clonezilla Live ISO 并制作启动 U 盘。
- 从 U 盘启动,选择:
device_image → local_dev → 选择源磁盘 → 选择存储路径(如U盘)
- 选择镜像模式:
- 初学者模式:自动分区(推荐)
- 专家模式:自定义压缩率(gzip/zstd)和加密
- 完成备份:镜像保存为
.gz
文件(默认路径/home/partimag/
)。
恢复流程:启动 Clonezilla → 选择镜像 → 指定目标磁盘 → 自动还原。
验证镜像完整性
- 检查文件系统:
sudo fsck -f /path/to/backup.img # 针对dd生成的原始镜像
- 测试可引导性:
- 虚拟机加载镜像:
qemu-system-x86_64 -hda /path/to/backup.img
- 或使用 Ventoy 直接启动镜像文件。
- 虚拟机加载镜像:
安全与最佳实践
- 关键原则:
- 操作前用
sync
命令确保数据写入磁盘。 - 镜像存储于独立物理设备(非系统盘)。
- 操作前用
- 自动化备份:
- 结合
cron
定时运行rsync
脚本:0 3 * * * /path/to/backup-script.sh # 每天凌晨3点执行
- 结合
- 云存储方案:
- 使用
rclone
同步镜像至 AWS S3 或 Google Cloud。
- 使用
- 快速部署:
dd
适合全盘克隆(硬件一致场景)。 - 灵活备份:
rsync
推荐用于日常增量保护。 - 企业级需求:Clonezilla 支持大规模网络部署。
无论选择哪种方法,务必在非生产环境测试恢复流程,确保业务连续性。
引用说明:
- Linux
dd
命令文档:GNU Coreutils Manualrsync
官方指南:https://rsync.samba.org/documentation.html- Clonezilla 操作手册:https://clonezilla.org/show-live-doc-content.php
- 文件系统检查工具:
man fsck
(Linux man-pages 项目)
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7242.html