Linux中連結分為哪兩種?它們有什麼區別?

老男孩IT教育機構發表於2022-01-04

  連結是指在電子計算機程式的各模組之間傳遞引數和控制命令,並把它們組成一個可執行的整體的過程。為解決檔案的共享使用,Linux系統中將連結分為兩種:一種是硬連結,另一種是符號連結,又叫做軟連結,接下來我們看看相關的內容介紹。

  硬連結

  硬連結指透過索引節點來進行連線。在Linux的檔案系統中,儲存在磁碟分割槽中的檔案不管是什麼型別都給它分配一個編號,稱為索引節點號。在Linux中,多個檔名指向同一索引節點是存在的,比如A和B的硬連結,則A的目錄項中的inode節點號與B的目錄項中的inode節點號相同,即一個inode節點對應兩個不同的檔名,兩個檔名指向同一個檔案,A和B對檔案系統來說是完全平等的。刪除其中任何一個都不會影響另外一個的訪問。

  硬連結的作用是允許一個檔案擁有多個有效路徑名,這樣使用者可以建立硬連結到重要檔案,以防止誤刪的功能。其原因是因為對應目錄的索引節點有一個以上的連結。只刪除一個連結並不影響索引節點本身和其它的連結,只有當最後一個連結被刪除後,檔案的資料塊及目錄的連結才會被釋放。也就是說,檔案真正刪除的條件是與之相關的所有硬連結檔案均被刪除。

  軟連結

  軟連結也被稱之為符號連結,也叫做軟連結。軟連結檔案類似於Windows的快捷方式,它實際上是一個特殊的檔案。在符號連線中,檔案實際上是一個文字檔案,其中包含的有另一檔案的位置資訊。比如:A是B的軟連結,A的目錄項中的inode節點號與B的目錄項中的inode節點號不相同,A和B指向的是兩個不同的inode,繼而指向兩塊不同的資料塊。但是A的資料塊中存放的只是B的路徑名。A和B之間是主從關係,如果B被刪除了,A仍然存在,但指向的是一個無效的連結。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2850587/,如需轉載,請註明出處,否則將追究法律責任。

相關文章