linux 鏈接ln的使用 創建和刪除符號連接(軟、硬鏈接)

1 . 使用方式 :ln [option] source_file dist_file   (source_file是待建立鏈接文件的文件,dist_file是新創建的鏈接文件)
                    -f 建立時,將同檔案名刪除. 
                    -i 刪除前進行詢問. 
                    ln -s abc cde 建立abc 的軟連接 
                    ln abc cde 建立abc的硬連接,

2. 軟鏈接與硬鏈接的區別(通俗): 
                    硬鏈接可認爲是一個文件擁有兩個文件名; 
                    而軟鏈接則是系統新建一個鏈接文件,此文件指向其所要指的文件

                    此外,軟鏈接可對文件和文件夾。。而硬鏈接僅針對文件。

3. 軟鏈接與硬鏈接的區別(講解): 

Linux 軟連接與硬連接

對於一個文件來說,有唯一的索引接點與之對應,而對於一個索引接點號,卻可以有多個文件名與之對應。因此,在磁盤上的同一個文件可以通過不同的路徑去訪問該文件。注意在Linux下是一切皆文件的啊,文件夾、新加的硬盤 ...都可以看着文件來處理的啊。
    連接有軟連接和硬連接(hard link)之分的,軟連接(symbolic link)又叫符號連接。符號連接相當於Windows下的快捷方式。
    不可以對文件夾建立硬連接的,我們通常用的還是軟連接比較多。     
    
eg:
    ln -s source dist        # 建立軟連接
    ln source dist            # 建立硬連接


    軟鏈接實際上只是一段文字,裏面包含着它所指向的文件的名字,系統看到軟鏈接後自動跳到對應的文件位置處進行處理;相反,硬聯接爲文件開設一個新的目錄 項,硬鏈接與文件原有的名字是平權的,在Linux看來它們是等價的。由於這個原因,硬鏈接不能連接兩個不同文件系統上的文件。
(1)軟連接可以 跨文件系統 ,硬連接不可以 。實踐的方法就是用共享文件把windows下的 aa.txt文本文檔連接到linux下/root目錄 下 bb,cc . ln -s aa.txt /root/bb 連接成功 。ln aa.txt /root/bb 失敗 。
(2)關於 I節點的問題 。硬連接不管有多少個,都指向的是同一個I節點,會把 結點連接數增加,只要結點的連接數不是 0,文件就一直存在,不管你刪除的是源文件還是 連接的文件 。只要有一個存在 ,文件就 存在 (其實也不分什麼源文件連接文件的 ,因爲他們指向都是同一個 I節點)。 當你修改源文件或者連接文件任何一個的時候 ,其他的文件都會做同步的修改。軟鏈接不直接使用i節點號作爲文件指針,而是使用文件路徑名作爲指針。所以 刪除連接文件 對源文件無影響,但是刪除源文件,連接文件就會找不到要指向的文件 。軟鏈接有自己的inode,並在磁盤上有一小片空間存放路徑名.
(3)軟連接可以對一個不存在的文件名進行連接 。
(4)軟連接可以對目錄進行連接。
最後 刪除符號鏈接,有創建就有刪除
rm -rf   symbolic_name   注意不是rm -rf   symbolic_name/ 

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