Subversionリポジトリの1時間ごとのsvnsyncバックアップを行うスケジュールされたスクリプトがあります。ルートcrontabのエントリから問題なく実行していましたが、見やすくするために/etc/cron.hourlyから実行することにしました(エンジニアの1人が誤ってcrontabを削除したため、 -r」は「crontabを読む;-))
cron.hourlyスクリプトのsvnsyncコマンドはすべて失敗し、SVNリポジトリのSSL証明書を受け入れる必要があるというメッセージが表示されます(これは、ユーザーがSVNリポジトリに初めてアクセスするときに対話形式で取得するメッセージですが、証明書がメッセージが再度表示されないことを受け入れました)。
そのため、cron.hourlyから実行する場合、root crontabを介して実行する場合とは異なるユーザー環境でスクリプトが実行されているように思えます。誰でも違いを説明できますか?
更新:私はディストリビューションについて言及すべきでした。私はCentOS 5.1でanacronを使用しています。
更新2:これまでの提案に感謝します。これはよりSubversionの質問に変わっていると思う。私は常に自分の環境をスクリプトにカプセル化しようとしますが、ここでの問題は、スクリプトを実行するときにSVNがSSL証明書の受け入れを要求する環境に何があるか(または不足している)がわからないことですcron.hourly。run-partsスクリプトの実行方法に関係していると思います。