Linux下硬鏈接與軟鏈接的區別
鏈接,是指在計算機文件之間傳遞參數和控制命令,并把它們組成一個可執行的整體的過程。例如我們常見的windows系統下的“快捷方式”,它是一種鏈接,人們可以通過它來直接訪問計算機上的某個文件,不必逐級在硬盤目錄下尋找;互聯網上的“超文本鏈接”,它用文字鏈接的形式來指向一個頁面,人們可以通過此鏈接快速訪問網站的頁面。在Linux系統中也有鏈接,而且分為兩種:1、硬連接;2、軟連接。此文主要對硬連接和軟連接進行介紹,并說明他們有何區別。
硬鏈接:同一個文件的不同名稱?,F在有一條路徑A指向此文件,為了我們方便我們訪問此文件,我們通過ln命令從路徑A中復制出一條新的路徑B。操作完成后,現在A和B兩條路徑都指向了文件File,且兩條路徑相互不影響,即使某種原因使得A路徑不能用了,B路徑也還能訪問File。
軟鏈接:也稱為符號鏈接,是指向一個文件的特殊文件,是鏈接文件的相對路徑。一個文件File,A指向這個文件,B通過軟鏈接連接A,從而B也可以訪問文件File。如果A被刪除了,B也就不能訪問文件File了,但B本身還是存在。
軟鏈接和硬鏈接區別:
1、硬鏈接使用同一個inode號,增加硬鏈接不會增加文件的inode數,而軟鏈接會不共享inode號,不同的文件對應inode不會相同;
2、硬鏈接不能跨設備跨文件,只能針對同一個分區下建立連接,而且不能對補錄創建。軟鏈接是可以跨設備建立鏈接的,它類似于windows系統的“快捷方程式”功能,它可以創建目錄鏈接,而且能跨分區;
3、原文件被刪除了,硬鏈接不受影響,讓能繼續指向文件;軟連接雖然仍然存在,但是是指向了一個無效的文件。
原創文章,作者:yaoqin.liang,如若轉載,請注明出處:http://www.www58058.com/53400