簡體   English   中英

如何使用鏈接在Linux上創建目錄的副本

[英]How to create a copy of a directory on Linux with links

我在Linux上有一系列目錄,每個目錄包含大量文件和數據。 這些目錄中的數據是自動生成的,但是多個用戶需要對該數據執行更多分析並生成更多文件,更改結構等。

由於這些數據目錄非常大,我不希望有幾個人制作原始數據的副本,所以我想復制一個目錄並從新目錄鏈接到原始數據。 但是,我希望任何更改只保留在新目錄中,並保留原始只讀。 我不想只鏈接我定義的特定文件,因為這些目錄中的數據是如此多樣化。

所以我想知道是否有辦法通過鏈接到原始目錄來創建目錄的副本,但只保留新目錄中的任何更改的文件。

事實證明這就是我想要的:

cp -al <origdir> <newdir>

它將復制整個目錄並創建指向原始文件的硬鏈接。 如果刪除原始文件,則復制的文件仍然存在,反之亦然。 這將完美地工作,但我發現newdir必須不存在。 只要原始文件是只讀的,您就可以創建原始目錄的相同安全副本。

但是,由於您正在尋找人們可以回寫更改的方式,因此UnionFS可能就是您要尋找的。 它提供了將只讀和讀寫位置組合成一個的方法。

Unionfs允許任何混合的只讀和讀寫分支,以及在扇出中的任何地方插入和刪除分支。


本來我打算推薦這個(我經常使用它):

假設權限不是問題(例如,只需要閱讀),我建議將它們綁定到位。

mount -B <original> <new-location>
# or
mount --bind <original> <new-location>

<new-location>必須作為文件夾存在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM