如何在Windows中处理squashf

Sri*_*ary 3 squashfs python-2.7

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

有人可以帮忙吗?

Eir*_*ler 6

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

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

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

sudo apt install squashfs-tools
Run Code Online (Sandbox Code Playgroud)

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


And*_*lla 5

Eirik的答案解决了“解压缩”部分。我将为您提供Windows中的整个squashfs工具,因此您可以“解压缩”(unsquashfs.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)'"
Run Code Online (Sandbox Code Playgroud)
  1. 安装好旧 make install

现在,您可以在Cygwin命令行中使用squashfs工具,就像Linux一样。如上所述,工具为unsquashfs.exemksquashfs.exe


此答案的来源和功劳: http : //domoticx.com/bestandssysteem-squashfs-tools-software/(荷兰语,我使用过Google Translate)