步骤 1:准备工作
确认分区顺序:确保文件名中的数字代表了原始设备的分区顺序。例如,
mmcblk0p1_backup.img
是第一个分区,mmcblk0p2_backup.img
是第二个分区,依此类推。GPT分区表文件:
mmcblk0_GPT.img
是GPT分区表的备份文件,它定义了磁盘的结构和每个分区的位置。
步骤 2:合并镜像文件
为了合并所有的分区镜像文件,我们可以使用cat
命令将这些文件按照顺序合并为一个完整的磁盘镜像。
以下是具体操作步骤:
合成完整镜像:
创建一个新的空镜像文件,并使用
cat
命令将GPT分区表和每个分区镜像文件依次合并到该文件中:sh
复制代码
cat mmcblk0_GPT.img \ mmcblk0p1_backup.img \ mmcblk0p2_backup.img \ mmcblk0p3_backup.img \ mmcblk0p4_backup.img \ mmcblk0p5_backup.img \ mmcblk0p6_backup.img \ mmcblk0p7_backup.img \ mmcblk0p8_backup.img \ mmcblk0p10_backup.img \ mmcblk0p11_backup.img \ mmcblk0p12_backup.img \ mmcblk0p13_backup.img \ mmcblk0p14_backup.img \ mmcblk0p15_backup.img \ mmcblk0p16_backup.img \ mmcblk0p17_backup.img \ mmcblk0p18_backup.img \ mmcblk0p19_backup.img \ mmcblk0p20_backup.img \ mmcblk0p21_backup.img \ mmcblk0p22_backup.img \ mmcblk0p23_backup.img \ mmcblk0p24_backup.img \ mmcblk0p25_backup.img \ mmcblk0p26_backup.img > mmc_full_combined.img
这将把所有分区文件和GPT分区表按顺序合并到一个新的文件
mmc_full_combined.img
中。检查合成结果:
使用
ls -lh
命令查看合成后的镜像文件大小,以确保其大小看起来合理。sh
复制代码
ls -lh mmc_full_combined.img
步骤 3:写入目标设备
合成镜像后,可以使用dd
命令将其写入目标设备:
sh
复制代码
dd if=mmc_full_combined.img of=/dev/sdX bs=4M status=progress
请将/dev/sdX
替换为你实际的目标设备路径。
步骤 4:验证镜像
写入完成后,验证镜像是否正确写入:
查看分区表:
使用
fdisk
或parted
命令检查目标设备的分区表,确保分区信息与预期一致:sh
复制代码
fdisk -l /dev/sdX
检查文件系统:
使用
fsck
命令检查每个分区的文件系统:sh
复制代码
fsck -f /dev/sdX1 fsck -f /dev/sdX2 # 对每个分区执行相同的操作
总结
通过将GPT分区表和各个分区镜像文件按顺序合并,可以创建一个完整的磁盘镜像。之后可以使用dd
命令将其写入目标设备,并验证写入的准确性和完整性。
AX京东云 镜像备份合并
cat mmcblk0p1_0SBL1.bin \
mmcblk0p2_0BOOTCONFIG.bin \
mmcblk0p3_0BOOTCONFIG1.bin \
mmcblk0p4_0QSEE.bin \
mmcblk0p5_0QSEE_1.bin \
mmcblk0p6_0DEVCFG.bin \
mmcblk0p7_0DEVCFG_1.bin \
mmcblk0p8_0RPM.bin \
mmcblk0p9_0RPM_1.bin \
mmcblk0p10_0CDT.bin \
mmcblk0p11_0CDT_1.bin \
mmcblk0p12_0APPSBLENV.bin \
mmcblk0p13_0APPSBL.bin \
mmcblk0p14_0APPSBL_1.bin \
mmcblk0p15_0ART.bin \
mmcblk0p16_0HLOS.bin \
mmcblk0p17_0HLOS_1.bin \
mmcblk0p18_rootfs.bin \
mmcblk0p19_0WIFIFW.bin \
mmcblk0p20_rootfs_1.bin \
mmcblk0p21_0WIFIFW_1.bin \
mmcblk0p22_rootfs_data.bin \
mmcblk0p23_0ETHPHYFW.bin \
mmcblk0p24_plugin.bin \
mmcblk0p25_log.bin \
mmcblk0p26_swap.bin > merged_image.bin