Linux雜談(一) 軟鏈結與硬鏈結

2021-06-21 16:23:08 字數 1625 閱讀 7737

文件總結

1. 首席我們通過乙個例項直觀的感受一下。

(1)這個是/mnt/file檔案詳細資訊:

注意最左側file檔案的inode號是6294764.我們一會要和鏈結檔案進行對比.

ln -s /mnt/file /root/desktop(-s 表示軟鏈結)

再鍵入命令ls -il /root/desktop,/root/desktop桌面上會出:

1. 檔案的inode和以前不同了,變成12329279.;

2. 檔案許可權的位置處-變成l,表示這是乙個鏈結;

3. 檔案的大小也發生了不同由65變成了9,而且我對/root/desktop/file的檔案進行編輯後發現它的大小依然還是9.而且file檔案指向了/mnt/file

(3)對原始檔內容進行監控:

watch cat /mnt/file,原本如圖所示:

vim /root/desktop/file,進入vim後發現和/mnt/file的內容相同

當我們對/root/desktop上的file編輯儲存後發現/mnt/file的內容也發生了相同的變化。

*硬鏈結

硬鏈結我們可把它當作是指標去理解,但是系統是不會為它重新分配inode號的,如圖所示:

可以與原始檔進行對比,兩者的inode是相同的。檔案大小也是相同的,但是有個小細節變化:鏈結數發生了變化,變成2了。

對於ln命令的操作結果,我們可以這樣去理解,兩個檔案其實是同乙個檔案的兩個不同的名字,就好象是兩個指標指向同一片區域一樣。它們有著同樣的inode號和檔案屬性,建立硬鏈結就是在建立新的指標,如果我們要刪除這個檔案,必須刪除所有的鏈結,讓inode的數目變為0,此時核心才會把檔案從裝置中刪除。

(1) 

首先不可以在不同的檔案系統之間建立硬鏈結;

(2) 

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

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

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

檔案大小是不一樣的,硬鏈結檔案顯示的大小是跟原 檔案是一樣的,這用強調,因為是等同的嘛,而這裡軟鏈結顯示的大小與原檔案就不同了,file1大小是48b,而file1soft是5b,這裡面的5實 際上就是「file1」的大小。 

總之,建立軟鏈結就是建立了乙個新檔案。當訪問鏈結檔案時,系統就會發現他是個鏈結檔案,它讀取鏈結檔案找到真正要訪問的檔案。

linux硬鏈結與軟鏈結

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

Linux 硬鏈結與軟鏈結

原貼 2007 08 05 10 19 49 linux硬鏈結與軟鏈結 2006 12 01 15 03 首先要弄清楚,在linux系統中,核心為每乙個新建立的檔案分配乙個inode 索引結點 每個檔案都有乙個惟一的inode號。檔案屬性儲存在索引結點裡,在訪問檔案時,索引結點被複製到內存在,從而實...

linux硬鏈結與軟鏈結

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