Linux初心者から経験豊富なシステム管理者まで、ディスク使用状況の把握は日常業務で欠かせないタスクです。ストレージの空き容量が足りなくなると、システムのパフォーマンス低下や障害発生の原因となるため、定期的な監視が重要です。
そんなときに役立つのが、df
コマンド。このコマンドを使えば、Linuxシステム内のディスク使用状況を簡単に確認することができます。
この記事では、df
コマンドの基本的な使い方だけでなく、主要なオプションや応用例までを網羅的に解説します。初心者でもすぐに使える基本機能から、システム運用で活用できる実践的なテクニックまで幅広く紹介しますので、ぜひ参考にしてください!
dfコマンドの基本的な使い方
df
コマンドは”disk free”の略で、その名の通り、ディスクの空き容量や使用容量を表示するためのコマンドです。Linuxシステムにおけるディスク管理の最初の一歩として、ぜひ使い方を覚えましょう。
基本構文
以下のシンプルな構文でdf
コマンドを実行できます。
df [オプション] [ファイルやディレクトリ]
オプションを指定しない場合、システム内のすべてのファイルシステムのディスク使用状況が表示されます。
実行例
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 50000000 15000000 35000000 30% /
tmpfs 8000000 0 8000000 0% /dev/shm
/dev/sdb1 20000000 5000000 15000000 25% /data
出力結果の解説
この出力結果には、以下の情報が含まれています:
- Filesystem:マウントされているファイルシステムの名前(例:
/dev/sda1
)。 - 1K-blocks:ファイルシステムの全体容量(1KB単位)。
- Used:使用中の容量。
- Available:使用可能な空き容量。
- Use%:使用率(百分率)。
- Mounted on:ファイルシステムがマウントされている場所(マウントポイント)。
これだけでも、システム全体のディスク使用状況を一目で把握できます。
dfコマンドの主要なオプション
df
コマンドには多くの便利なオプションが用意されており、特定の情報を詳細に確認することが可能です。このセクションでは、よく使われるオプションをピックアップして解説します。
よく使われるオプション一覧
1. -h:人間が読みやすい形式で出力
デフォルトの出力では容量が1KBブロック単位で表示されますが、-h
オプションを使うと、KB、MB、GBといった単位で表示され、視認性が向上します。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 15G 35G 30% /
tmpfs 7.8G 0 7.8G 0% /dev/shm
/dev/sdb1 20G 5G 15G 25% /data
2. -T:ファイルシステムの種類を表示
ファイルシステムの種類(例:ext4、xfs、tmpfsなど)を確認したい場合に利用します。ストレージの特性を把握するうえで便利です。
$ df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext4 50000000 15000000 35000000 30% /
tmpfs tmpfs 8000000 0 8000000 0% /dev/shm
/dev/sdb1 xfs 20000000 5000000 15000000 25% /data
3. -i:iノード使用状況を表示
ディスク容量だけでなく、iノード(ファイルやディレクトリを管理するインデックス)の使用状況を確認する場合に便利です。iノードが枯渇すると、新しいファイルを作成できなくなるため、注意が必要です。
$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 1000000 250000 750000 25% /
tmpfs 200000 0 200000 0% /dev/shm
/dev/sdb1 500000 100000 400000 20% /data
4. --total:合計値を表示
システム全体のディスク使用状況を確認したい場合に便利です。複数のファイルシステムを管理している場合、合計値が一目でわかります。
$ df --total
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 50000000 15000000 35000000 30% /
tmpfs 8000000 0 8000000 0% /dev/shm
/dev/sdb1 20000000 5000000 15000000 25% /data
total 78000000 20000000 58000000 26%
dfコマンドの応用
基本的な使い方を理解したら、次はdf
コマンドを実際の業務でどのように活用するかを見ていきましょう。ここでは、実践的な応用例をいくつか紹介します。
特定のディレクトリのディスク使用状況を確認する
特定のディレクトリがどのファイルシステムに属しているかを確認したい場合、以下のように指定するだけです。
$ df -h /var/log
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 15G 35G 30% /
これにより、指定したディレクトリのマウントポイントや使用状況を簡単に把握できます。
ディスク使用状況をスクリプトで監視
ディスク容量が一定のしきい値を超えた場合にアラートを出す仕組みをスクリプトで作成すると、日常の運用を効率化できます。
サンプルスクリプト
以下は、ディスク使用率が80%を超えるファイルシステムを検出するスクリプトの例です。
#!/bin/bash
THRESHOLD=80
df -h | awk 'NR>1 {if ($5+0 > ENVIRON["THRESHOLD"]) print $0}'
このスクリプトでは、THRESHOLD
変数でしきい値を設定し、超過した場合に対象の行を表示します。
定期的なディスク使用状況のレポート作成
以下のコマンドをcronジョブに登録することで、定期的にディスク使用状況を記録できます。
$ df -h > /var/log/disk_usage_$(date +%Y%m%d).log
これにより、過去の履歴を確認したり、トレンドを分析したりできます。
まとめ
df
コマンドはLinuxシステム管理において欠かせないツールの一つです。基本的な使い方からオプションの活用、さらにはスクリプトでの応用まで、幅広い用途で活躍します。
特に重要なポイントは以下の通りです:
-h
オプションで人間が読みやすい形式に変換。-i
オプションでiノードの使用状況も確認可能。- スクリプトやcronジョブを活用することで、効率的な監視体制を構築。
ぜひこの記事を参考に、df
コマンドを使いこなして、Linuxシステムの運用スキルをさらに高めましょう!
コメント