如何在Ubuntu上挂载squashfs(嵌入式linux)?

如何在Ubuntu上挂载squashfs(嵌入式linux)?

我尝试从固件(嵌入式 Linux)挂载文件系统,但在我的 Ubuntu 12.04 机器上失败了。你能告诉我如何挂载该文件系统吗? (或失败的可能原因)。详情如下。

细节

步骤1)使用binwalk分析固件显示squashfs文件系统的起始地址。因此,我使用“dd”linux实用程序生成了squashfs文件系统。

步骤2)使用“binwalk ./fs.img”命令对生成的文件系统进行分析显示:

Squashfs filesystem, big endian, lzma signatrue, version 3.0, size: XXXXXXX bytes, XXX inodes, blocksize: XXXXX bytes, created: xxxx

步骤3)“mount -o Loop ./fs.img ./fs”失败。 “dmesg | tail”显示:

SQUASHFS error: Can't find a SQUASHFS superblock on loop1

我怎样才能挂载该文件系统?仅供参考,我从“sourceforge.net/procjects/squashfs”安装了带有lzma 支持的最新squashfs-tools。

答案1

我遇到了同样的问题。由于我的配置不支持zlib,因此我使用了xz压缩,因为我的配置支持它。以下工作有效:

mksquashfs source source.sqfs -comp xz
mount source.sqfs destination

相关内容