天天看點

淺談inode

1.初識inode:

檔案存于硬碟上(硬碟最小存儲單元是“扇區”(sector),每個扇區儲存512位元組)

作業系統讀硬碟時,一次性讀取一個“塊”(block)(8個sector組成)

由多個扇區組成的塊——>檔案存取的最小機關

檔案資料存儲在“塊”中

儲存檔案元資訊——>inode(索引節點)

2.inode包含檔案的元資訊,其内容:

  檔案位元組數、檔案擁有者的User ID、檔案的Group ID、檔案的讀、寫、執行權限、檔案的時間戳、連結數(即有多少檔案名指向這個inode)、檔案資料block位置

(除了檔案名以外的所有檔案資訊,都存在inode中)

3.檢視指令

  stat example  //檢視某個檔案的inode資訊

  sudo dumpe2fs -h /dev/hda | grep "Inode size"  //檢視每個inode節點的大小

  df -i  //檢視每個硬碟分區的inode總數和已經使用的數量

  ls -i  //整個目錄檔案裡的檔案名和inode号碼

  ls -i example  //檢視檔案名對應的inode号碼

4.硬碟格式化時,将硬碟分為2個區域:

                                   資料區(存放檔案資料)

                                   inode區 (inode table,存放inode所包含的資訊)

5.(1)硬連結(hard link)

  Unix/Linux允許,可用不同的檔案名通路同樣的内容。對檔案内容的修改,會影響所有檔案名,但删除一個檔案名,不影響另一個檔案名的通路。(inode号碼一樣)

  建立:ln 源檔案 目标檔案

  特點:有相同的inode号,僅檔案名不同的檔案(檔案有相同的inode及data block);

        隻能對已存在檔案進行建立;

        不能對目錄進行建立,隻能對檔案進行建立;

        删除一個硬連結檔案,不影響其他具有相同inode号碼的檔案

  (2)軟連結(soft link 或者 symbol link)

  檔案A、檔案B的inode号碼不一樣,但檔案A的内容是檔案B的路徑。讀取檔案A時,系統自動将通路者導向檔案B。是以,無論打開那個檔案,最終讀取的都是檔案B。——>此時,檔案A稱為檔案B的“軟連結”(或“符号連結”)。檔案A依賴于檔案B而存在,如果删除檔案B,打開檔案A就會報錯“沒有這個檔案或目錄”。

  eg:ln -s test.c(B) try.c(A)

      那麼 try.c(A)——>test.c(B)

  軟連結有自己的inode号及使用者資料塊。

  建立:ln -s 源檔案或目錄 目标檔案或目錄

  特點:軟連結有自己的檔案屬性及權限;

        可對不存在檔案或目錄建立軟連結;

        軟連結可對檔案或目錄進行建立;

        建立軟連結時,連接配接計數不會增加;

上一篇: inode詳解
下一篇: 關于 inode

繼續閱讀