Squashfs(.sfs)是一套供Linux核心使用的GPL開源唯讀壓縮檔案系統。Squashfs能夠為檔案系統內的檔案inode目錄結構進行壓縮,並支援最大1024千位元組的塊大小,以提供更大的壓縮比。

SquashFS
開發者Phillip Lougher, Robert Lougher
發佈2009 (Linux 2.6.29)
限制
最大檔案尺寸16 EiB
最大卷容量16 EiB
功能
透明壓縮gzip LZMA LZO LZMA2 LZ4 Zstandard
作業系統支援Linux (可跨平台)

Squashfs的設計是專門為一般的唯讀檔案系統的使用而設計,它可應用於數據備份,或是系統資源緊張的電腦上使用。最初版本的Squashfs採用 gzip 的數據壓縮。版本 2.6.34 之後的Linux內核增加了對 LZMA[1]LZO [2]壓縮演算法的支援,版本 2.6.38 的內核增加了對LZMA2的支援,該演算法同時也是xz使用的壓縮演算法。[3]

Linux 3.19及更新的內核中,Squashfs增加了LZ4壓縮支援。[4]

Linux 4.14及更新的內核中,Squashfs增加了Zstandard壓縮支援。[5]

版本 2.6.35 之後的內核包含的Squashfs增加了擴充檔案屬性支援。[6]

用途

Squashfs常被用於各Linux發行版LiveCD中,也用於OpenWrtDD-WRT 的路由器韌體。Chromecast也是該檔案系統的用戶。在LiveCD中,Squashfs通常與UnionFSOverlayFSaufs等聯合掛載檔案系統結合使用,以便在LiveCD系統中提供可讀寫支援。Appimage專案也使用Squashfs作為鏡像。

外部連結

參考文獻

  1. ^ Official Squashfs LZMA. Squashfs-lzma.org. [2012-11-08]. (原始內容存檔於2012-10-29). 
  2. ^ Linux 2 6 34 - Linux Kernel Newbies. Kernelnewbies.org. [2012-11-08]. (原始內容存檔於2012-11-03). 
  3. ^ Linux 2 6 38 - Linux Kernel Newbies. Kernelnewbies.org. [2012-11-08]. (原始內容存檔於2012-11-16). 
  4. ^ Merge of LZ4 Squashfs support頁面存檔備份,存於互聯網檔案館) to Linus Torvalds tree.
  5. ^ squashfs: Add zstd support · torvalds/linux@87bf54b. GitHub. [2018-04-15]. (原始內容存檔於2023-10-28). 
  6. ^ Linux 2 6 35 - Linux Kernel Newbies. Kernelnewbies.org. [2012-11-08]. (原始內容存檔於2020-01-08).