- ベストアンサー
cronの実行結果をメールで受け取りたい
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
#2,#4です。 見当違いだったらごめんなさい。そのcronから起動される処理は何かメッセージを出すんですよね?何も出力しない処理なら、メールはそもそも送られません。 あと、MAILTO=の行を削除すると処理出力はcrontabのローカル実行ユーザー宛てにメールされるはずですが、その点はどうですか?
その他の回答 (4)
- notnot
- ベストアンサー率47% (4848/10262)
#2です。 >/usr/sbin/sendmail ***@***.co.jp >と入力しましたが、応答がありません。 メールを送るんで何か本文が無いとだめです。 /usr/sbin/sendmail ***@***.co.jp と打つと入力モードになるので、何か適当に入れて ctrl-D を押すか、 echo ABC | /usr/sbin/sendmail ***@***.co.jp としてください。本格的には、From: とか To: とか Subject: とか本文を入れた mail.txt をエディタで作って、 /usr/sbin/sendmail ***@***.co.jp < mail.txt ですけど、送られるかどうかのテストだけなんで、 echo ABC | /usr/sbin/sendmail ***@***.co.jp でも良いです。
補足
ご回答ありがとうございます。 メール送信の結果、正常に受信できました。 どうやらcronのMAILTO=に原因がありそうなのですが...
- Lean
- ベストアンサー率72% (435/603)
以下の手順でメールを送信してみてください。 % mail ***@***.co.jp Subject: TEST TEST <Ctrl+D押下> %
補足
ご回答ありがとうございます。 メール送信の結果、正常に受信できました。 どうやらcronのMAILTO=に原因がありそうなのですが...
- notnot
- ベストアンサー率47% (4848/10262)
#1の方の補足ですが、 まずはそのサーバー上で、/usr/sbin/sendmail ***@***.co.jp でメールが届くかどうかですね。
補足
ご回答ありがとうございます。 サーバ上からのメール送信の方法は知らなかったので 助かりました。
- Lean
- ベストアンサー率72% (435/603)
普通に ***@***.co.jp 宛てにメールを送信した場合、メールはちゃんと届くのでしょうか? また、その時メールがちゃんと届く届かないにかかわらずmail.logにはどのようなメッセージが出力されていますか?
補足
/usr/sbin/sendmail ***@***.co.jp と入力しましたが、応答がありません。 ctrl+cで強制終了させました。 ログもエラーも表示されません。
関連するQ&A
- cron で rsync が実行できない
サーバ2台を使い rsync にて 同期をとっているのですが、 cron を使って自動化しようとしたところ ツマづいてしまいました。 rsync -au -e ssh {from} {to} 手動にて上記実行するとコピー実行できるのですが * * * * * rsync -au -e ssh {from} {to} >> err と crontab を設定したところ コピーが出来ていません。 /var/log/cron をみると1分置きに (root) CMD (rsync -au -e ssh {from} {to} >>err) とあり実行はされているようです err を確認しましたが特にエラー記述もありませんでした。 どういった箇所を調べればよいか助言いただけると助かります。 よろしくお願いします。
- 締切済み
- ハードウェア・サーバー
- cronの実行結果通知メールの配信をさせないようにするには?
RedHat9を使用してます。 # cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ : # crontab -l | more # DO NOT EDIT THIS FILE - edit the master and reinstall. # (/tmp/crontab.12227 installed on Thu Feb 3 02:58:29 2005) # (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $) # crontab -e SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ : としていて、 記述が増えるに従ってcron実行済みの通知メール数が多くなってきましたので 配信させないように双方とも MAILTO="" してみたのですが相変わらず届いてしまいます。 相変わらずローカルのrootが送信しているようです。 どうすれば配信させないようにできるのでしょうか?
- ベストアンサー
- Linux系OS
- PHPの定期実行[ Linux&cron ]
Redhat9.0 PHP4.3.3を利用しています。 cronとコマンドライン版のPHPを利用して「1分毎に自分にメールを送る(実験用)」プログラムを実行させたいのですが、コマンドラインでは実行可能なのに、cronに登録してもメールが送られてきません。cronにはプログラムを実行したログが残っています。 完全に行き詰ってしまった。よろしくお願いします。 [ crontab ] * * * * * php /home/hoge/mail.php [ mail.php ] mb_language("Ja"); mb_internal_encoding("SJIS") ; $subject="test"; $content = "test"; $mailfrom="From:hoge@hoge.jp"; $mailto="***@hoge.com"; mb_send_mail($mailto,$subject,$content,$mailfrom);
- ベストアンサー
- PHP
- cronで複数実行される
いつもお世話になっています。 Solaris2.6ですが、cron実行でバックアップやらログローテートやら行っていたのですが、 先日、以下のことをやってしまい、二重実行されるようになってしまいました。 ・通常、rootでのcron実行 ・間違えて、一般ユーザのcronにrootとまったく同じものを書き込んでしまった。 ・一回検証で実行して気付き、一般ユーザのcronを削除(crontab -r)した。 これで、再度検証したときに問題なく動作していたようだったので(/var/cron/logを確認していないのがまずい・・・)、そのままにしておいたのですが、 その後、常にスクリプトが二回ずつ実行されるようになってしまいました。 何度もcrontabを確認し、しまいにはcronデーモンを再起動したのですが、今度は4つ同時に実行するようになってしまい、 さらに、cronデーモンを起動しなおしたら8つになってしまいました。 きちんと、killしているのですが、どうしてか分からず、どうしようもなくなっています。 再起動以外に何か解決方法はないでしょうか。 よろしくお願いいたします。
- 締切済み
- Solaris系OS
- Vine3.1 cron実行時のメールが届きません。
vine3.1を利用しています。 mailto=***@***.co.jpとメールアドレスを記載しても 全くメールが送られてきません。 内容はrsyncを記述したスクリプトファイルを 実行するものです。 コピーは正常にできているので、cron自体は 正常に動いているようです。 何が問題なのでしょうか?
- ベストアンサー
- Linux系OS
- cronでpg_dumpの実行
こんにちわ。 Linuxでcronを設定しPHPからexecで「pg_dump」を実行しようとしています。 エラーになり実行ができません。 設定は /var/spool/cron ディレクトリに 『crontab -e -u postgres』でコマンドを実行し SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO='' HOME=/ 08 19 * * * postgres /usr/bin/php /home/var/b_dump.php とcrontabに記載しています。 コマンドの実行はrootユーザで 権限は777 にしています。 メールを届くようにしているのですが、届くメールは 『postgres does not know where to find the server configuration file. You must specify the --config-file or -D invocation option or set the PGDATA environment variable.』 と届きます。 googleで検索したのですが、解決方法がわかりません…。 読みにくい文章で申し訳ないのですが、解決方法のご教授を お願いします。
- ベストアンサー
- Linux系OS
- cronの実行がうまくいかない。
ubuntu18.04 LTSでcronのテストをしているのですが期待通りに動きません。 下記で、6時42分にログローテートが行われません。 原因と対策について教えて下さい。 ・/etc/crontab 42 6 *** root test -x /usr/sbin/anacron || (cd /&& run-parts --report /etc/cron.daily) ・/etc/cron.daily logrotate の記述がある。 ・/etc/logrotate.conf include /etc/logrotate.d の記載がある。 ・/etc/logrotate.d/logrotate_1.conf /tmp/rotate/test.log { daily compress maxsize 1M create 0660 root root rotate 5 } ・/tmp/rotate/test.log が存在している。 尚、 ・手動実行 sudo logrotate -f /etc/logrotate.d/logrotate_1.conf では、 /tmp/rotate 実行後に、 test.log test.log.1.gz が存在します。
- 締切済み
- Linux系OS
- cronの設定
Linux, cron, PHP CLI版を使って、定期的にPHPスクリプトを実行させようとしておりますが、どうも上手くいきません。 コマンドラインで試すと上手くいくのですが、cronを使用して動かすと、実行結果が Could not open input file: /home/---/---/--/test.php と返ってきて、実行されておりません。 以下、crontabの内容です。 MAILTO="-------.com" */1 * * * * /usr/local/bin/php /home/---/---/---/test.php お忙しい中すみませんが、どなたかアドバイスをいただけないでしょうか?
- ベストアンサー
- PHP
- cronが動かない
cronからphpスクリプトを動かそうと設定したのですが動きません。 エラーメールやエラー表示もされません。 phpスクリプト自体は、cronを使わず手動なら動作しています。 どこか設定に異常個所などがあればご指摘やアドバイスなど頂きたいと思います。 以下に設定内容を記載します。 【crontab】 # crontab -u testuser -e 0-59/5 * * * * /usr/bin/php -q /home/testuser/public_html/mail.php 2>&1 0-59/10 * * * * /usr/bin/php -q /home/testuser/private_html/mail.php 2>&1 【cron確認】 # ls -l /var/spool/cron/ -rw------- 1 root root 251 4月 17 15:25 testuser -rw------- 1 root root 71 4月 16 18:28 root 【mail.php】 #!/usr/bin/php <?php $tim = time(); $today = gmdate("Y/m/d(D)",$tim+9*60*60); $now = gmdate("Y/m/d(D) H:i",$tim+9*60*60); mb_language("Ja") ; mb_internal_encoding("EUC-JP") ; $mailto="test@****.jp"; $mailfrom = "From:" .mb_encode_mimeheader("cronテスト") ."<" . $mailto .">"; $parameters = '-f' . $mailto; $return_path = "$mailto"; $subject="テストメール"; $body ="クーロンテスト\n"; $body .="送信年月日: $today \n"; $body .="送信時間: $now \n"; mb_send_mail( $mailto, $subject, $body, $mailfrom,"-f $return_path" ); ?> 【パーミッション】 /home/testuser/public_html/ 705 /home/testuser/private_html/ 705 /home/testuser/public_html/mail.php 705 /home/testuser/private_html/mail.php 705 rootユーザーでのcronは正常に動いています。 ご教授の程、宜しくお願い致します。
- ベストアンサー
- Linux系OS
- fedora11でのcron設定
fedora11,apache,php5の環境でcronを使いたいのですが、動きません。。 状況が、 fedora11 php5 apache を使用していて、cronを使ってphpの定期実行を行いたいのですが、どうしてもうまくいきません。 かなりググってはみたのですが、liuxについては初心者なので、どうにもわかりません。 設定内容が、 /etc/crontabが、 SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ * /1 * * * * apache /usr/bin/php /var/www/html/cron.php で、/var/log/cron でログを確認したところ Jul 28 19:00:01 host CROND[8417]: (apache) CMD (/usr/bin/php /var/www/html/cron.php) となっていてこれが一分ごとに出てきます。 cron.phpにはファイル追記の処理を書いてあります。 エラーではないようなのですが、ファイル操作が行われていないようなので動いていないようなのです。 ローカルホストでphpを実行したらちゃんと動くのでphp内のミスではないようです。 パーミッション関係だったらログにエラーが出そうなものですし、、、。困っています。。 どなたかお知恵を貸していただけませんでしょうか、よろしくお願いします。
- 締切済み
- SE・インフラ・Webエンジニア
お礼
処理結果がでない処理を、出力結果の出る処理だと勘違いしていました。 出力結果の出る処理だと正常にメールが送られてきました。 ありがとうございました。