閱讀903 返回首頁    go 阿裏雲 go 技術社區[雲棲]


“軟連接”和“硬鏈接”區別的解釋

使用ln命令創建鏈接,舉例說明:

#ln -sv /etc/fstab /root/demo 將/etc/fstab軟連接(也稱符號鏈接)到/root/demo(這裏的demo是事先不存在的,自己定義的名稱)

#ln /etc/fstab /root/demo2 這是硬鏈接方法;

從使用的角度上來看,軟鏈接和硬鏈接區別不是很大,都支持讀寫,如果是鏈接可執行的文件的話也可以直接執行;

硬鏈接:

 不允許給目錄創建硬鏈接;

 鏈接後的文件內容更改,那麼源文件內容也會隨之改變;

 硬鏈接相當於複製源文件到其他地方,占用同樣的空間;

 刪除源文件或鏈接後的文件,另外的源文件或鏈接後的文件依舊可用;(也就是說刪除其中一個,另一個會保留)

 兩個文件的inode值相同,都指向同一區塊;(#ls li查看文件索引節點號)

軟鏈接:

 可以對目錄或文件創建軟鏈接;

 鏈接後的文件內容更改,那麼源文件內容也會隨之改變;

 軟鏈接類似於windows的快捷方式;

 刪除鏈接後的文件不會影響源文件,但是如果刪除源文件那麼鏈接後的文件就會失效(如果刪除了源文件,你在更改鏈接後的文件內容,這個內容就會變成原來的源文件,盡量自己試一下,更能理解)

 兩個文件的inode值不同;

總結:

 硬鏈接:可以理解成複製,占用同樣的空間,刪除其中一個,並不會影響另一個,inode都指向同一個文件在硬盤中的區塊;

 軟鏈接:可以理解成windows快捷方式,用的較多;例如在生產環境中上下線web時,可以通過軟鏈接方式直接指向當前web路徑;

最後更新:2017-06-27 11:32:02

  上一篇:go  Centos6,7默認啟動模式的更改
  下一篇:go  KVM基礎安裝,手動創建橋