PDA

View Full Version : Cron Daemon


equizard
2005/02/17, 06:37 PM
s88です。

MTの予約投稿機能を使っています。

cronファイルの設定は以下の通りで、public_htmlの直下にcron1.shとして置いています。

#!/bin/sh
cd /virtual/aaa/public_html/mt/
/usr/bin/perl ./tools/run-periodic-tasks
exit

※aaaはxreaのID

最近までは問題なく投稿できていたのですが、今日予約投稿してみたら、予約時間に投稿できていませんでした。

先日、Cron Daemonから以下のメールが来ていました。

/virtual/aaa/public_html/cron1.sh: line 3: 10720 Killed /usr/bin/perl ./tools/run-periodic-tasks

どういう意味でしょう?
予約投稿が使えなくなったことと、何か関係があるのでしょうか?

webmaster
2005/02/17, 10:49 PM
同じエラーが連日続いておりますでしょうか。
根本的にスクリプトでエラーが発生している場合と、負荷リソースが一定量を超えたなどの環境要因でエラーが発生した一過性の場合とがあります。

equizard
2005/02/18, 10:45 AM
エラーメッセージが送られてきたのは、17日の3時と12時の2回のみです。

原因が分からなかったので、その後に、cron1.shに

echo Future: MT3.11 run-periodic-tasks

と追加して様子をみたところ、設定通り1時間毎に、echoをメールで受け取っております。

MTの予約投稿は本日も予定しておりますので、もう1度トライしてみます。

equizard
2005/02/18, 10:06 PM
本日(2月18日)は、予約投稿できました。

何度か様子を見てみます。

不具合が再発したら報告します。

お手数掛けました。

equizard
2005/02/20, 01:01 PM
と思って安心してecho文を外したら、20日の4時と5時に、先日と同様のエラーメッセージがありました。

なんなんでしょう?

webmaster
2005/02/21, 02:35 PM
こちらで実行させていただいても宜しい場合は、実行させていただき、使用されているCPU、メモ
リー量などを調べさせていただきます。
リソース制限が原因であるか否かはわかります。

equizard
2005/02/21, 04:20 PM
お手数をおかけしますが、ご対応のほど宜しくお願いします。

私の知識では、なんともしようがありませんので・・・

cid
2005/02/27, 06:35 PM
同じ系統の問題なので質問させて下さい。

Cron を使用して なつみかん(http://aniki.haun.org/natsu/) を利用したアンテナを構築中です。
26日までは問題なく Cron が作動していたのですが、今日になって完全に作動が止まってしまいました。
2日間くらい安定して作動していたので安心していた矢先だったので困惑しています :(
Cron 実行時に送られて来る筈のメールもない状態で、原因と状況が掴めません。
nm.pl にブラウザで直接アクセスした場合は正常に作動します。

宜しくお願いします。

cid
2005/02/28, 08:42 AM
今朝になって Killed されてる旨のメールが来るようになりました。
しかし、試用期限中は問題なく動かせて、期限切れで課金した後に制限が掛かったのは納得いかないんですが...
Cron で回すアンテナ設置の為に有料免除にしたのに、これでは意味がありませんOrz

webmaster
2005/02/28, 09:23 PM
体験期間中、後で仕様が変わることはありませんので、別の原因が考えられます。
こちらで実行しても宜しい場合は、リソース(メモリー、CPU、実行時間などで引っかかっていないか)、実行状況を監視させていただきます。アカウント名、サーバー名をご連絡ください。
割り当てリソース量などが不足している場合は、調整を検討します。

また、strace(/usr/bin/strace)という実行状況をトレースするソフトウェアが入っています。
使い方はサポート対象外となりますが、お使いいただければどの時点でエラーとなっているか把握できる可能性があります。

cid
2005/02/28, 11:22 PM
ありがとうございます。
アカウントとサーバーを書いた PM を送りました。

strace も含めて、こちらでも調べてみます。
宜しくお願いします。

beens
2005/03/04, 09:12 PM
equizardさんと全く同じ現象が出ています。
サーバーも同じくS88で、MTの予約投稿を使っています。

2月下旬頃からCron Daemonよりメッセージが届き続けています。
多い日で3〜4通、全く来ない日もあります。
時間帯もばらついて一定ではありません。

/virtual/xreaid/cron1.sh: line 3: 31293 Killed /usr/bin/perl
./tools/run-periodic-tasks

この31293 Killed の数字は毎回違い、4桁の時もあります。
予約投稿を使用していない時でも届きます。

予約投稿は問題なくできるようなのですが、何が原因でしょうか。

cid
2005/03/17, 02:53 AM
PM を送ったのですが、実行して頂いた結果は如何でしたでしょうか。
正常に作動しないので運営に支障を来たしています。

20日程経っていますが、今後の運営にも関わってきますので、更に調査に時間が掛かる場合にはお知らせ頂ければ非常に助かります。

webmaster
2005/03/17, 11:41 PM
原因はメモリー量制限となっています。
個別に、または、すぐには仕様を変更できないため、全体的に変更するか検討させていただいております。
ご迷惑をおかけしますが、ご了承ください。

詳しい仕様の話になりますが、CGIで使えるメモリー量と、CRON、SSHなどのシェルで使えるメモリー量制限は別となっております。前者の方が多くなっています。
お使いのスクリプトなどの場合、CGIで実行できるようにしていただいた上で、wgetなどでCGI経由で動作させると回避できます。

上記でも回答させていただいたとおり、全体的にリソース制限を緩和させていただくかか否かは現在検討段階です。ご了承ください。

equizard
2005/03/18, 09:40 AM
了解しました。お手数をかけました。ありがとうございます。

お使いのスクリプトなどの場合、CGIで実行できるようにしていただいた上で、wgetなどでCGI経由で動作させると回避できます。

ちょっとそこまでの知識はないんですが、調べながら検討してみます。下手にいじると怖いんで :p

ちなみに、MTの予約投稿自体は出来ています。エラーメッセージは送られてきますけど。

beens
2005/03/19, 04:10 AM
ご回答ありがとうございました。CGI経由で…というのは自分の知識で出来るか分かりませんが何とか努力してみます。
できましたらリソース制限の緩和のご検討の程、よろしくお願いします。

cid
2005/03/19, 12:35 PM
>原因はメモリー量制限となっています。
>全体的に変更するか検討させていただいております。
了解しました。
他の利用法でも規制を緩めてほしいという要望をよく聞きますので、是非制限緩和のご検討をお願いします。
#今でもかなりの自由度のあるサーバーだとは思ってます。

>CGIで使えるメモリー量と、CRON、SSHなどのシェルで使えるメモリー量制限は別となっております。
>wgetなどでCGI経由で動作させると回避できます。
それは知らなかったのでシェルスクリプトを以下のように変更する事で対処してみました。


#!/bin/sh
/usr/bin/wget -q http://mysite/natsumican.pl
exit


2,3回の作動を見る限りでは正常な様子ですが、ちょっとログの取り方が判らないので、ブラウザで見た時に更新されているかどうかで判断するしかありません...
取り合えずこの設定で暫く様子を見る事にします。

equizard
2005/03/26, 10:36 PM
なんどもすいません。

>wgetなどでCGI経由で動作させると回避できます。

というのが、やっぱりちょっと手に負えないので、教えて下さい。

cidさんの書き込みにある

#!/bin/sh
/usr/bin/wget -q http://mysite/natsumican.pl
exit

というのは、ナントカ.shというファイルをcronジョブで動かして、
http://mysite/natsumican.pl
というファイルをwgetで取り込め、という指示をしているのだと解釈しました。

※ -q っていうのは必須でしょうか?

で、natsumican.plというファイルの中身には、どう記述すればよいのでしょう?

wgetについてすらさっぱりわからなくて、ネットで調べてみてそこそこ理解できたのですが、CGIはもっとさっぱりです。そもそも、この程度のレベルではやるべきでないなら、あきらめて以前のままの運用で済ませるというのは、まずいんでしょうか?

DeepGreen
2005/03/27, 07:05 PM
cronで実行しているスクリプト(.shになっているはずのスクリプト)は、
以下の3点を変更する事でCGIとして実行が可能になります。
(スクリプトの書き方次第ではもう少し効率のいい実行の仕方がありますが、省略します。)


外部からアクセスできる場所にスクリプトを置く。
具体的には、/public_html/ 以下に入れる必要があります。
スクリプトを実行可能にする。
拡張子を.cgiにし、700以上のパーミッションを与えてやる事で実行可能な状態になります。
(ある設定をする事で、他の拡張子でも実行可能に出来ますが、省略します。)
CGIとして必要なヘッダを出力する。
例えばshだと、
echo "Content-Type: text/plain"
echo
echo "OK."といったような出力文を先頭(#!/bin/shの直後)に書くとよいでしょう。
(Perlの print "Content-Type: text/plain\n\nOK.\n"; に相当します。)

上記のCGIが、cidさんの書き込みの"http://mysite/natsumican.pl"に相当します。

cidさんの書き込みのwgetのオプション -q は、
wgetの出力を抑制するオプションです。
必須ではありませんが、これが無い場合はこのスクリプトをcronで実行するたびに、
wgetの出力がメールで送られてくるようになるはずなので、付けた方が望ましいでしょう。

equizard
2005/03/28, 07:59 PM
>>DeepGreenさん

ありがとうございます。うまくいきました :)
しばらく様子を見てみます。

>>cidさん

コードを参考になりました。ありがとうございます。

cid
2005/04/03, 04:50 AM
更新止まりまくりです...
前述しましたが、上手く動いたので課金したのにこの結果なんですが、返金には応じて頂けるのでしょうか。
既に課金している状態なので検討しますでは非常に困るのですが...

上手くいったり、いかなかったり、止まってる時は5回連続で失敗という事もあります。
1ヶ月もこの状態では、いつになったら正式運用できるか判りません。

別のレンタルサーバーに移動も考えなくてはなりませんので、回答宜しくお願いします。

webmaster
2005/04/04, 10:33 AM
必要な場合は個別にご連絡ください。

cid
2005/04/05, 10:46 PM
https://www.value-domain.com/support.php

上記フォームより、メールを送信しました。回答お待ちしてます。

hill
2007/09/27, 06:11 PM
MTで日時指定投稿をしています。
3つめのブログまでは正常に動いているのですが、
4つめ以降のブログが予約投稿されません。

下記のメールが届いています。

/virtual/***/public_html/mt/cron1.sh: line 3: 28404 Killed
/usr/bin/perl ./tools/run-periodic-tasks
Future: MT4.0 run-periodic-tasks

設定は間違っていないと思うのですが、
どう対処すれば宜しいのでしょうか?

お手数ですが、宜しくお願いします。