This page is a beginner-friendly note about reading df -i output. It focuses on inode exhaustion risks and practical checks in real operations.
df -i を「何が危険サインか」「次に何を疑うか」まで判断できる形で整理します。
df -i は「容量」ではなく「ファイルの枠(inode)」を見る最初にここだけ揃えます。ここが混ざると、判断がズレます。
df -h:容量(GB / MB)の残りを見るdf -i:inode(ファイルを作れる枠)の残りを見るdf -h は大丈夫そう)これが「空きはあるのに詰まる」状態です。
ファイルやディレクトリ1つごとに必要な「管理番号(席)」みたいなものです。小さいファイルを大量に作ると、容量より先に席が埋まることがあります。
列名を「運用で使う言葉」に置き換えます。
Filesystem(対象)どの領域(ファイルシステム)を見ているかです。例:/dev/vda2、tmpfs など。
Inodes(総 inode 数)この領域で使える inode の総数です。言い換えると、最大で作れるファイル/ディレクトリの上限です。
IUsed(使用中 inode 数)すでに使われている inode 数です。ざっくり「ファイル+ディレクトリの数」と考えると読みやすいです。
IFree(残り inode 数)まだ使える inode 数です。つまり、あと何個ファイルを作れるかです。
IUse%(inode 使用率)埋まり具合の割合です。運用判断ではまずここを見ます。
Mounted on(どこに繋がっているか)この領域が、OSのどの場所(パス)として見えているかです。例:/(ルート)や /run など。
Mounted on が / の行が “本命” になりやすい行が多いときは、見る順番を固定すると迷いが減ります。
Mounted on が / の行を見る(ここが詰まると影響が大きい)/var や /home が別パーティションなら、それぞれの行も見る/ が重要?/ の中には、ログ(/var/log)、Web(/var/www)、設定(/etc)、ユーザー(/home)など、ファイルが増えやすい場所がまとまって入ることが多いからです。
/dev/vda2 ... / を “文章” にするとこうなる数字の羅列を、1行ずつ文章にして読み替えます。
/dev/vda2 1638400 175092 1463308 11% /
/ に繋がった領域で使える inode は 1,638,400 個いま “inode 枯渇” で困る状態ではありません(ただし、増え方が急だと別なので後で触れます)。
tmpfs / devtmpfs が出てくるけど、基本は “本丸” ではないここを誤解すると「危険じゃないのに不安」になりやすいです。
tmpfs(例:/run / /dev/shm)/ の行で判断するのが安全ですdevtmpfs(例:/dev)デバイスファイルのための領域で、運用上の “ファイル増殖” の犯人になりにくいです。
IUse% の目安を決めておく「何%から危ないの?」が曖昧だと、放置しがちなので目安を固定します。
しかも df -h では “空きがある” と見えることがあるので、気づきにくいです。
inode を食いつぶすのは、サイズではなく「数」です。
「1KBのファイル」でも「1つ作れば inode を1つ消費」します。容量ではなく、件数の問題です。
いきなり消す前に、増えている場所を特定します。
sudo du --inodes -d 1 / | sort -n
上位に出てくる場所(/var / /var/log / アプリ用ディレクトリなど)を疑います。
sudo find /var -xdev -type f | wc -l
ここで数が異常に多い場合、ログやキャッシュの設計(増え方・掃除)が原因になりがちです。
sudo du --inodes -d 2 /var | sort -n
sudo du --inodes -d 2 /var/log | sort -n
「見る→判断する」を短いチェックに落とします。
/ の IUse% は何%?80%を超えていたら、増えている場所の特定(du --inodes / find)に進みます。
df -h と矛盾していない?容量は余っているのに挙動がおかしいなら、inode 枯渇を疑います(「空きがあるのに書けない」)。
いまは余裕でも、増加ペースが速いと一気に詰むので、数日分だけでも出力を残して差分を見ると安心です。
A. 代表的には「ファイルが作れない」系です。例:ログが書けない、更新が失敗する、一時ファイル作成で落ちる、などです。容量は空いているのに起きるので、まず df -i の IUse% を見て判断します。
tmpfs の IUse% も気にした方がいいですか?A. 基本は /(や /var 等の実ディスク側)を優先して見ます。tmpfs はメモリ上の一時領域なので、ここが増えていても「ディスク枯渇」とは別の軸です。
A. まず du --inodes で上位ディレクトリを洗い出し、当たりを付けたら find ... | wc -l でファイル数を確認すると迷いにくいです。
A. どちらも見ます。普段は df -h(容量)で十分でも、「容量は余裕なのに挙動が変」「ログが書けない」などのときは inode が原因になりがちです。セットで確認すると取りこぼしが減ります。