通過 mount –bind … 命令從 Debian 中的符號連結創建另一個符號連結
我有疑問如何從 Debian 下的另一個符號連結(使用 mount –bind 命令)創建符號連結。
它們是兩種情況:
第一種情況: 我在 /main/data 中有核心數據。在“數據”文件夾中有一些文件(文件夾、文件等)。我在其中創建了指向另一個文件夾的符號連結,例如:
mount –bind /main/data /user/admin
接下來創建另一個符號連結,不是來自核心文件夾,而是來自管理文件夾,例如:
mount –bind /user/admin /public/user1
一切正常,因為我創建了文件夾到文件夾的符號連結,但第二種情況:
**第二種情況:**我只想從 /main/data 掛載單個文件(通過使用 mount –bind 命令等),就像第一種情況一樣。首先是管理員,然後將整個文件夾掛載到 /user/admin 到 user1。首先,我需要在 /user/admin 中創建空白文件,然後安裝核心文件。工作良好的步驟 -範例:
觸摸 /user/admin/myNewFile.txt
mount –bind /main/data/information.txt /user/admin/myNewFile.txt
但最後一部分不起作用 -例如:
mount –bind /user/admin /public/user1
最後一個命令將文件夾從 /user/admin 掛載到 /public/user1,這會導致將所有文件和文件夾掛載在 /user/admin 中。在 /public/user1 中將出現“myNewFile.txt”,但該文件為空白,大小為 0。
問題是是否有任何 mount 命令選項可以正確安裝,或者是否有任何其他解決此問題的方法。
非常感謝您的建議。
該
mount --bind
命令創建綁定掛載,而不是符號連結;實際的符號連結是使用該ln -s
命令創建的。當您使用 時
mount --bind /main/data/information.txt /user/admin/myNewFile.txt
,您將一個文件系統的一部分(特別是一個文件)附加到另一個文件系統之上。儘管information.txt
now 的內容出現在myNewFile.txt
,但這仍然不會使該文件成為/user/admin
文件系統的一部分。通常沒關係,但對於你的最後一個命令,它會的。
mount --bind /user/admin /public/user1
對單個文件系統進行綁定掛載- 原始文件系統中的任何子掛載點都不會被複製……包括子掛載點/user/admin/myNewFile.txt
。如果您想使用綁定掛載複製整個目錄樹,包括任何現有的子掛載,例如您的
/usr/admin/myNewFile.txt
,那麼您必須mount --rbind
改用:mount --rbind /user/admin /public/user1
你的第二種情況類似於如果你第一次這樣做會發生什麼:
mount --bind /main/data /user/admin
接著:
mount --bind /user /mnt
如果你這樣做了,你可能會發現那
/mnt/admin
將是一個空目錄。(或者,如果有一些文件,你會發現它們肯定不是來自 的最新文件/main/data
,而是一些舊的垃圾,當有人試圖使用/user/admin
但沒有mount --bind /main/data /user/admin
先完成時。)進行正常掛載或
mount --bind
目錄掛載時,必須首先mkdir
在目標位置創建一個空目錄。然後 mount 命令將在該目錄的頂部附加其他內容。同樣,在mount --bind
為單個文件執行操作時,您必須首先touch
在目標位置創建一個空文件,以便 mount 命令附加一些內容。如果您mount --bind
是文件系統的那一部分,那麼您將看到那些底層的空目錄/文件,而不是原始文件系統/文件中已安裝的文件系統/文件。