Squashfs is a Linux filesystem that compresses data and can only be read, making it perfect for purpose-built systems.
Some of the key features include full compression of data, inodes, and directories. Squashfs also stores full uid/gids (32 bits) and file creation time. File sizes up to 2^32 bytes are supported, and the filesystem can be up to 2^32 bytes as well. The inode and directory data are highly compacted and packed on byte boundaries, with each compressed inode being an average of 8 bytes in length.
Squashfs also supports block sizes up to 64K, which achieves greater compression ratios than the normal 4K block size. Additionally, file duplicates are detected and removed, and both big and little endian architectures are supported. The mksquashfs program can generate filesystems for different endian architectures for cases where the host byte ordering is different from the target, making it an excellent choice for embedded systems.
This new release has many improvements to the filesystem itself, including bigger blocks and sparse files, as well as enhancements to the tools Mksquashfs and Unsquashfs. These tools now support wildcard pattern matching in exclude/extract files, a feature that adds even more flexibility to an already incredible filesystem. Overall, Squashfs is an excellent choice for anyone looking for a powerful, read-only filesystem with plenty of features and flexibility.
Version 3.4: N/A