いつも通りにRasPi上のLAMPで構築したミニアプリにアクセスしようとしたところ、ロードページは表示されるものの肝心のコンテンツが表示されないという自体に遭遇。
昨日までは普通に使えていたのに……。
ということで急遽調査開始。
まずnetstat -antu
でLISTENINGしているポート番号のリストを表示してみると……3306がない。80と443はあるのに。
MySQLが壊れたのかと青ざめながらサービス状態を確認。
$ sudo service mysql status
● mysql.service - LSB: Start and stop the mysql database server daemon
Loaded: loaded (/etc/init.d/mysql)
Active: failed (Result: exit-code) since 月 YYYY-mm-dd hh:ii:ss JST; 8min ago
Process: 499 ExecStart=/etc/init.d/mysql start (code=exited, status=1/FAILURE)
mm月 dd hh:ii:ss keyberrypi mysql[499]: /etc/init.d/mysql: ERROR: The partition with /var/lib/mysql is too full! ... failed!
mm月 dd hh:ii:ss keyberrypi systemd[1]: mysql.service: control process exited, code=exited status=1
mm月 dd hh:ii:ss keyberrypi systemd[1]: Failed to start LSB: Start and stop the mysql database server daemon.
mm月 dd hh:ii:ss keyberrypi systemd[1]: Unit mysql.service entered failed state.
起動していません。なんてこったい。
しかし上記の起動しようとした際のログを見てみると気になる文言が。
ERROR: The partition with /var/lib/mysql is too full!
……もしかしてディスク容量が満杯になった?
ということでdf
。
$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/root 7.2G 6.9G 0 100% /
## 略
おーう。予想通り満杯じゃないですか。
こういう場合はログファイルが怪しい。ということで/var/log/
を見てみましょう。
$ ls -al /var/log/
合計 130732
drwxr-xr-x 11 root root 4096 6月 4 2017 .
drwxr-xr-x 12 root root 4096 4月 9 2017 ..
## 略
-rw------- 1 root utmp 21120 3月 4 20:57 btmp
-rw-r----- 1 root adm 25256083 3月 18 22:09 daemon.log
## 略
drwxr-xr-x 2 root root 4096 2月 9 2016 fsck
-rw-r----- 1 root adm 22776606 3月 18 22:00 kern.log
## 略
-rw-r----- 1 root adm 22119402 3月 18 22:00 messages
## 略
-rw-r----- 1 root adm 50545163 3月 18 22:09 syslog
## 略
うーん、確かにかなり喰っている……。そういえばそうそうmicro SDカード満杯にはならないだろうと高を括ってログローテートとかそういうのを設定してませんでした。
ということでこの辺りのログを削除します。削除の際は一応mv
してから再起動し、新しいログファイルへの書き込みが発生していることを確認して削除するようにします。
例: daemon.log 削除の場合
$ cd /var/log/
$ sudo mv daemon.log daemon.log.old
$ sudo reboot
## 再起動後
$ cd /var/log/
$ rm daemon.log.old
こんな感じで上記の大き目のログを削除。
ついでに
- apache2のログ
- mysqlのログ
- mongodbのログ
- 古いcrowiのバックアップ
も削除して、何とか10%削除して正常に動くようになりました。……これでも10%ってことは、どこか他のところで喰ってるものと思われますが、とりあえず緊急しょちまで。
いやー、しかし壊れたのかと思って焦りました……。