軟鏈接與硬鏈接的區別

  • 定義:
    軟鏈接:又叫符號鏈接,這個文件包含了另一個文件的路徑名。可以是任意文件或目錄,可以鏈接不同文件系統的文件。
    硬鏈接:就是一個文件的一個或多個文件名。把文件名和計算機文件系統使用的節點號鏈接起來。因此我們可以用多個文件名與同一個文件進行鏈接,這些文件名可以在同一目錄或不同目錄。

  • 最本質的區別是:
    軟鏈接:不是同一個文件
    硬鏈接:同一個文件,多個名字

  • 是否可以跨分區:
    軟鏈接:可以
    硬鏈接:不可以,只能在同一個分區創建(跨分區造成文件節點編號不同)

  • 創建語法格式:
    軟鏈接:n -s 源文件 鏈接名
    硬鏈接:ln 源文件 鏈接名

  • 是否可以基於文件夾創建
    軟鏈接:可以
    硬鏈接:不可以(避免嵌套造成死循環)

  • inode:
    軟鏈接:獨立於源文件
    硬鏈接:與源文件是同一個inode

  • 鏈接數:
    軟鏈接:始終爲1
    硬鏈接:文件實際引用鏈接數,每增加一個文件名,inode節點上的鏈接數增加一,每刪除一個文件名,inode節點上的鏈接數減一,直到爲0,inode節點和對應的數據塊被回收。

  • 相對路徑:
    軟鏈接:相對路徑是相對於軟鏈接所在目錄的相對路徑
    硬鏈接:相同

  • 文件類型
    軟鏈接:符號鏈接
    硬鏈接:文件

  • 文件大小:
    軟鏈接:只有符號佔用的大小
    硬鏈接:實際文件的大小

  • 刪除後的表現:
    硬鏈接:刪除一個文件並不影響其他有相同 inode 號的文件。
    軟鏈接:刪除軟鏈接並不影響被指向的文件,如果被引用的源文件被刪除,則該軟連接將失效,無法被正常使用,若被指向路徑文件被重新創建,則可恢復爲正常的軟鏈接。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章