- ベストアンサー
crontab でスクリプトが動かない
一応環境ですが、 CentOS5 PostgreSQL8 crontabでDBのバックアップを取ろうと思っていますがうまく動作しません。 以下のスクリプトファイルを作成し、crontabで毎日実行しようと考えています。 /home/hogehoge/Maintenance.sh/pg_dumpall.sh (内容)-------------------------------------------------------- #!/bin/sh cd /home/hogehoge/Maintenance.sh pg_dumpall -h localhost -U postgres -c > pg_dumpall.dump chmod 600 pg_dumpall.dump -------------------------------------------------------- crontab (内容)-------------------------------------------------- 0 4 * * * /home/hogehoge/Maintenance.sh/pg_dumpall.sh -------------------------------------------------------- しかし、時間になってもpg_dumpall.dump ファイルが作成されません。 crontab自体は動作しています。(ファイル作成だけをしたらちゃんとできてました) 0-59/2 * * * * /bin/date > /home/sweets/Maintenance.sh/hoge pg_dumpall.sh の内容を1行ずつ実行しても正常にできます。 cd /home/hogehoge/Maintenance.sh pg_dumpall -h localhost -U postgres -c > pg_dumpall.dump chmod 600 pg_dumpall.dump なにかほかにも設定しなくてはいけないことがあるのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
cron が独自の PATH を設定している可能性は?
その他の回答 (2)
- astronaut
- ベストアンサー率58% (303/516)
> pg_dumpall.sh の内容を1行ずつ実行しても正常にできます。 pg_dumpall.sh自体を実行できますか? ひょっとすると、実行フラグがたっていないのかも。 また、すでに指摘のあるとおり、pg_dumpallコマンドにパスが通っていないということもありがちです。 スクリプト内のpg_dumpallをフルパスに書き換えて、chmod +x pg_dumpall.sh とかやったら動くんじゃないかな。
お礼
問題はサーバの時計がずれていたため、何度テストしても動いていなかったのでありました。 ご回答ありがとうございました。
- junkUser
- ベストアンサー率56% (218/384)
service crond status chkconfig crond --list はどうなっていますか? デフォルトでは動くようになっていると思いますが・・・
お礼
すいません。確認方法がちょっとわからなかったのですが、 問題は解決しました。 問題はサーバの時計がずれていたため、何度テストしても動いていなかったのでありました。 ご回答ありがとうございました。
お礼
問題はサーバの時計がずれていたため、何度テストしても動いていなかったのでありました。 ご回答ありがとうございました。