【Linux】dfコマンドとduコマンドの結果の違いに困ったら

久々のエントリーです。今日はサーバ運用ではまったdfとduの違いに困ったときの対処法です。

dfでディスクの容量を確認することがあるかもしれませんが、dfの結果90%使用しているという結果を得て、duコマンドでどこのディレクトリが容量食ってるんだ?

というような流れで調査をすることが多いと思います。僕はこんな感じでいつもディスクの占有している場所を調べています。

ところがduで色々調べてもどう見てもdfの結果とduの結果が違うときがあります。
詳しい違いはここでは書きませんが、そんな状況に出会ったときに以下のことをして解決しました。


ls -al /proc/*/fd/* | grep deleted


この結果何がわかるかというとdfコマンドでは認識しているけど実際には消されているファイルがわかります。

プロセスがまだ使っているのに強引に消された(移動された)ファイルがこれに該当します。

上記コマンドでファイルとプロセスIDが割り出せるのでその消されたファイルを使っているプロセスを再起動してあげるなりkillしてあげることで、この架空のファイルの存在も消えdfコマンドの結果に正しく反映されます。

以上メモでした。

役に立ったと思ったら下記をクリックお願いします。

今後の更新の励みになります。

にほんブログ村 IT技術ブログ IT技術メモへ

にほんブログ村 IT技術ブログへ

不定期ですが技術ネタを共有して行きますのでもしよろしければ購読いただければと思います

follow us in feedly

スポンサーリンク

スポンサーサイト
テーマ : UNIX/Linux
ジャンル : コンピュータ

Tag:Linux  Trackback:0 comment:0 

プロフィール

6rats

Author:6rats
こんにちは、ITベンチャーで働くエンジニアです
主に自分の周りで起きた技術的なことをメモとして書き残して行きます。
Android以外にもRuby/Ruby on RailsやFuelPHPなどなどたまにやります。基本的なスタンスとしては興味があるもしくは必要になったらいろんなことにチャレンジします。
最近はiOSアプリ開発を始めています。

購読
follow us in feedly
個人プロダクト

Androidアプリ

Twitterクライアント

Webアプリケーション

EcPriceWatch(Amazon価格の推移を計測、最安値を知らせるサービス)
Google AdSense
ブログ村
にほんブログ村 IT技術ブログへ
にほんブログ村
ブロとも申請フォーム

この人とブロともになる