全志 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`

相关推荐
我叫汪枫5 分钟前
《HTTP 实战:常用调试工具与抓包技巧》
网络·网络协议·http
googleccsdn35 分钟前
ENSP Pro Lab笔记:配置STP/RSTP/MSTP(4)
网络·笔记·网络协议
稚辉君.MCA_P8_Java36 分钟前
Java 基本数据类型 - 四类八种
java·linux·后端·mysql·架构
东木君_36 分钟前
芯外拾遗第二篇:编译、工具链、烧录,你真的搞懂了吗?
linux·单片机·操作系统·嵌入式
虚伪的空想家1 小时前
HUAWEI A800I A2 aarch64架构Ubuntu服务器鲲鹏920开启 IOMMU/SMMU 硬件虚拟化功能
linux·服务器·ubuntu
河南博为智能科技有限公司1 小时前
十六串口服务器-解决多设备联网难题
大数据·运维·服务器·人工智能·物联网·边缘计算
eeeasen1 小时前
FnOS(0.9.32版本) --usb无线网卡(RTL8xxxu)调试
网络
赖small强1 小时前
[Linux] 内核链表实现详解
linux·内核链表·双向循环链表·list.h·list_head
Linux技术芯1 小时前
浅谈kswapd按照什么原则来换出页面的底层原理
linux
獭.獭.1 小时前
Linux -- 线程控制
linux·pthread·线程分离·线程取消·线程局部存储·lwp·线程栈