我从物联网设备中提取了根文件系统,并且能够使用unsquashfs仔细阅读它。然后我更改了单个文件中的单个字节,并使用 mksquashfs 再次重新压缩它。当我检查两个文件(原始文件和我创建的文件(时,binwalk 的输出是相同的,只是大小不同。原始版本的大小为 1038570 字节,而我创建的字节大小为 1086112。我不知道额外的数据来自哪里。是否有任何工具或方法可以确定差异是什么?
所以事实证明我在创建压缩文件系统时缺少一个标志。 使用 xz 压缩器方法时,可以指定另一个标志 -Xbcj,该标志进一步压缩每个体系结构的优化。一旦我添加了这个并选择 arm 作为我的架构,文件大小是相同的