軟鏈結與硬鏈結

2021-06-20 00:46:52 字數 1339 閱讀 3929

linux/unix中有兩種鏈結,硬鏈結和軟鏈結,均由ln命令來建立。

軟鏈結

1
ln

-ssource target #建立source檔案的軟鏈結target

123

456

dutor@dutor-desktop:~$ ln

-s gvim.tgz gvim

dutor@dutor-desktop:~$ ln

-s/home/dutor/gvim.tgz gvim2

dutor@dutor-desktop:~$ ll gvim*

# alias ll='ls -l'

lrwxrwxrwx 1 dutor dutor 8

2010-07-01 20:32 gvim -> gvim.tgz

lrwxrwxrwx 1 dutor dutor 20

2010-07-01 20:33 gvim2 ->

/home/dutor/gvim.tgz

-rw-r--r--

1 dutor dutor 8.5m 2010-06-29

23:06 gvim.tgz

軟鏈結應用十分廣泛。

在檔案系統中多處共享同乙個較大檔案時,使用軟鏈結就可以避免建立多個副本。

維護動態庫檔案的版本時,使用軟鏈結,在公升級庫檔案後,只需修改軟鏈結的原始檔,而使用該庫的程式則不需要修改。

硬鏈結

1
ln

source target #建立source檔案的硬鏈結target

123

4

dutor@dutor-desktop:~$ ln gvim.tgz gvim

dutor@dutor-desktop:~$ ll -i gvim*

1048032

-rw-r--r--

2 dutor dutor 8.5m 2010-06-29

23:06 gvim # 第3個域代表該檔案的鏈結數

1048032

-rw-r--r--

2 dutor dutor 8.5m 2010-06-29

23:06 gvim.tgz

因此,系統不允許使用者為目錄建立硬體鏈結,否則,目錄樹就不再是有向無環的了。只許州官放火,不許百姓點燈,系統卻可以為目錄「建立」硬鏈結(系統知道自己在做什麼,卻不知使用者會做什麼),那就是.和..分別指向當前目錄和上級目錄。因此每個目錄的鏈結數至少是2.

另外,由於硬鏈結的實現依賴於特定的檔案系統,因此不可以跨檔案系統。而軟鏈結是基於路徑的,所以只要是掛載在系統目錄樹中的檔案或目錄,都可以建立軟鏈結。

硬鏈結與軟鏈結

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

軟鏈結與硬鏈結

一 理解軟鏈結與硬鏈結 1 inode號 在理解軟鏈結與硬鏈結之前讓我們來了解乙個重要的基礎知識 inode節點 linux檔案系統中的索引節點,又稱 index node inode號是檔案的唯一標識,而非檔案名字,它就像我們的身份證號一樣。系統或程式通過 inode 號尋找正確的檔案資料塊。li...

硬鏈結與軟鏈結

我們都知道檔案都有檔名與資料,這在 linux 上被分成兩個部分 使用者資料與元資料。使用者資料,即檔案資料塊 資料塊是記錄檔案真實內容的地方。而元資料則是檔案的附加屬性,如檔案大小 建立時間 所有者等資訊。在 linux中,元資料中的 inode號 inode 是檔案元資料的一部分但其並不包含檔名...