在Linux系統中存在硬鏈接和
軟連接兩種文件。- 硬鏈接(hard link):可以將它理解為一個"指向原始文件inode的指針",系統不為它分配獨立的inode和文件。所以,硬鏈接文件與原始文件其實是同一個文件,只是名字不同。我們每添加一個硬鏈接,該文件的inode連接數就會增加1;而且只有當該文件的inode連接數為0時,才算徹底將它刪除。換言之,由於硬鏈接實際上是指向原文件inode的指針,因此即便原始文件被刪除,依然可以通過硬鏈接文件來訪問。需要注意的是,由於技術的侷限性,我們不能跨分區對目錄文件進行鏈接。
- 軟鏈接(也稱為符號鏈接[symbolic link]):僅僅包含所鏈接文件的路徑名,因此能鏈接目錄文件,也可以跨越文件系統進行鏈接。但是,當原始文件被刪除後,鏈接文件也將失效,從這一點上來說與Windows系統中的"快捷方式"具有一樣的性質。
ln命令:
ln命令用於創建鏈接文件,格式為"ln [選項] 目標";
ln命令中可用的參數以及作用:
- -s:創建“符號鏈接”(如果不帶-s參數,則默認創建硬鏈接);
- -f:強制創建文件或目錄的鏈接;
- -i:覆蓋前先詢問;
- -v:顯示創建鏈接的過程;
軟鏈接示例:文件刪除後不能再訪問
硬鏈接示例:文件刪除後還可以訪問,同時原始文件的硬盤鏈接數量增加到了2。
閱讀更多 hnyztcl 的文章