运维 - linux crontab定时任务与flock
迷茫
迷茫 2017-04-17 16:31:40
0
2
910
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全員に返信(2)
黄舟

スクリプトに「ロック ファイルを削除し、新しいロック ファイルを作成する」というステートメントを追加することで、上記の問題を解決しました。ロックファイルが新しくなるたびに crontab がトリガーされることがわかりました。

画像からわかるように、現在時刻が 499 であることが検出されると、nginxchen.sh というスクリプトがトリガーされます。このスクリプトの実行時間は約 8 分です。

いいねを押す +0
左手右手慢动作

正直に言うと、あなたの具体的な理由がわかりません。文を借りれば、実践が真実をテストする唯一の基準であるため、投稿者のシナリオをシミュレートしました。

1. 2 分以上実行するスクリプトを作成し、

を実行します。

2. crontab に入れます
*/1 * * * * flock -xn /root/xx.lock -c 'sh /root/xx.sh >>/tmp/xx.log 2> &1 '

3. crontab の実行内容を表示します

元の投稿者が指摘した問題は存在しないことがわかります

そこで、次の提案を行います。
1. 短いスクリプトを作成し、サーバーでテストして、状況が同じかどうかを確認します。
2. /mnt/499.log ログ。異常な出力はありません
3. プロセスが実行中であるか、停止しているために crontab がロックを取得できていないか確認します。

投稿者自身が理由を見つけたら、忘れずに投稿してください

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!