cron がタスクを実行する前にカスタム環境変数が設定されていることを確認するにはどうすればよいでしょうか?

cron がタスクを実行する前にカスタム環境変数が設定されていることを確認するにはどうすればよいでしょうか?

私は最近、ログウォッチの問題これは、 を実行することで修正されますexport DATE_MANIP=DM5。ログアウトすると、cron はこれを忘れるようです (おそらく保存されていないため)。

exportこのカスタム環境変数はどこに追加できますか? logwatch のコードを管理していないため、起動するスクリプト内にコマンドを必ずしも追加する必要はありません。追加しよexport DATE_MANIP=DM5うとしました/root/.bash_profileが、ログインしていない場合は役に立ちません。

6.x の場合

答え1

スクリプトを編集し/etc/cron.daily/0logwatchexport DATE_MANIP=DM5logwatch 呼び出しの前に を追加します。

例:

#!/bin/sh

#Set logwatch location
LOGWATCH_SCRIPT="/usr/sbin/logwatch"
#Add options to this line. Most options should be defined in /etc/logwatch/conf/logwatch.conf,
#but some are only for the nightly cronrun such as --output mail and should be set here.
#Other options to consider might be "--format html" or "--encode base64", man logwatch for more details.
OPTIONS="--output mail"

# Fix Date::Manip issue
export DATE_MANIP=DM5

#Call logwatch
$LOGWATCH_SCRIPT $OPTIONS

exit 0

答え2

関連情報