コマンド
df
ディスクの使用状況を表示
UNIX/Linux の df コマンドは、ディスクの全体容量・使用中の容量・空き容量・使用率など、使用状況を表示するコマンドである。
●df コマンドの基本的な使い方
df コマンドを実行すると、1ファイルシステムごとに、デバイス名、全容量、使用容量、残り容量、使用割合、マウント先を表示する。
% df
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/sd0s1a 118959 71251 38192 65% /
/dev/sd0s1f 3540086 2488705 768175 76% /usr
/dev/sd0s1e 197951 19640 162475 11% /var
procfs 4 4 0 100% /proc
/dev/cd0c 662942 662942 0 100% /cdrom
●df コマンドのオプション
▷ -T マウントしているファイルシステムのタイプを表示
df コマンドに -T オプションをつけると、下記のようにファイルシステムの種類 (タイプ) を表示する。下記例であれば、/ と /boot は ext4 であり、/dev/shm は tmpfs であることがわかる。
% df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/vda3 ext4 100762004 48430140 47206696 51% /
tmpfs tmpfs 509976 0 509976 0% /dev/shm
/dev/vda1 ext4 243823 77269 153754 34% /boot
ファイルシステムについては下記を参照。
▷ -i i-node の消費量も表示
i-node はファイルを作成するたびに必ず一つ必要となる。i-node を全て使いつくすと、ディスク容量に空きがあっても新たなファイルを作成できなくなる。iused・ifree・%iused が i-node に関わる情報で、それぞれ「使用中の i-node」「未使用の i-node」「i-node の使用率」である。
Filesystem 1K-blocks Used Avail Capacity iused ifree %iused Mounted on
/dev/ad0s1a 37352396 16260170 18104036 47% 363569 4464589 8% /
devfs 1 1 0 100% 0 0 100% /dev
procfs 4 4 0 100% 1 0 100% /proc
linprocfs 4 4 0 100% 1 0 100% /usr/compat/linux/proc
▷ -H 人間が読みやすい単位で表示
% df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 38G 17G 19G 47% /
devfs 1.0K 1.0K 0B 100% /dev
procfs 4.1K 4.1K 0B 100% /proc
linprocfs 4.1K 4.1K 0B 100% /usr/compat/linux/proc
▷ -k 512バイト単位ではなく、1キロバイト単位で表示
普通 df コマンドをオプションなしで実行すると、容量が 512 バイト単位で表示されてしまい わかりにくいので、上の例のように -k オプションを使うとよい。また、-k オプションの代わりに環境変数 BLOCKSIZE を設定しておく手もある。
●使用率について
df で表示される使用率 (capacity) は 100% となっていても本当にディスクが一杯になっているわけではなく、ある程度余裕を持たせてある。この余分なスペースは速度向上のために使われているので、一般ユーザはこのスペースを利用することができない。ただし root だけは領域全体を使用することができる。もし限度一杯までファイルを作成すると、df の表示が 100% を越えて「110%」などと表示される。
FreeBSD 2.2.7-RELEASE〜5.2.1-RELEASE では、この余分なスペースが全体の 8% 確保される。このパーセンテージは、フォーマット時に newfs コマンドで指定することができるが、tunefs コマンドで動的に変更することも可能である。
Solaris や HP-UX 標準の df (つまり SystemV の df) では、以下のように使用率が表示されないため、わかりづらい。
% df
/ (/dev/dsk/c0t0d0s0 ): 632572 ブロック 309231 files
/proc (/proc ): 0 ブロック 7851 files
/dev/fd (fd ): 0 ブロック 0 files
/opt (/dev/dsk/c0t0d0s3 ): 3287522 ブロック 302842 files
/usr/local (/dev/dsk/c0t0d0s5 ): 2832984 ブロック 325437 files
/home (/dev/dsk/c1t1d0s0 ):39442983 ブロック 1904820 files
Solaris であれば
HP-UX であれば
とすることで、使用率を表示することができる。
読み方
df
(UNIXコマンド) [でぃー・えふ]