您好,登錄后才能下訂單哦!
今天給大家介紹一下如何解析Linux文件鏈接。文章的內容小編覺得不錯,現在給大家分享一下,覺得有需要的朋友可以了解一下,希望對大家有所幫助,下面跟著小編的思路一起來閱讀吧。
鏈接概念:
分為軟鏈接和硬鏈接,文件類型為 l
硬鏈接: ln 源文件 目標文件
軟鏈接: ln -s 源文件 目標文件(目標文件不能事先存在)
ln -s /root/ /tmp/root # 給 /root 目錄創建一個軟鏈接到 /tmp目錄下 readlink /tmp/root # 指出鏈接鏈向地址 touch test.sh # 創建測試數據 ln test.sh /tmp/test.sh # 創建硬鏈接 ll -i test.sh /tmp/test.sh # 檢查兩個文件的i節點
硬鏈接:
硬鏈接是通過索引節點來進行鏈接,在linux系統中,多個文件名指向同一個索引節點是正常且允許的,這種情況的文件被稱為硬鏈接,硬鏈接相當于文件的另外一個入口,建立硬鏈接防止誤刪,有備份作用
ln /etc/hosts /tmp/oldboy.host #對于這個文件,創建一個硬鏈接,也可以說創建了一個文件新的入口 /tmp/oldboy.host
鏈接知識總結:
具有相同inode節點號的多個文件互為硬鏈接文件,創建了硬鏈接相當于文件實體多了入口
只有刪除源文件及對應的所有對應的硬鏈接文件,文件實體才會被刪除,刪除源文件的其中一個或幾個硬鏈接,文件實體不會刪除。當刪除成功時候,該文件位置沒有被重新占用或fsck檢查之前,文件數據是有可能恢復
通過給文件創建硬鏈接,防止重要文件被誤刪
硬鏈接文件時普通文件,可以被rm刪除
靜態文件(沒有進程進行調用), i_link 為0的時候,文件將被刪除
刪除源文件,軟鏈接文件依舊存在,但是找不到文件,會紅白閃爍
多個軟鏈接指向同一個文件,單這些軟鏈接inode不同,屬于不同文件
軟鏈接的文件類型為l,硬鏈接文件類型和源文件一樣
對文件鏈接:
1. 文件可以創建硬鏈接,增加了文件的入口,但是創建硬鏈接不能跨分區
2. 文件可以創建軟鏈接,但只能在同級目錄,出來同級目錄失效
3. 其實文件名本身就是個硬鏈接,也是文件入口
對于目錄鏈接
目錄不能創建硬鏈接,目錄可以創建軟鏈接
目錄的軟鏈接在生產場景經常使用,硬鏈接少用
每個目錄下都會有兩個硬鏈接, . 當前目錄, .. 上級目錄
鏈接總結:
1. 為文件創建硬鏈接,增加文件讀數據入口;為目錄創建軟鏈接,可以直接通過軟鏈接進入目錄
2. 刪除源文件名,只要還有該源文件的硬鏈接在,通過硬鏈接還是可以訪問到數據,并沒有被刪除,為什么?
當 i_link = 0 和 i_count = 0 的時候,就像把文件數據關進了小黑屋,被回收了,就刪除了
3. 刪除軟鏈接,對源文件沒有任何的影響,刪除源文件名,指向該源文件的軟鏈接失效
4. 硬鏈接 指向的inode相同,軟鏈接有自己的 inode 和block
以上就是如何解析Linux文件鏈接的全部內容了,更多與如何解析Linux文件鏈接相關的內容可以搜索億速云之前的文章或者瀏覽下面的文章進行學習哈!相信小編會給大家增添更多知識,希望大家能夠支持一下億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。