Linux命令 硬連結和符號連結
阿新 • • 發佈:2020-09-16
連結
建立連結的方式
- 建立硬連結
ln file link
- 建立符號連結
ln -s item link
item 可以是檔案也可以是目錄
硬連結
- 檔名本身就是一個硬連結,當建立額外的硬連結就相當與給檔案又起了個名字
fun檔案的第2個欄位說明它有1個連結,檔案至少有一個連結。
- 硬連結和檔案本身沒什麼區別
這裡我們建立了一個硬連結fun-hard。使用ls -i選項可以看檔案的索引節點號,fun和fun-hard的索引節點號相同,證明二者是同一個檔案。
- 刪除任何一個硬連結不會刪除檔案本身,除非它是檔案的最後一個硬連結
符號連結
硬連結的不足:
- 不能引用不在同一磁碟分割槽的檔案
- 不能引用目錄
符號連結是一種特殊的檔案,它包含了指向目標檔案或目錄的文字指標。
- 符號連結類似於windows中的快捷方式,可以把它當作其指向的檔案使用
- 刪除檔案後,指向該檔案的符號連結依然存在,但是不指向任何檔案,變成壞連結
- 符號連結其實就是儲存了目標檔案的地址(絕對地址或者相對與連結的地址)
可以看到第五個欄位為6,這是符號連結的檔案長度,其實就是“../fun”。
注意這裡目標檔案的地址是相對於建立的符號連結的,而不是相對於當前路徑,因為這個地址是要儲存在符號連結對應的文字檔案的。
所以應該寫成“../fun”而不是“./fun”。