環境
ちょっとした検証環境として新規作成。
Pi | 使用イメージ |
---|---|
4B | 64 bit Raspberry Pi OS Lite https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2022-01-28/ |
加えて以前投稿したスクリプトで初期設定。
更に加えてこちらを参考にした定期報告をcrontab
に設定。(※ 今回投稿にあたり久しぶりに確認しようとしたらアクセスできなかったので Internet Archive から発掘)
問題発覚
環境構築の数日後、crontab
で設定したスクリプトが発火していない(しなくなった)ことに気が付いた。
crontab
が動かない。よくある問題でぐぐると多数の情報が見つかる。
まず確認すべきは、crontab
サービスが動いているか。Active:
項目がactive (running)
であれば OK。
pi@raspberrypi4:~ $ sudo systemctl status cron
● cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2022-02-16 01:12:49 JST; 4 days ago
Docs: man:cron(8)
Main PID: 430 (cron)
Tasks: 1 (limit: 4165)
CPU: 25.506s
CGroup: /system.slice/cron.service
mq430 /usr/sbin/cron -f
次は設定したコマンドが動くか。自分がcrontab
に設定したコマンドは以下。深夜0時に定期報告メールを飛ばすもの。
00 00 * * * sh state.sh | mutt -F mutt.conf -s "pi4定期報告" ***@gmail.com
sh state.sh | mutt -F mutt.conf -s "pi4定期報告" ***@gmail.com
をコピペでコマンドラインに流し込み実行。
返ってこない。えぇ?
更に確認すると、state.sh
スクリプト内の以下、df -h
で返ってこないことが分かった。
# ファイルシステム
df -h
これもよくある問題らしく、ぐぐると多数情報が見つかる。
そういえば別の Pi で、USB外付けHDD を接続し 24時間稼働しているものがあり、そちらも時々df
コマンドが返ってこない現象が発生する。使い古しの USB外付けHDD なので、それが原因と思われるが、一時的なデータしか保持しない用途であることと、再起動すると大抵直るので放置している。
実は今回 Pi4B の環境作成に使用した microSDカードも Pi3時代からの使い古しで、Win32DiskImager
でイメージを吸い出そうとすると極端に速度が遅い上にエラーで停止するという症状が発生するようになり使用を中止(放置)していたもの。
最近、パーティションの解放、再完全フォーマット等を行ったら使えるようになったっぽいので、その検証も兼ねていた。
という経緯があるので、microSDカードが原因の可能性が極めて高いが、再起動したらdf
コマンドで固まる問題は一応解決。取り合えずこれでよしとする。
(ダメだろ)
次の問題
しかし 0時になってもメールが飛んでこない。他の Pi も同様の設定が施してあり、毎日 0時に複数のメールが飛んでくる状況だけど、Pi4B だけ飛んでこない。
改めて Pi4B にssh
接続し、状況確認。あれれ……。ファイルのタイムスタンプがおかしい……。
そういえばraspi-config
でローカライズ設定していなかった……。_| ̄|○
デフォルト設定、世界標準時間のままだった。
初歩的過ぎる事項ってぽっかり抜けることがあるよなぁ。という自戒を込めた備忘録。