
在 OS/2 下存在“多倫多虛擬檔案系統”,它允許將多個目錄組合成一個目錄。當您存取現有文件時,虛擬文件系統(VFS)會知道在哪裡尋找真實文件。如果您建立了一個新文件,它將在指定的指定目錄之一中建立該文件。
這允許將 HD 上的目錄和 CD 上的目錄組合起來,其中所有存取都會轉到 CD,除非存取的檔案也在 HD 上或已更改,否則將使用 HD。
我一直很喜歡這個想法,並希望在 Windows 或 Linux 下有類似的東西,但我找不到類似的東西。有人可以幫忙嗎?
答案1
您正在尋找某種聯合檔案系統。
在 Linux 上,overlayfs 是開箱即用的。還有 UnionFS 和 AUFS。合併檔案系統這略有不同,因為它將根據配置的策略在來源目錄之間分配寫入,但我提到它是為了完整性。
使用overlayfs掛載/media/cdrom
並~/work-in-progress
作為聯合目錄~/cdrom-union
:
mount -t overlay overlay -o lowerdir=/media/cdrom,upperdir=$HOME/work-in-progress,workdir=$HOME/workdir ~/cdrom-union
我在參數中使用$HOME
not 來確保 shell 正確解析路徑。~
-o
~/workdir
是一個工作目錄,overlayfs 在內部使用它進行操作。根據以下規定,它必須與上層目錄位於同一檔案系統上拱門維基。
不幸的是,我對 Windows 方面的事情並不熟悉。
答案2
在Linux中,您可以使用硬連結、軟連結或綁定掛載。
在 Windows 中,您可以使用硬連結、軟連結、連接點或掛載點。