状況
本番サーバの定期実行ジョブに 1 行追加する作業。手順書には「crontab -e で編集し、末尾に 1 行追加する」とある。作業者が入力したのは次の 2 行で、2 行目の Enter を押す直前だ。
Enter を押す前に止めるべき理由は?
crontab -l > ~/crontab.bakcrontab -r正答
- -r は編集ではなく、現在の crontab を確認なしですべて削除する
crontab -lの出力先は、ホームではなく /etc にすべきである- crontab は root ユーザでなければ実行できないコマンドである
- バックアップのファイル名に日付がないと復元に使えない
解説
crontab -r は、そのユーザの crontab を確認なしで丸ごと削除する。キーボードで e と r は隣り合っており、打ち間違えやすい組み合わせとして知られている。直前にバックアップを取っていても、復元するまでの間に動くはずのジョブが止まり、本番に影響が出る。出力先や日付付きファイル名は運用上の好みの範囲で、crontab は一般ユーザでも自分の分を編集できる。
この問題を含む 実務シチュエーション のテストを制限時間つきで解く
実務シチュエーションクイズへ