zoneminder で監視カメラの運用をしているが、ふと見てみると、2月19日以降映像が撮れていない。
ディスク容量80%で古いやつを自動削除する設定にしているが、filter の設定見てみると100件該当があり、それが何らかの理由で削除できずにデッドロックしてるのかな? と思い、削除するも変わらず。
監視カメラの raspberry pi 3 をチェックすると、応答なし……。
ssh に応答しないとなると、ディスプレイとキーボード繋がないとどうなっているのか分からないが、面倒なので電源ブチ(^^;;
raspberry pi 3 は、SDカード延命の為、ログ類はシステムシャットダウンを実行すると、SDカードに書き戻すが、電源ブチではRAMDISK上で揮発してしまう。
なので、応答無しになっていた理由は分からず。
暫くシステムアップデートやってなかったし、長期間再起動してなかったから、メモリーリークのアプリケーションがメモリ食い潰したのかなあ。
という訳で、raspberry pi に自動アップデートをやってくれる cron-apt をどうにう。
ファイルサーバの openrd ultimate で導入しているが、セキュリティアップデートは自動で適用してくれ、カーネルは「更新あるで」とメールで通知してくれる。
いや、「更新あるで」と関西弁では言ってくれないが(^^;、次の様な感じ。
|
The following NEW packages will be installed: linux-image-4.9.0-12-marvell |
ただ、こいつはメールシステムが動いていないと通知してくれないので、raspberry pi 3に exim4 のスマートホストによるメール配送を設定。
|
# dpkg-reconfigure exim4-config |
raspberry pi 3 でメール読まないので、全部 noizumi@silverfox.p.noizumi.org へ配送。スマートホストは openrd ultimateのIPアドレスを設定。
※@は全角に変えてます。以後、コピペ注意
openrd ultimate の exim4 もスマートホストの設定だが、メールを受信する設定になっているので、raspberry pi 3 からメールを投げれば届くはず。
メールの運用にはDNSが必要で、DNSはローカルで立てているから、raspberrypi.p.noizumi.org の正引きと逆引きを設定。
raspberry pi 3 の端末から、noizumi@silverfox.p.noizumi.org へメール送ったら届いたので、apt cron がメール投げても多分、大丈夫。
cron-apt の設定で、 /etc/cron-apt/config を編集
|
# Configuration for cron-apt. For further information about the possible # configuration settings see /usr/share/doc/cron-apt/README.gz. MAILTO="noizumi@silverfox.p.noizumi.org" MAILON="upgrade" |
確か前に openrd ultimate の設定弄っていい感じにニギッたはずなので、設定をパクる!次のファイルを追加
[/etc/cron-apt/actions.d/5-security]
|
upgrade -y -o APT::Get::Show-Upgraded=true |
[etc/cron-apt/config.d/5-security]
|
OPTIONS="-o quiet=1 -o APT::Get::List-Cleanup=false -o Dir::Etc::SourceList=/etc/apt/sources.list.d/security.list -o Dir::Etc::SourceParts=\"/dev/null\"" |
確かこの設定はセキュリティアップデートを問答無用で適用する為に設定したはずなので、これで危ない穴はパッチ提供時に即座に適用されるはず。
設定が終わったので、取り敢えず cron-apt の手動実行
更新したばっかりだったので、メールは飛ばず。/var/log/cron-apt/log を確認
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
CRON-APT RUN [/etc/cron-apt/config]: Sat Mar 14 09:39:21 JST 2020 CRON-APT ACTION: 0-update CRON-APT LINE: /usr/bin/apt-get -o quiet=1 update -o quiet=2 CRON-APT ACTION: 3-download CRON-APT LINE: /usr/bin/apt-get -o quiet=1 autoclean -y Reading package lists... Building dependency tree... Reading state information... Del libqt5opengl5 5.7.1+dfsg-3+rpi1+deb9u1 [133 kB] <中略> CRON-APT LINE: /usr/bin/apt-get -o quiet=1 dist-upgrade -d -y -o APT::Get::Show-Upgraded=true Reading package lists... Building dependency tree... Reading state information... Calculating upgrade... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. CRON-APT ACTION: 5-security CRON-APT LINE: /usr/bin/apt-get -o quiet=1 upgrade -y -o APT::Get::Show-Upgraded=true Reading package lists... Building dependency tree... Reading state information... Calculating upgrade... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. |
autoclean やってくれるのね。問題は無い模様。
カーネルはさすがに自動でやっちゃうと、起動不能になる可能性もあるので、メールで通知が来たら手動で行おうと思う。
カーネル更新も自動で行ないたい場合は、/etc/cron-apt/action.d/3-download の -d オプションを削ればOK。