5

我必须更新 squashfs 图像文件中的一些文件。我在 Linux 中找到了一个工具,但在 Windows 中没有。

任何人都可以帮忙吗?

4

2 回答 2

7

Eirik 的回答解决了“解压缩”部分。我将为您提供Windows 中的整个squashfs-toolsunsquashfs.exe ,因此您可以“解压缩”( )和“压缩”(mksquashfs.exe)。

  1. 如果没有,请获取Cygwin 。
  2. 安装以下 Cygwin 软件包:
    • 如果您运行的是 32 位:
      • gcc-core
      • cygwin64-gcc-core
    • 如果您运行的是 64 位:
      • gcc-core
      • cygwin32-gcc-core
    • xz
    • liblzma5(不确定是否需要)
    • liblzma-devel
  3. 获取最新的 squashfs 源码
  4. 取消注释以下行squashfs-tools/Makefile
    • XZ_SUPPORT = 1
    • LZMA_XZ_SUPPORT = 1
  5. 在 Cygwin 控制台中,转到squashfs-tools目录并使用以下命令进行编译:

复制粘贴这个

make EXTRA_CFLAGS="-Dlinux -DFNM_EXTMATCH='(1<<5)' -D'sigtimedwait(a,b,c)=sigwaitinfo(a,b)'"
  1. 安装好旧的make install

现在您在 Cygwin 命令行中拥有了 squashfs 工具,就像它是 Linux 一样。如上所述,工具是unsquashfs.exemksquashfs.exe


这个答案的来源和学分:http: //domoticx.com/bestandssysteem-squashfs-tools-software/(荷兰语,我用谷歌翻译)

于 2017-11-19T02:01:53.147 回答
6

7-Zip能够打开 squashfs 图像并提取它们的文件。我在 Windows 10 上使用使用 xz 压缩的 squashfs 图像在 7-Zip 版本 15.14 [64 位] 上对此进行了测试。

创建存档时,7-Zip 似乎没有在存档格式中列出 squashfs,因此如果您想生成带有修改文件的 squashfs 图像,则需要查看其他地方。squashfs的Wikipedia 页面表明 mksquashfs 和 unsquashfs 已被移植到某些版本的 Windows(它还提到 7-Zip)。

André 的回答建议 Cygwin 作为从squashfs-tools. 适用于 Linux的Windows 子系统提供了另一种运行mksquashfsunsquashfs. 在我Ubuntu 14.04.4通过 WSL 运行的 Windows 10 系统上,安装了以下命令,squashfs-tools之后可以使用。mksquashfsunsquashfs

sudo apt install squashfs-tools

无论使用哪种方法squashfs-tools(Cygwin 或 WSL),都不需要 7-Zip 来更新 squashfs 映像中的文件。

于 2016-04-26T22:51:07.090 回答