【Linux】df -Pとは?-hとの違いと運用で役立つ使い方を解説

Linux

「df -P」の「-P」とは?

-PPOSIX形式で出力するオプションです。

通常のdfコマンドは、ファイルシステム名が長い場合などに改行されることがあります。一方、df -Pは1つのファイルシステムを必ず1行で表示するため、シェルスクリプトで扱いやすくなります。


なぜ運用ではdf -Pが使われるのか?

サーバー運用では、「ディスク使用率が○%を超えたら自動で処理を実行する」という運用がよくあります。

例えば、

  • ディスク使用率が80%以上になったら古いログを削除
  • ディスク使用率が90%以上になったらメール通知
  • ディスク使用率が95%以上になったらサービスを停止

このような処理では、まずディスク使用率を正確に取得する必要があります。

そのためによく使われるのが次のコマンドです。

df -P / | awk 'NR==2 {gsub("%","",$5); print $5}'

出力例

82

取得した数値を条件分岐に利用できます。

USED=$(df -P / | awk 'NR==2 {gsub("%","",$5); print $5}')

if [ "$USED" -ge 80 ]; then
    echo "ディスク使用率80%以上"
fi

実際の運用例(F5 BIG-IP)

私が携わった運用では、ルートファイルシステムの使用率が80%を超えた場合に、日付付きログやdeadletterファイルを削除する仕組みを検討しました。

イメージは次のような流れです。

1. cronで定期実行
        │
        ▼
df -P / でルートファイルシステムの使用率を取得
        │
        ▼
80%以上?
   │        │
  No       Yes
   │        │
 終了   古いログ・deadletterを削除
        │
        ▼
容量を確保

このような自動化では、df -Pを使うことで出力形式が安定し、スクリプトの誤動作を防げます。


df -hとの違い

コマンド向いている用途
df -h人が画面で容量を確認する
df -Pシェルスクリプトで解析する

普段の確認ならdf -hで十分ですが、自動化や監視スクリプトではdf -Pが適しています。


まとめ

df -Pは「POSIX形式で表示する」というシンプルなオプションですが、運用現場では重要な役割を果たします。

特に、ディスク使用率を条件にログ削除やアラート通知を行うスクリプトでは、出力形式が固定されるdf -Pを利用することで、環境差異による誤動作を防ぎやすくなります。

コメント

タイトルとURLをコピーしました