Linux

掛載 squashfs 是否會將整個文件系統放在 RAM 中?

  • June 10, 2021

情況:我有一個更大(> 10GB)的小文件只讀集合,其中包含大量重複項,我需要在多台機器上使用它們,即使在不同的文件系統上也是如此。我們可以假設 Linux 核心 > 5.3.0。

一種解決方案是將它們放入 squashfs 映像文件中,在創建時使用重複數據刪除和 zstd 壓縮,然後掛載它。現在,只有在掛載並不意味著所有文件都需要放入 RAM 時,這才對我有用。

像這樣安裝壓縮的 squashfs 文件系統總是完全解壓縮到 RAM 的業務嗎?

掛載 squashfs 文件系統不涉及將其解壓縮到記憶體中;必要時會即時進行減壓。有一個小的內部記憶體可以避免重複解壓縮相同的數據,但僅此而已。

squashfs 文件系統最多可以儲存 2個 64字節的數據,因此在掛載時完全解壓縮它們是不切實際的。

引用自:https://unix.stackexchange.com/questions/653624