はじめに
以前、SDカード延命方法の為のログの制御方法を2つ紹介しました。
今回は、その続きのRAMDisk編でご紹介したいと思います。今回やることは、ログの出力先をSDカードではなく、メモリにしてしまうという方法です。
テンポラリ領域をRAMへ配置する
1.fstabを編集し、下記の2つを追加する。
sudo nano /etc/fstab
tmpfs /var/log tmpfs defaults,size=32m,noatime,mode=0755 0 0
2.ラズパイの再起動
sudo reboot
3.下記のコマンドを実行して、エラーが出ている部分があれば、フォルダやファイルを調べましょう。(特にエラーがなければ、ここで完了です。)
cat /var/log/syslog | grep /var/log
4.前の処理の結果を、起動スクリプトに追加する。
sudo nano /etc/rc.local
例えば、私の場合は「squid」のフォルダや、その中の「access.log」などのファイルがないとサービスがエラーを出力していましたので、空ファイルやフォルダを、起動時に作るようにしました。
mkdir -p /var/log/squid
chmod 755 /var/log/squid
chown proxy:proxy /var/log/squid
touch /var/log/squid/access.log
chmod 640 /var/log/squid/access.log
chown proxy:proxy /var/log/squid/access.log
touch /var/log/squid/cache.log
chmod 640 /var/log/squid/cache.log
chown proxy:proxy /var/log/squid/cache.log
touch /var/log/squid/deny.log
chmod 640 /var/log/squid/deny.log
chown proxy:proxy /var/log/squid/deny.log
また使っていないサービスなどが何か書き込みしていることに気づいたらサービス自体を削除してしまえば良いと思います。(例えば、ラズパイからメールを送ることが無いので「exim4」を削除するなど。)
apt-get remove exim4*
5.ラズパイを再起動して、先ほどと同じようにエラーが無いか確認しましょう。
sudo reboot
※全て問題なければ、fstabで設定した情報をコメントアウトして、SDカード上の「/var/log」を削除することも出来ます。
sudo rm -fr /var/log
まとめ
いかがだったでしょうか?簡単な説明で申し訳ございませんが、上記の説明でよくわからない方は、少し危険な作業なのでやらない方が良いかもしれません。では安定したラズパイサーバ皆さんも作ってみてください。
コメント