dissect.squashfs#
A Dissect module implementing a parser for the SquashFS file system, commonly used in appliance or device firmware.
Installation#
dissect.squashfs
is available on PyPI.
$ pip install dissect.squashfs
This module is also automatically installed if you install the dissect
package.
This project has a dependency on python-lzo
. It will be installed by default, except on PyPy installations on Windows since no binary wheels are provided for that combination. If python-lzo
is not installed, it will fall back on a (slower) pure Python implementation provided by dissect.util. You can manually install python-lzo
(given you have the proper dependencies and build environment for that) to use the faster C-based implementation.
Usage#
This package is a library with no CLI tools, so you can only interact with it from Python. For example, to print a directory listing of the root directory and read a file:
from dissect.squashfs import SquashFS
fh = open_squashfs_volume_or_file() # i.e. using dissect.volume or open(path, "rb")
fs = SquashFS(fh)
print(fs.get("/").listdir())
file_fh = fs.get("/file.txt").open() # This is just another file-like object
print(file_fh.read())
Reference#
For more details, please refer to the API documentation of dissect.squashfs
.