硬鏈接與軟鏈接簡略

1.概念

硬鏈接:給一個文件創(chuàng)建硬鏈接(hard links)相當(dāng)于給它取了一個別名,文件的節(jié)點(inode)并沒有改變,硬鏈接不占用內(nèi)存空間。
ln [源文件] [鏈接文件]

echo "this is source file"  >f1
ln f1 f2        #創(chuàng)建硬鏈接
ln -s f1 f3      #創(chuàng)建軟鏈接
ls  -li      #-l 查看所有文件,-i 查看文件節(jié)點
rm -rf f2   刪除鏈接文件

軟鏈接:給一個文件創(chuàng)建軟鏈接(symbolic links)相當(dāng)于給它創(chuàng)建了一個快捷方式,這個快捷方式本身也是個文件,有自己的節(jié)點,當(dāng)然也占用一定的磁盤空間。
ln -s [源文件] [鏈接文件]

ls -li
405209676 -rw-r--r--. 2 usrname root   20 Oct 10 20:52 f1
405209676 -rw-r--r--. 2 usrname root   20 Oct 10 20:52 f2
405209665 lrwxrwxrwx. 1 usrname root   2 Oct 10 20:52 f3 -> f1     #第三列的2表示有2個文件名鏈接到405209676這個inode;軟鏈文件的大小是2字節(jié),其實就是f1文件名的大小。

2.應(yīng)用上的相同點

對鏈接文件內(nèi)容作的任何更改都會同步到源文件中,反之亦然。
刪除鏈接文件并不會影響源文件。

3.應(yīng)用上的不同點:

硬鏈接能防止誤刪:刪除源文件,硬鏈文件還在,軟鏈文件則同時被刪除。
硬鏈接文件有兩個限制
  1)不允許給目錄創(chuàng)建硬鏈接;
  2)只有在同一文件系統(tǒng)中的文件之間才能創(chuàng)建鏈接。

但是創(chuàng)建鏈接有什么用呢?無非就是和copy相比,少占用內(nèi)存;多條路徑防止誤刪;和直接引用相比,省去給出路徑的繁瑣。

參考:
https://www.cnblogs.com/itech/archive/2009/04/10/1433052.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容