cronジョブのタイムアウトの設定


11

Ubuntu Linux cron(Vixie cron?)は、ジョブのタイムアウト設定をサポートしていますか?

具体的には、それまでに正常に終了しない限り、プロセスはX秒後に強制終了されます。

ネットワーク接続やさまざまな問題が原因でタスクがハングしている場合があります。手動でクリーンアップして強制終了しない限り、プロセスは永久にハングアップしたままになります。

回答:


26

Ubuntuでは、coreutilsの一部であるコマンドタイムアウトが存在します。このように使用して、タイムアウトを設定できます。Debian / Ubuntuの古いバージョンはこのコマンドをビルドおよびインクルードしませんでしたが、timeoutインストールできる同等のパッケージがあります。

# puppet shouldn't take more then 40 minutes!
47 * * * * root /usr/bin/timeout 2400 /usr/bin/puppet agent ...

3
期間には、接尾辞(秒を表す「s」、分を表す「m」、時間を表す「h」、日を表す「d」)を付けることもできます。したがって、読みやすくするために、上記を47 * * * * root / usr / bin / timeout 40m / usr / bin / puppet agentと書くこともできます
...-smoove666

いいえ、できません。少なくとも、この質問を書いたときの実装ではそうではありませんでした。coreutilsの新しいバージョンには、接尾辞sが付いています。古いDebianシステムで使用していたバージョンにはありませんでした。
ゾレダチェ

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.