您好,登錄后才能下訂單哦!
Linux系統中怎么使用ln命令創建軟鏈接與硬鏈接,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Linux 系統下每創建一個文件,系統都會為此文件生成一個 index node 簡稱(inode) ,而每一個文件都包含用戶數據(user data) 與 元數據(metadata)
用戶數據里記錄了文件的真正內容.
元數據里記錄的是文件的附加屬性,如 文件大小,創建時間,所有者等,其中 上面提到的 index node 就保存在元數據中.在linux 中文件名并不是文件的唯一標識,index onde 才是唯一標示,系統查找文件也是通過 index node 來查找內容數據塊.
如何查看文件的 index node:
代碼如下:
/Users/zhangzhi >ls -i
31615656 AndroidStudioProjects 30836545 go
1152719 Applications 49115578 images
31827389 CNode 13208576 ktsgs.zip
595399 Desktop 44722768 pandoc_demo
595275 Documents 49218456 pgadmin.log
595277 Downloads 15078624 pomelo
7094352 LevelTest 1009499 project
7098493 LevelTest.zip 1011801 qdb
595388 Library 5901898 qdb.zip
595439 Movies 23150187 test
595441 Music 1010768 tmp
595443 Pictures 17956310 trunk
595445 Public 17970255 trunk.zip
32072972 app 41999857 webwork
1009500 code 13208610 游戲配置
22509232 databak
我們看到的前面的數字序列就是 index node
如何理解呢,你可以想象成 windows 操作系統里的快捷鍵.對同一個文件的訪問提供了多個入口.
指令:
代碼如下:
ln [option] link_file source_file
(link_file是待建立鏈接文件的文件,source_file是新創建的鏈接文件)
-f 建立時,將同檔案名刪除.
-i 刪除前進行詢問.
示例:
代碼如下:
ln -s myfile mylink
建立myfile 文件的軟鏈接 mylink
代碼如下:
ln myfile mylink
建立myfile 的硬鏈接 mylink
軟鏈接
ln -s myfile mylink
軟鏈接創建后,用戶數據中存儲的并不是文件本身的記錄,而是一個指向 原文件路徑的一個指針.但是它有自己的 index node 序列.
所以 ,軟鏈接其實就是一個新的文件,但是這個文件很特殊,因為他的用戶數據中放的不是文件內容,而是一個指向其他文件的指針.
軟鏈接有下面幾個特點:
1.多個軟鏈接有多個不同的 index node
2.不僅可以對文件創建,還可以對目錄創建軟鏈接
3.軟鏈接可以交叉文件系統
4.刪除軟鏈接 并不會影響原文件,但是原文件被刪除,這個軟鏈接就成了一個死鏈接.
硬鏈接
ln myfile mylink
硬鏈接創建后,用戶數據中存儲的是文件本身記錄,其他他的用戶數據和元數據都和 myfile 一樣,唯一不同的是文件名.
所以硬鏈接就是同一個文件有了多個文件名, 但是多個文件名都指向了 同一個 index node
這樣看來,硬鏈接就是有多個別名的同一個文件.
硬鏈接有下面幾個特別:
1.他們有相同的 index node
2.有相同的數據記錄
3.只能在已經存在文件上創建 硬鏈接
4.刪除其中任何一個,其他硬鏈接不受影響.
5.只能對文件做硬鏈接
關于Linux系統中怎么使用ln命令創建軟鏈接與硬鏈接問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。