【SadServer】Linuxコマンドの練習

Linux

SadServersの問題の解説です。 URLは、https://sadservers.com/newserver/saint-john

目次

“Saint John”: what is writing to this log file?

Level: Easy

Description: A developer created a testing program that is continuously writing to a log file /var/log/bad.log and filling up disk. You can check for example with tail -f /var/log/bad.log.
This program is no longer needed. Find it and terminate it.

ある開発者が作成したテストプログラムが、ログファイル /var/log/bad.log に書き込み続け、ディスクを一杯にしています。例えば、tail -f /var/log/bad.logで確認できます。
このプログラムはもう必要ありません。見つけて終了させてください。

解法

/var/log/bad.log にログが出力され続けているが、どのプログラムが、/var/log/bad.logをログを書き込んでいるのかわからない。そのプログラムを見つけて、停止させる。

# lsof コマンドで、/var/log/bad.log ファイルを開いているプロセスを探す

ubuntu@ip-172-31-32-108:/$ lsof /var/log/bad.log 
COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF  NODE NAME
badlog.py 601 ubuntu    3w   REG  259,1    10323 67701 /var/log/bad.log

# PID 601の badlog.py というプロセスということがわかるので、 PID 601を殺す

kill -9 601

# tail -f を実行し、ログが増えないことを確認する。
tail -f /var/log/bad.log

補足

  • lsof: オープンしているファイルのプロセスを表示する。
  • kill: プロセスを終了します。 -9 で 強制終了。
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次