1 概述
不論硬鏈接還是軟鏈接,它們都是文件
2 硬鏈接
定義:
每個文件都是使用它的inode號碼來引用,文件名不過是想提高用戶體驗。由於文件名和inode號碼的分離(文件名被保存在目錄中,而不是在inode節點中),這就使多個文件名來指向同一個inode號碼變成了可能。所有文件都至少被應硬鏈接一次而且可以不止一次。
特點:
1)鏈接計數與所鏈接的文件數成正相關,當鏈接計數遞減為0,文件就會被刪除
2)附加的硬鏈接是常規文件,只是引用宿主文件的inode號碼,其余和宿主文件一般無二
語法:
ln 文件名 鏈接名
注意,鏈接名事前不能有
案例:
[root@ www.linuxidc.com water]# touch w
[root@ www.linuxidc.com water]# cat > w
my name is www.linuxidc.com
[root@ www.linuxidc.com water]# ll -i w
3496568 -rw-r--r-- 1 root root 17 09-25 14:48 w
[root@ www.linuxidc.com water]# ln w w_hardlink
[root@ www.linuxidc.com water]# ll -i
總計 8
3496568 -rw-r--r-- 2 root root 17 09-25 14:48 w
3496568 -rw-r--r-- 2 root root 17 09-25 14:48 w_hardlink
[root@ www.linuxidc.com water]# cat w_hardlink
my name is www.linuxidc.com
限制:
1)因為共享一個inode號碼,所以兩個文件都必須在同一個文件系統上
2)無法創建到目錄的硬鏈接
3 軟鏈接
定義:
軟鏈接讀取的是指向的文件的內容
特點:
1)軟鏈接是和原文件不同的單獨文件(inode號碼不同)
2)軟鏈接的文件類型標志是l
3)原文件的權限會控制對文件的存取,與軟鏈接的權限風牛馬不相關
4)軟鏈接的大小總是等於原文件的路徑名的字符總數
語法:
ln -s 原文件 軟鏈接
案例:
[root@ www.linuxidc.com water]# touch w
[root@ www.linuxidc.com water]# cat > w
my name is www.linuxidc.com
[root@ www.linuxidc.com water]# ln -s w w_softlink
[root@ www.linuxidc.com water]# ll -i
總計 4
3496568 -rw-r--r-- 1 root root 17 09-25 15:12 w
3496973 lrwxrwxrwx 1 root root 1 09-25 15:12 w_softlink -> w
[root@ www.linuxidc.com water]# cat w_softlink
my name is www.linuxidc.com
最後來一句話總結軟鏈接和硬鏈接:
軟鏈接:相當於快捷方式,可以為所有文件建立軟鏈接。
硬鏈接:相當於給文件起了個別名,鏈接文件和源文件其實是同一個文件。不能用於目錄。