ln指令
功能說明
ln指令用來在檔案或目錄之間建立連結。
Linux下的連結有兩種,一種是硬連結(Hard Link),另一種是符号連結(Symbolic Link也就是常說的軟連結),預設使用ln指令建立的是硬連結。
硬連結
是指通過檔案的inode來進行連結。在Linux的檔案系統中,儲存在磁盤的所有類型的檔案都會配置設定一個編号,這
個編号稱為inode号(Inode Index)。多個檔案指向同一個inode在Linux系統中是允許的,這就是所謂的硬連結。硬連結的作用是允許一個檔案擁有多個有效的路徑名,這樣使用者就可以對一些重要檔案建立硬連結,以防止誤删除操作。因為對就該檔案的inode有一個以上的連結,是以隻删除一個連結并不影響inode本身和其他連結,隻有當最後一個連結被删除後,檔案的資料塊及目錄的連結才會釋放,也就是說,此時檔案才會被真正删除。
符号連結
也叫軟連結,軟連結類似于Windows的快捷方式,是以軟連結是一個指向真正的檔案或者目錄位置的符号連接配接。
用法如下
硬連結 ln file link
軟連結 ln -s item link 這裡的item可以是檔案也可以是目錄
指令參數
選項
含義
-f
如果在目标位置存在與連結名相同的檔案,這個檔案将被删除
-s
進行軟連結
-d
允許系統管理者硬連結自己的目錄
-b
對将在連結時會被覆寫或者删除的檔案進行備份
示例
不帶參數,将檔案硬連結
[root@c7 shell]# ln test.sh htest.sh #對源檔案test.sh建立硬連結
[root@c7 shell]# ls -li #可以看到二個檔案inode号相同
總用量 8
68033834 -rw-r--r--. 2 root root 4 11月 11 16:47 htest.sh
68033834 -rw-r--r--. 2 root root 4 11月 11 16:47 test.sh
[root@c7 shell]# ln htest.sh /tmp/ #連結到另一個目錄,目标可以不寫檔案名
[root@c7 shell]# ls -li /tmp/ #相同名稱的硬連結,inode号也相同
總用量 32
68033834 -rw-r--r--. 4 root root 4 11月 11 16:47 htest.sh
101282617 -rw-------. 1 root root 26843 11月 10 15:58 yum_save_tx.2016.r6hAcv.yumtx
使用-b參數,連結前先備份
[root@c7 shell]# ln -b htest.sh test.sh #-b硬連結前先備份
[root@c7 shell]# ls -li #以~結尾的就是備份檔案
總用量 12
68033834 -rw-r--r--. 4 root root 4 11月 11 16:47 htest.sh
68033834 -rw-r--r--. 4 root root 4 11月 11 16:47 test.sh
68033834 -rw-r--r--. 4 root root 4 11月 11 16:47 test.sh~
-s軟連結,将/etcinittab檔案符号連結到/opt下
[root@c7 ~]# ln -s /etc/inittab /opt
[root@c7 ~]# ls -li /opt/inittab #下面是軟連結的顯示,inode号不同
26186 lrwxrwxrwx. 1 root root 12 11月 11 18:02 /opt/inittab -> /etc/inittab
[root@c7 ~]# ls -li /etc/inittab
34140601 -rw-r--r--. 1 root root 511 3月 6 2015 /etc/inittab
本文轉自cix123 51CTO部落格,原文連結:http://blog.51cto.com/zhaodongwei/1871880,如需轉載請自行聯系原作者