ミニマム中のミニマムはこれ
crontab -l | mail -s crontab youraddress@example.com
これであなたのメールアドレス(youraddress@example.com)に、crontabの内容が転送される。メールタイトルは、-s で指定しているので、分かりやすいタイトルに変えてね。
背景
crontab -e と crontab -r が近すぎるので、編集しようとして削除しちゃうってトラブルがある。もしくはありそう。
解決策あれこれ
- crontab < ファイル って方法
- 実ファイルがあるのでそいつがリポジトリ管理されていればいい
- これなら、ファイルが残るのだけれど、誰か(過去の私含めて)が直接crontabを編集しているかもしれない。不安だ不安だ。crontab -e そのものを殺してしまわないと。
- そもそもcrontb使うんだっけ?
- Jenkinsを始め、crontabに頼らずとも時刻起動するソリューションはある
- が、そういうのがないからこそcrontab使ってるんだよね
- ファイルにバックアップ
- crontab -l > backupdir/yyyymmdd.txt
- よくあるケースだけど、このバックアップファイル削除するのに勇気いるのよね。
- バックアップファイルを復活させることって実はあまりないから、うっかり復活しちゃわないところに置く方がいいと思うのです
メールに飛ばすというソリューション
ちょっとしたバックアップをメールに飛ばすというソリューションは、ケースとしては有用。FTPが禁止されている環境でも、バッチ処理完了メールまで閉じてしまってるケースってのはあまりない。(が、本当にセキュアな環境ならこの穴も塞がれているはず)
「あのバッチ処理何時だっけ?」って時にも、メールを検索するだけなので、リードオンリー環境としては便利。