全志 H3 armbian 备份

在一台 H3(全志 H3,ARM 开发板) 上已经安装并配置好 Debian / Armbian

现在希望完整克隆到另一台同型号的设备上,系统、配置、软件、数据都保持一样。


🧩 一、推荐方案:用 dd 做整盘镜像克隆(最完整)

🔧 适合:目标设备与原设备硬件完全相同(H3 同型号主板)。

💾 优点:系统、分区、引导、配置全部克隆,一模一样。


🔹 步骤:

1️⃣ 把源设备的系统盘插到电脑(或通过USB转接)

假设系统盘是 /dev/mmcblk0/dev/sda

2️⃣ 创建镜像文件(在 Linux 主机上):
bash 复制代码
sudo dd if=/dev/mmcblk0 of=/mnt/backup/armbian-h3.img bs=1M status=progress
  • if= 输入(源磁盘)
  • of= 输出(镜像文件路径)
  • bs=1M 设定块大小(提速)
  • status=progress 显示进度

你也可以顺便压缩保存:

bash 复制代码
sudo dd if=/dev/mmcblk0 bs=1M | gzip > /mnt/backup/armbian-h3.img.gz
3️⃣ 在目标设备上恢复:

将镜像写回目标设备:

bash 复制代码
sudo dd if=/mnt/backup/armbian-h3.img of=/dev/mmcblk0 bs=1M status=progress

或(若镜像是压缩的):

bash 复制代码
gzip -dc /mnt/backup/armbian-h3.img.gz | sudo dd of=/dev/mmcblk0 bs=1M status=progress
4️⃣ 启动测试:
  • 插入克隆好的卡 / eMMC 启动;
  • 系统会直接进入与原机器相同的 Armbian / Debian 环境;
  • 如果 MAC 地址或主机名冲突,可稍作修改(见下方)。

🔹 补充调整(可选):

项目 文件路径 建议
主机名 /etc/hostname + /etc/hosts 改成唯一名称
SSH host key /etc/ssh/ssh_host_* 可删除后重启自动生成
网络配置 /etc/network/interfaces/etc/NetworkManager/system-connections/ 适配新设备

🧰 二、方案 2:用 rsync 文件级克隆(可跨硬件)

🔧 适合:目标设备硬件不同、分区大小不同,或者你想要更灵活的克隆方式。

1️⃣ 在目标板上准备 Armbian 系统(同版本),启动一次;

2️⃣ 在源板上执行:

bash 复制代码
sudo rsync -aAXHv \
  --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} \
  / root@目标板IP:/mnt/target/

3️⃣ 在目标上重装引导:

bash 复制代码
sudo grub-install /dev/mmcblk0
sudo update-grub

这样就可以完成系统级别的复制,但不涉及分区表、引导扇区。


🧱 三、方案 3:用 Armbian 自带工具(如果有)

某些 Armbian 版本带有:

bash 复制代码
sudo armbian-config

里有 System → Install → Clone system to eMMC / SD / USB

可以直接将系统从 SD 卡复制到另一个介质,非常方便。

不过这一般用于同一设备内部,不太适合跨设备网络克隆。


✅ 最终建议

目标 推荐方案 说明
硬件完全相同(同一型号 H3) dd 镜像法 最简单可靠,一模一样
硬件不同(例如 H5 / RK3328) ⚙️ rsync 文件同步 兼容性好,可调整系统
想复制到 eMMC / U 盘 🧩 armbian-config 工具 官方安全方案

🧩 一、你的 .img 文件本质上是什么

当你用这条命令创建镜像:

bash 复制代码
sudo dd if=/dev/mmcblk0 of=/mnt/backup/armbian-h3.img bs=1M status=progress

它生成的是一个磁盘级的镜像,包含:

  • 分区表(MBR 或 GPT)
  • boot 分区(u-boot、kernel、dtb)
  • root 分区(完整系统)
  • 以及所有系统数据、配置、用户文件

也就是说:

这个 .img 文件 = 你整张 SD 卡 / eMMC 的"字节级快照"。

它和 Armbian 官方的 Armbian_*.img 一样,可以直接烧录。


💾 二、如何烧录到另一台 H3 板子

✅ 方法 1:使用 dd(Linux 主机)

bash 复制代码
sudo dd if=/path/to/armbian-h3.img of=/dev/sdX bs=1M status=progress
sync

其中:

  • if= 是镜像文件路径
  • of= 是目标 SD 卡 或 eMMC 设备,比如 /dev/sdb/dev/mmcblk0
  • bs=1M 表示一次写 1MB,加快速度
  • status=progress 显示进度条
  • sync 确保数据写入完毕

烧录完成后,把卡插入新机器,直接上电即可启动。


✅ 方法 2:用图形化工具(Windows / macOS)

你也可以像烧录官方 Armbian 一样用:

  • 🧰 Balena Etcher
  • 🧰 Raspberry Pi Imager
  • 🧰 Win32 Disk Imager
  • 🧰 dd for Windows

只要选择你的 armbian-h3.img 文件,

目标选中 SD 卡,一键烧录。

完成后插入板子 → 就能启动原系统环境。


⚠️ 三、注意事项

注意点 说明
💾 镜像大小 镜像会和原 SD 卡容量一样大,比如你源卡是 16GB,那镜像就是 16GB
🧱 目标卡大小 必须 ≥ 源卡容量(即使系统只用了 3GB)
🧩 不同容量卡 若目标卡更大,可用 gparted 扩容 root 分区
🕹️ MAC / 主机名 若多台板子联网使用,请修改 /etc/hostname/etc/hosts
🔑 SSH 密钥 删除 /etc/ssh/ssh_host_* 后重启,让系统自动重新生成新密钥

🌟 四、可选:压缩镜像以节省空间

如果你打算保存或传输备份文件,可以压缩:

bash 复制代码
gzip -c /mnt/backup/armbian-h3.img > /mnt/backup/armbian-h3.img.gz

恢复时解压并烧录:

bash 复制代码
gzip -dc /mnt/backup/armbian-h3.img.gz | sudo dd of=/dev/sdX bs=1M status=progress

总结:

任务 工具 命令/方法
生成镜像 dd dd if=/dev/mmcblk0 of=armbian-h3.img bs=1M
烧录镜像 dd / Etcher dd if=armbian-h3.img of=/dev/sdX bs=1M
压缩保存 gzip gzip -c armbian-h3.img > armbian-h3.img.gz
解压还原 gzip -dc `gzip -dc armbian-h3.img.gz dd of=/dev/sdX bs=1M`

相关推荐
无限码农18 分钟前
Linux上通过cmake编译uchardet
linux·运维·服务器
灯琰11 小时前
STM32F4+W5500 移植与开发常见问题
网络
运维大师1 小时前
【Linux运维极简教程】06-网络配置与管理
linux·运维
ACP广源盛139246256732 小时前
IX8024@ACP# 搭配此芯 AI 服务器 + 爱芯元智产品完整方案
大数据·运维·服务器·人工智能·分布式·嵌入式硬件
qyr67893 小时前
全球新能源汽车电机驱动器市场深度调研报告
大数据·网络·人工智能·自动化·汽车
Hiyajo pray3 小时前
SDN 访问控制性能调优方法
服务器·网络·网络安全
初晴融雪-快雪时晴3 小时前
网络硬件全景梳理:从光纤到手机,一张网是如何连接的?
网络·智能手机·智能路由器
探索云原生4 小时前
终于搞懂 Kueue:5 个核心对象一次讲透
linux·docker·ai·云原生·kubernetes
huainingning5 小时前
交换机通过ftp下载文件或者传输文件到ftp服务器
运维·服务器·网络
An_s5 小时前
机器学习python之识别图中物品信息
java·linux·开发语言