linux 檔案索引節點(inode)

來源:互聯網
上載者:User
1.什麼是索引節點?索引節點是一個結構,它包含了一個檔案的長度、建立及修改時間、許可權、所屬關係、磁碟中的位置等資訊。一個檔案系統維護了一個索引節點的數組,每個檔案或目錄都與索引節點數組中的唯一一個元素對應。系統給每個索引節點分配了一個號碼,也就是該節點在數組中的索引號,稱為索引節點號。2. 索引節點與檔案的關係Linux 為每個檔案分配一個稱為索引節點的號碼inode,可以將inode簡單理解成一個指標,它永遠指向本檔案的具體儲存位置。系統是通過索引節點(而不是檔案名稱)來定位每一個檔案。檔案系統處理檔案所需要的所有資訊都放在稱為索引節點的資料結構中。檔案名稱可以隨時更改,但是索引節點對檔案是唯一的,並且隨檔案的存在而存在。 一個檔案系統允許的inode節點數是有限的,如果檔案數量太多,即使每個檔案都是0位元組的空檔案,系統最終也會因為節點空間耗盡而不能再建立檔案。所以當發現不能建立檔案時首先要考慮硬碟資料區是否還有空間(可通過du命令),其次還得檢查節點空間。 Linux之所以能支援多種檔案系統,其實是由於Linux提供了一個虛擬檔案系統VFS,VFS作為實際檔案系統的上層軟體,掩蓋了實際檔案系統底層的具體結構差異,為系統訪問位於不同檔案系統的檔案提供了一個統一的介面。實際上許多檔案系統並不具備inode結構,其目錄結構也和以上的討論不同,但通過VFS,系統均為其提供了虛擬一致的inode和目錄項結構。所以,'ls -il'命令實際顯示的inode應該是VFS inode,也就是說,inode是存在於記憶體中的資料結構,而不一定是實際的硬碟結構。但為Linux量身定做的ext2檔案系統具備實際的inode 和串連型目錄項結構.有一個inode, 就可以有一個檔案, fs中有多少inode,就可以有多少file. inode又有單位元組和多位元組之分(由檔案系統的類型和單個檔案的大小決定). inode在建fs時同時開出, 開多少? 這由nbpi(平均每節點管理多大檔案)和fs的大小決定. fs建好後,想增加inode,只能擴fs, 而且nbpi無法改變. 反之, 每當擴fs, inode也相應增加.因此, 由於jfs能管理的inode數為16M(2的24次方), 當nbpi確定時, fs的最大值也定了.
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.