SquashFS 是一套基于Linux內核使用的壓縮只讀文件系統。該文件系統能夠壓縮系統內的文檔,inode以及目錄,文件最大支持2^64字節。
開發歷史
開發歷程
SquashFS最初作為Linux的一個非內核補丁進行維護,并于2002年10月23日發布初始版本1.0。
2009年,SquashFS被合并到Linux主線作為Linux 2.6.29的一部分。隨后,Linux內核陸續添加了對LZMA、LZO、LZMA2(由xz使用)、LZ4和Zstandard壓縮的支持。
Linux內核2.6.35添加了對擴展文件屬性的支持。unsquashfs和mksquashfs工具已被移植到Windows NT至Windows 8.1,而7-Zip也支持SquashFS。
版本迭代
Squashfs 4.2 : 最新的版本,并適用于2.6.29版本以后的Linux內核。
Squashfs 4.1 : 支持XZ壓縮,并適用于2.6.29版本以后的Linux內核。
Squashfs 3.4 : 該版本是3.X的最后一個版本,并適用于2.6.29版本之前的內核。
功能和服務
SquashFS是基于GPL協議的開源軟件。初始的版本使用gzip壓縮,2.6.34版本Linux內核增加了支持LZMA和LZO壓縮,并且在2.6.38內核版本上增加支持XZ壓縮。SquashFS支持的塊大小范圍從4 KiB到1 MiB,以實現更高的壓縮率。它旨在用于一般只讀文件系統和受限制的塊設備內存系統,如嵌入式系統,需要低開銷。
SquashFS被廣泛應用于多種Linux發行版的Live CD版本,如Arch Linux、Debian、fedora等,以及嵌入式系統如OpenWrt和DD-WRT路由器固件。它也用于Android系統分區和AppImage項目,后者旨在創建便攜式Linux應用程序。此外,SquashFS文件系統經常與聯合掛載文件系統結合使用,為Live Linux發行版提供讀寫環境。Snappy軟件包管理器使用SquashFS的“.snap文件格式”。
參考資料 >