df コマンド:ディスク使用量の確認と -h、-T、-i オプション
df コマンドは、マウントされたファイルシステムごとに全体のサイズ、使用量、空き容量、使用率を 1 行ずつ出力する Linux コマンドです。AlmaLinux 9 サーバーと Debian 12 サーバーで df に -h、-T、-i、--output、-x オプションを 1 つずつ付けて出力を比べた結果、ディスク容量は Use% 列で、ファイル数の上限は df -i の IUse% 列で分けて確認するようになりました。
AlmaLinux 9.8 サーバーの出力は、デバイス名とディスクサイズ、メモリサイズによって決まる tmpfs のサイズと使用量を互いに整合する例の値に置き換え、そのサーバーにしかないマウント行は省きました。コマンドに書いたフォルダーのパスも例の値で、Debian 12 サーバーの出力はそのまま載せています。
1️⃣ Linux df コマンドの使い方
基本形は [df オプション ファイル] です。ファイルを書かなければマウントされたファイルシステムをすべて出力し、オプションがなければサイズを 1,024 バイトのブロック数で表します。
dfFilesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1890316 0 1890316 0% /dev
tmpfs 1921072 0 1921072 0% /dev/shm
tmpfs 768432 17104 751328 3% /run
efivarfs 128 4 120 4% /sys/firmware/efi/efivars
/dev/sda4 52403180 10265000 42138180 20% /
/dev/sda3 983040 319488 663552 33% /boot
/dev/sda2 204580 7116 197464 4% /boot/efi
tmpfs 384212 4 384208 1% /run/user/0出力は 6 列で、各列の内容は下の表のとおりです。
| 項目 | 内容 |
|---|---|
| Filesystem | デバイス名またはファイルシステム名(tmpfs など) |
| 1K-blocks | 全体のサイズ(1,024 バイトのブロック数)· -h を付けると Size |
| Used | 使用したサイズ |
| Available | 空きサイズ · -h を付けると Avail |
| Use% | 使用率 · Used ÷ (Used + Available) を切り上げ |
| Mounted on | マウントポイント(ファイルシステムがつながったフォルダー) |
デバイスをフォルダーにつなぐ作業が ディスクのマウントで、起動のたびに自動でつなぐには /etc/fstab に書いておきます。
AlmaLinux 9.8 サーバーの出力で行ごとに計算したところ、Use% は Used を Used と Available の合計で割った値を切り上げた数と同じでした。上の出力のルート(/)は、10265000 を 52403180 で割った 19.6% が 20% と表示されました。
df は coreutils パッケージに含まれています。バージョンは [df --version] の 1 行目で確認し、AlmaLinux 9.8 サーバーは coreutils 8.32、Debian 12 サーバーは 9.1 でした。
df --version | head -n 1df (GNU coreutils) 8.32df --version | head -n 1df (GNU coreutils) 9.12️⃣ df -h オプション
-h はサイズを 1,024 単位でまとめ、K、M、G を付けて出力します。
df -hFilesystem Size Used Avail Use% Mounted on
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 751M 17M 734M 3% /run
efivarfs 128K 3.8K 120K 4% /sys/firmware/efi/efivars
/dev/sda4 50G 9.8G 41G 20% /
/dev/sda3 960M 312M 648M 33% /boot
/dev/sda2 200M 7.0M 193M 4% /boot/efi
tmpfs 376M 4.0K 376M 1% /run/user/0ルート(/)の 1K ブロック 52403180 は 50G に、使用量 10265000 は 9.8G に変わりました。数値は切り上げた値で、10 未満は 9.8G のように小数点以下 1 桁まで、10 以上は 50G のように整数で表示されました。
-H は 1,024 の代わりに 1,000 単位でまとめます。
df -HFilesystem Size Used Avail Use% Mounted on
devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 787M 18M 770M 3% /run
efivarfs 132k 3.9k 123k 4% /sys/firmware/efi/efivars
/dev/sda4 54G 11G 44G 20% /
/dev/sda3 1.1G 328M 680M 33% /boot
/dev/sda2 210M 7.3M 203M 4% /boot/efi
tmpfs 394M 4.1k 394M 1% /run/user/0同じルートが -H では 54G と表示されて -h より数が大きくなり、キロ単位は 132k のように小文字の k に変わりました。
ファイルやフォルダーを書くと、そのパスを含むファイルシステムの 1 行だけを出力します。
df -h /root/workFilesystem Size Used Avail Use% Mounted on
/dev/sda4 50G 9.8G 41G 20% //root/work はルート(/)の中にあるフォルダーなので、/dev/sda4 の行が表示されました。フォルダーごとの使用量は duコマンドで合計します。
Debian 12 サーバーの一般アカウントでホームフォルダー(~)を書くと /dev/vda2 の 1 行が表示され、使用率は 52% でした。
df -h ~Filesystem Size Used Avail Use% Mounted on
/dev/vda2 23G 12G 11G 52% /3️⃣ df -T ファイルシステムの種類
-T は Filesystem の次に Type 列を加えて、ファイルシステムの種類を出力します。
df -hTFilesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 751M 17M 734M 3% /run
efivarfs efivarfs 128K 3.8K 120K 4% /sys/firmware/efi/efivars
/dev/sda4 xfs 50G 9.8G 41G 20% /
/dev/sda3 xfs 960M 312M 648M 33% /boot
/dev/sda2 vfat 200M 7.0M 193M 4% /boot/efi
tmpfs tmpfs 376M 4.0K 376M 1% /run/user/0ディスクパーティションの /dev/sda4 と /dev/sda3 は xfs、/boot/efi は vfat でした。tmpfs と devtmpfs はディスクの代わりにメモリを使うファイルシステムです。
Debian 12 サーバーのルートは ext4 でした。
df -hT ~Filesystem Type Size Used Avail Use% Mounted on
/dev/vda2 ext4 23G 12G 11G 52% /-t は書いた種類だけを残し、-x は書いた種類を除いて出力します。
df -t xfs -hFilesystem Size Used Avail Use% Mounted on
/dev/sda4 50G 9.8G 41G 20% /
/dev/sda3 960M 312M 648M 33% /boot-t xfs で実行すると、xfs の 2 行だけが残りました。
df -x tmpfs -hFilesystem Size Used Avail Use% Mounted on
devtmpfs 1.9G 0 1.9G 0% /dev
efivarfs 128K 3.8K 120K 4% /sys/firmware/efi/efivars
/dev/sda4 50G 9.8G 41G 20% /
/dev/sda3 960M 312M 648M 33% /boot
/dev/sda2 200M 7.0M 193M 4% /boot/efi-x tmpfs は tmpfs の 3 行を除き、名前が似ている devtmpfs はそのまま残りました。種類の名前が完全に同じ行だけが除かれるので、devtmpfs まで除くには -x をもう 1 回書きます。
df -x tmpfs -x devtmpfs -hFilesystem Size Used Avail Use% Mounted on
efivarfs 128K 3.8K 120K 4% /sys/firmware/efi/efivars
/dev/sda4 50G 9.8G 41G 20% /
/dev/sda3 960M 312M 648M 33% /boot
/dev/sda2 200M 7.0M 193M 4% /boot/efi4️⃣ df -i inode 使用量
inodeは、ファイルとフォルダーごとに 1 つずつ使われる管理情報です。-i はサイズの代わりに inode の数を出力します。
df -iFilesystem Inodes IUsed IFree IUse% Mounted on
devtmpfs 472579 377 472202 1% /dev
tmpfs 480268 2 480266 1% /dev/shm
tmpfs 819200 645 818555 1% /run
efivarfs 0 0 0 - /sys/firmware/efi/efivars
/dev/sda4 26201024 98214 26102810 1% /
/dev/sda3 524288 362 523926 1% /boot
/dev/sda2 0 0 0 - /boot/efi
tmpfs 96053 21 96032 1% /run/user/0Inodes は作成できる全体の数、IUsed は使用した数、IFree は残りの数、IUse% は使用率です。vfat の /boot/efi と efivarfs は inode 数が 0 なので、IUse% が - と表示されました。
ファイルを 1 つ作るたびに inode が 1 つずつ使われるため、IUse% が 100% になると Use% が低くても新しいファイルを作れません。小さなファイルがたくさんたまるサーバーなら、[df -h] と [df -i] を一緒に確認します。
-h も付けると数も K、M 単位でまとめられ、ルートの 26201024 個が 25M と表示されました。
df -ihFilesystem Inodes IUsed IFree IUse% Mounted on
devtmpfs 462K 377 462K 1% /dev
tmpfs 470K 2 470K 1% /dev/shm
tmpfs 800K 645 800K 1% /run
efivarfs 0 0 0 - /sys/firmware/efi/efivars
/dev/sda4 25M 96K 25M 1% /
/dev/sda3 512K 362 512K 1% /boot
/dev/sda2 0 0 0 - /boot/efi
tmpfs 94K 21 94K 1% /run/user/0Debian 12 サーバーは inode 6285088 個のうち 188009 個を使っていて、IUse% は 3% でした。
df -i ~Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/vda2 6285088 188009 6097079 3% /5️⃣ df --output で出力列を指定
--output は出力する列と順番を直接決めます。列名はカンマでつないで書き、使える名前は下の表の 12 種類です(--help 基準)。
| 列名 | 見出し | 内容 |
|---|---|---|
| source | Filesystem | デバイス名 / ファイルシステム名 |
| fstype | Type | ファイルシステムの種類 |
| itotal | Inodes | inode の総数 |
| iused | IUsed | 使用した inode の数 |
| iavail | IFree | 残りの inode の数 |
| ipcent | IUse% | inode 使用率 |
| size | Size | 全体のサイズ |
| used | Used | 使用したサイズ |
| avail | Avail | 空きサイズ |
| pcent | Use% | 使用率 |
| file | File | コマンドに書いたファイル名 |
| target | Mounted on | マウントポイント |
df --output=source,fstype,size,used,avail,pcent,target -hFilesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 751M 17M 734M 3% /run
efivarfs efivarfs 128K 3.8K 120K 4% /sys/firmware/efi/efivars
/dev/sda4 xfs 50G 9.8G 41G 20% /
/dev/sda3 xfs 960M 312M 648M 33% /boot
/dev/sda2 vfat 200M 7.0M 193M 4% /boot/efi
tmpfs tmpfs 376M 4.0K 376M 1% /run/user/07 つの列を順に書くと、[df -hT] と同じ出力になりました。
df --output=target,pcent,avail -hMounted on Use% Avail
/dev 0% 1.9G
/dev/shm 0% 1.9G
/run 3% 734M
/sys/firmware/efi/efivars 4% 120K
/ 20% 41G
/boot 33% 648M
/boot/efi 4% 193M
/run/user/0 1% 376M列名を target、pcent、avail の順に書くと、マウントポイントが先頭に来て、使用率と空きサイズがその順に続きました。
--total は一番下に合計行を加えます。
df -h --totalFilesystem Size Used Avail Use% Mounted on
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 751M 17M 734M 3% /run
efivarfs 128K 3.8K 120K 4% /sys/firmware/efi/efivars
/dev/sda4 50G 9.8G 41G 20% /
/dev/sda3 960M 312M 648M 33% /boot
/dev/sda2 200M 7.0M 193M 4% /boot/efi
tmpfs 376M 4.0K 376M 1% /run/user/0
total 56G 11G 46G 19% -total 行は上の 8 行をすべて足した値なので、tmpfs のようにメモリを使うファイルシステムまで合算されました。
🔲 df コマンドシミュレーター
下のシミュレーターで df に -h、-H、-T、-i、-t、-x、--output、--total を付けて実行し、オプションごとに出力列がどう変わるかを確認できます。
6️⃣ df コマンドのエラー
存在しないパスを書くと [No such file or directory] が表示され、終了コード 1 で終わりました。
df -h /nonexistent-dirdf: /nonexistent-dir: No such file or directory-t にサーバーにない種類を書くと出力する行が 1 つも残らず、[no file systems processed] が表示され、終了コードは 1 でした。
df -t nosuchfsdf: no file systems processed--output に存在しない列名を書くと、その名前がエラーメッセージに表示されました。
df --output=bogusdf: option --output: field 'bogus' unknown
Try 'df --help' for more information.-i や -T を --output と一緒に書くと [mutually exclusive] が表示され、同じ終了コード 1 で終わりました。--output で inode や種類を見るには、itotal、fstype のような列名を書きます。
df -i --outputdf: options -i and --output are mutually exclusive
Try 'df --help' for more information.🔢 FAQ & おすすめコンテンツ
ℹ️ 提携について
当サイトのコンテンツにはアフィリエイトリンクが含まれています。訪問者がこのリンクを通じて商品やサービスを購入すると、当サイトは販売元から手数料を受け取ります。この過程において、購入者が支払う金額(イベント割引適用で金額が下がります↓)は上昇しません。掲載されている価格・割引・在庫情報は作成時点のものであり、実際とは異なる場合がありますので、ご購入前に販売元にて最終確認をお願いいたします。商品の選定および評価は独自の基準に基づいて行われており、手数料の支払いの有無は紹介順や評価内容に影響を与えません。