linux文件軟鏈接、硬鏈接


在linux ext2文件系統中,一個文件的屬性存放在inode中,而數據存放在block中。每個文件占用一個inode,inode中記錄了文件的權限和block地址,通過inode可以定位到block。

在文件系統初始化后,inode和block的數量就確定了(所以大量小文件是會消耗inode的)。

 

目錄也是一個文件,也有inode和block,目錄的block中記錄了該目錄下的文件名和對應的inode號。定位一個文件,入口是文件路徑,也就是從目錄開始。

 

hard link

ln zhang zhang_hd

新加了一個文件名zhang_hd,它對應的inode號和zhang的inode號相同。使用限制:無法跨文件系統,無法為目錄建立。

 

symbol link

ln -s zhang zhang_so

新建一個文件zhang_so,它有自己的inode和block,block中記錄的是目標文件的文件名。

 

操作實例:新建文件,分別為其建立硬鏈接、軟鏈接,最后移動源文件。

 

聽人說過,在linux同一個文件系統內,mv 操作非常快,為什么呢,因為它並不真的移動數據,只是作了一個rename的操作。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM