ubuntu 12.04の容量がいっぱいになりました。


原因はとあるログファイルが設定ミスでログローテされていなくて、
それが何十GBにもなってしまったことです。
急いでrmで削除したのですが、
lsをすると削除されているようには見えるのですが、
dfをしても容量があいていないようです。
どこかに削除済みファイルとして残っているのでしょうか。

関係ないですが、apt-get cleanなど一般的なubuntuで容量を空ける方策は既に行いました。

よろしくお願い致します。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/12/19 11:16:12
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ポイント100pt

unix 系の OS では、プロセスがファイルをつかむと、それ以降、iノード(ファイルのアドレスのようなもの)しか認識しなくなります。
rm コマンドというのは、ファイルシステム上、iノードとファイル名などを結び付けている領域から情報を削除するだけで、ファイルをつかんでいるプロセスが生き残っているうちは、ディスクの空き容量は増えません。

あるログファイルをつかんでいるプロセスを、一旦、終了してください。
そうすると、df コマンドで表示される空き領域が増えます。

ファイルをつかんでいるプロセスを停止できないケースも、運用中にはあったりします。
そういう場合には、ファイルを削除するのではなくて、ゼロバイトのファイルを上書きすることでファイルサイズを切り詰めます。
例えば、HOGE.log を小さくしたければ、そのファイルに書き込み権限があるユーザで、以下のようにやります。

% cp /dev/null HOGE.log

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません