Linux命令ln、cp、硬鏈接和軟鏈接

1.Linux鏈接概念
 Linux鏈接分兩種,一種被稱爲硬鏈接(Hard Link),另一種被稱爲符號鏈接(Symbolic Link)。

【硬連接】
 硬連接指通過索引節點來進行連接。在Linux的文件系統中,保存在磁盤分區中的文件不管是什麼類型都給它分配一個編號,稱爲索引節點號(Inode  Index)。在Linux中,多個文件名指向同一索引節點是存在的。一般這種連接就是硬連接。硬連接的作用是允許一個文件擁有多個有效路徑名,這樣用  戶就可以建立硬連接到重要文件,以防止“誤刪”的功能。對於文件的操作同步到所有指向該索引節點的文件,但是刪除時,只是刪除一個連接並不影響索  引節點本身和其它的連接,只有當最後一個連接被刪除後,文件的數據塊及目錄的連接纔會被釋放。

【軟連接】
 另外一種連接稱之爲符號連接(Symbolic Link),也叫軟連接。軟鏈接文件有類似於Windows的快捷方式。它實際上是一個特殊的文件。在符號連接  中,文件實際上是一個文本文件,其中包含的有另一文件的位置信息。

【ln】

 ln 源文件 新文件                           #創建硬鏈接

 等效於:cp -l 源文件 新文件       


 ln  -s  源文件 新文件                    #創建軟鏈接

 等效於:cp -s  源文件 新文件

【實例】

 [zz@ubuntu]:~$ touch f1          #創建一個測試文件f1
 [zz@ubuntu]:~$ ln f1 f2           #創建f1的一個硬連接文件f2
 [zz@ubuntu]:~$ ln -s f1 f3       #創建f1的一個符號連接文件f3
 [zz@ubuntu]:~$ ls -l               #看到:f3-->f1

 此時:f1和f2指向同一索引節點(同一文件對象),f3指向f1.

 對f1,f2,f3的寫操作會保持同步.

 刪除f1不會影響到f2,刪除f2也不影響f1,刪除f3不影響f1,但是刪除f1,f3便沒有鏈接對象,因此會輸出:沒有那個文件或目錄.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章