軟鏈結和硬鏈結

2021-07-30 22:01:47 字數 1481 閱讀 8162

一、硬鏈結

ln 原檔案 目標檔案

注意:inode

要解釋清楚兩者的區別和聯絡需要先說清楚 linux 檔案系統中的 inode 這個東西。當劃分磁碟分割槽並格式化的時候,整個分割槽會被劃分為兩個部分,即inode區和data block(實際資料放置在資料區域中)這個inode即是(目錄、檔案)檔案在乙個檔案系統中的唯一標識,需要訪問這個檔案的時候必須先找到並讀取這個檔案的 inode。 inode 裡面儲存了檔案的很多重要引數,其中唯一標識稱作 inumber, 其他資訊還有建立時間(ctime)、修改時間(mtime) 、檔案大小、屬主、歸屬的使用者組、讀寫許可權、資料所在block號等資訊。

2. 硬鏈結檔案可以同一目錄,也可不同目錄下的檔案,但不能對目錄建立硬鏈結,而且不能跨卷,即在同乙個檔案系統中的檔案才能建立鏈結。

注意:linux下目錄也是檔案,只不過目錄是乙個用來存放檔案的特殊的檔案

3. 硬鏈結可以相當於指向同乙個inode的指標,刪除乙個指標原檔案不會刪除。

目錄的硬鏈結數目就該目錄下的目錄的數目。其中. 和.. 就是兩個目錄當前目錄和上層目錄

檔案的硬鏈結數目就是鏈結該檔案的數目

二、軟鏈結

,這個檔案包含了另乙個檔案的路徑名。解決了硬鏈結不能跨檔案系統鏈結的缺點。

ln -s

原檔案目標檔案

可以是任意檔案或目錄,可以跨卷,可以鏈結不同檔案系統的檔案。

3.軟鏈結相當於

windows

下面的快捷方式,鏈結可以

n級鏈結,相當於

n級指標,不佔記憶體。

缺點刪除原檔案,所有鏈結檔案失效。

區別:1.硬鏈結原檔案/鏈結檔案公用乙個inode號,說明他們是同乙個檔案,而軟鏈結原檔案/鏈結檔案擁有不同的inode號,表明他們是兩個不同的檔案;

2.在檔案屬性上軟鏈結明確寫出了是鏈結檔案,而硬鏈結沒有寫出來,因為在本質上硬鏈結檔案和原檔案是完全平等關係;

3.鏈結數目是不一樣的,軟鏈結的鏈結數目不會增加;

4.檔案大小是不一樣的,硬鏈結檔案顯示的大小是跟原檔案是一樣的。而這裡軟鏈結顯示的大小與原檔案就不同了,bbb大小是95b,而bbbsoft是3b。因為bbb共有3個字元

5.軟鏈結沒有任何檔案系統的限制,任何使用者可以建立指向目錄的符號鏈結

軟鏈結和硬鏈結

又叫符號鏈結,這個檔案包含了另乙個檔案的路徑名。可以是任意檔案或目錄,可以鏈結不同檔案系統的檔案。鏈結檔案甚至可以鏈結不存在的檔案,這就產生一般稱之為 斷鏈 的問題 或曰 現象 鏈結檔案甚至可以迴圈鏈結自己。類似於程式語言中的遞迴。軟連線的格式是 ln s 目標檔名 鏈結名 在對符號檔案進行讀或寫操...

硬鏈結和軟鏈結

1.linux 鏈結概念 linux 鏈結分兩種,一種被稱為硬鏈結 hard link 另一種被稱為 符號鏈結 symbolic link 預設情況下,ln命令產生硬鏈結。硬連線 硬連線指通過索引節點來進行連線。在 linux 的檔案系統中,儲存在磁碟分割槽中的檔案不管是什麼型別都給它分配乙個編號,...

硬鏈結和軟鏈結

在linux中除了程序之外都是檔案,目錄是特殊的檔案,目錄記錄了其他檔案的檔名。linux檔案被分為兩部分 元資料 檔案的屬性資料 和使用者資料 實際的資料 在linux中通過檔名開啟檔案。檢視檔案的inode號可以使用stat或者ls i命令。軟連線和硬鏈結 硬鏈結是兩個檔名指向同乙個inode,...