linux軟硬鏈結區別

2021-09-21 09:51:32 字數 1825 閱讀 5202

(1)硬鏈結

一般情況下,檔名和inode號碼是"一一對應"關係,每個inode號碼對應乙個檔名。但是,unix/linux系統允許,多個檔名指向同乙個 inode號碼。這意味著,可以用不同的檔名訪問同樣的內容;對檔案內容進行修改,會影響到所有檔名;但是,刪除乙個檔名,不影響另乙個檔名的訪 問。這種情況就被稱為"硬鏈結"(hard link)。

硬鏈結必須在乙個分割槽,兩個檔案互為源,命硬,刪掉乙個還有乙個。多個檔案共享乙個inode。是為了節省inode資源。這多個檔案的內容是同步的

硬鏈結可以認為不是乙個檔案,它只是實際檔案的乙個別名,它的作用是防止真實檔案被誤操作,給乙個檔案建立硬鏈結後,他們互為別名,刪除其中任乙個,只 會刪除該別名,實際檔案並不會被刪除。由於只是別名沒有任何其他資訊,所以並不占用原始檔案大小的磁碟空間。

硬鏈結舉例如下:

(2)軟鏈結

可以不在乙個分割槽,只有乙個最本質的原始檔。刪掉源另乙個也就失效了。兩個檔案的inode號是不同的。原始檔有100m 鏈結檔案可能只有幾十k。鏈結檔案只是訪問原始檔的乙個跳板。

軟鏈結檔案有點類似於windows的快捷方式。它實際上是特殊檔案的一種。在符號連線中,檔案實際上是乙個文字檔案,其中包含的有另一檔案的位置資訊。

軟鏈結是另乙個檔案,作用可以理解為乙個指標,作用在這個檔案上的操作除了刪除都直接轉向實際指向檔案,由於是乙個真實的檔案所以占用磁碟空間 。

軟鏈結舉例如下:

(3) ln 命令

用來鏈結檔案或目錄。當同時指定多個檔案或目錄時,目的目錄必須存在,若不存在則出錯,若存在,指定多個檔案和目錄將被複製的目錄下。當不指定引數預設建立硬鏈結。建立的鏈結分為兩種:硬鏈結和軟鏈結;硬鏈結相當於建立副本;軟鏈結只是單純的鏈結

-b  刪除,覆蓋以前建立的鏈結

-d  允許超級使用者製作目錄的硬鏈結

-f   強制執行

-i   互動模式,檔案存在則提示使用者是否覆蓋

-n  把符號鏈結視為一般目錄

-s  軟鏈結(符號鏈結)

-v  顯示詳細的處理過程

總結:

1.軟連線,以路徑的形式存在。類似於windows作業系統中的快捷方式

2.軟連線可以 跨檔案系統 ,硬連線不可以

3.軟連線可以對乙個不存在的檔名進行連線

4.軟連線可以對目錄進行連線

5.軟鏈結節省空間資源

硬鏈結

1.硬鏈結,以檔案副本的形式存在。但不占用實際空間。

2.硬鏈結普通使用者不可以對目錄進行鏈結,超級使用者可以

3.硬鏈結只有在同乙個檔案系統中才能建立

4硬鏈結節省inode資源。

本節多次提到inode概念,我將在下節部落格中做詳細解釋

Linux 軟硬鏈結區別

一 硬鏈結 和 軟鏈結 鏈結的概念 鏈結簡單說實際上是一種檔案共享的方式,是 posix 中的概念,主流檔案系統都支援鏈結檔案。鏈結的作用 可以將鏈結簡單地理解為 windows 中常見的快捷方式 或是 osx 中的替身 linux 中常用它來解決一些庫版本的問題,通常也會將一些目錄層次較深的檔案鏈...

linux軟硬鏈結的區別

硬鏈結本質上就給乙個檔案起乙個新的名稱,實質是同乙個檔案 硬鏈結特性 1 建立硬鏈結會在對應的目錄中增加額外的記錄項以引用檔案 2 對應於同一檔案系統上乙個物理檔案 3 每個目錄引用相同的inode號 4 建立時鏈結數遞增 5 刪除檔案時 rm命令遞減計數的鏈結,檔案要存在,至少有乙個鏈結數,當鏈結...

linux軟 硬鏈結的詳細區別

linux系統下提供ln指令來進行檔案鏈結。檔案鏈結主要分為硬鏈結和軟鏈結。可以用 ln命令來建立硬鏈結。語法 用法 第一種 為 existingfile 建立硬鏈結,檔名為 newfile 第二種 在 directory 目錄中,為 existingfile list 中包含的所有檔案建立乙個同名...