閱讀430 返回首頁    go 阿裏雲 go 技術社區[雲棲]


了解inode


  • 文件字節數
  • User ID
  • Group ID
  • 文件的權限
  • 文件的時間戳,
  • 鏈接數,多少文件名指向這個inode
  • 存儲的block位置
查看inode信息,可以通過stat命令查看 stat +filename

7ad1a4e22e7835c1212a1b1ebd3c4112c5153edf








bf809e0e64a618f078507c7380f55efba88c1aae



例:mkfs.ext3 /dev/xvdb -N 100000

就是格式化/dev/xvdb inode數量是100000 文件係統是ext3

如果不指定inode數量,係統會根據文件的blocksize和bytes/inode來自動計算


線上運行的服務器,如果初始時沒有規劃好inode,出現上述的問題,就需要查找消耗inode的問題,

通過命令find */ ! -type l | cut -d / -f 1 | uniq -c |sort -nr 

可以列出當前磁盤中文件數較大的目錄


10622ad3c2bb57e1238156e3a04107cb79e9ebbc


結合實際業務刪除不需要的文件,釋放一定的inode即可繼續寫入數據



一般文件名和inode號是一一對應的,但在Unix/Linux係統中,允許多個文件名指向同一個inode號,即硬鏈接

硬鏈接就可以理解為不同的文件名指向同一個inode號,對硬鏈接文件和源文件修改都是修改的相同的存儲數據,修改數據戶影響到所有文件名,刪除一個文件名不影響另外的文件名讀取文件數據

通過ln命令可以創建

在inode信息中有鏈接數,創建一個硬鏈接該數量就會加一

目錄文件的鏈接數默認是2,創建目錄時,會創建兩個目錄項“.”inode號是當前目錄的inode號,“..”inode號是父目錄的inode號

d4e44d91f998ed8c6a3a03d06c86196bae87fce2

9eb7e3ad706c4dee660f2cb01ae397244561af5c




相對硬鏈接,還有軟鏈接,軟連接文件的inode號和源文件不同,但文件內容是源文件的路徑,訪問軟連接文件時,係統會導向源文件,軟連接依存於源文件,源文件刪除,軟連接將無法讀取,由於inode號不同,所以如果有大量軟連接,會消耗indoe數量,存儲空間卻不會消耗,當有大量軟連接占用inode,導致無法寫入文件,又不方便格式化磁盤調整inode,可以通過以下方法獲取一些inode數:


dd if=/dev/zero of=disk.img count=1024 bs=1024(創建一個空文件)

mkfs.ext2 -N 1000000 -b 1024 -I 128 disk.img(格式化指定inode)


f1a6e57d6a8b853a851edb6bb393bd8ba619a22d

af585ca44244d021b75ef9b2512d9d818a9432a3




最後更新:2017-06-22 15:32:04

  上一篇:go  《數據分析實戰:基於EXCEL和SPSS係列工具的實踐》一1.3.3 合適的工具
  下一篇:go  《數據分析實戰:基於EXCEL和SPSS係列工具的實踐》一1.2 數據分析能給我們帶來什麼