crontabファイルのデフォルトのPATH値は誰のPATH値ですか? [コピー]

crontabファイルのデフォルトのPATH値は誰のPATH値ですか? [コピー]

ルートのデフォルトのPATHは次のとおりです。

$ sudo su
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

/etc/cron.d/myjob 作成後

35 * * * * tim ( date && echo $PATH && date ) > /tmp/cron.log 2>&1

/tmp/cron.log表示PATHのデフォルト値は次のとおりです。

/usr/bin:/bin

crontabファイルのデフォルトのPATH値はroot値ではありませんか?なぜ?

誰のPATH値に属していますか?

にタスクを追加するか、下にファイルを追加すると、デフォルトの/etc/crontabPATH値は異なりますか/etc/cronb.d/

クローン操作にどのユーザーを割り当てることが重要ですか? (tim上記の例のように)

ありがとうございます。

答え1

cronこれは使用しているバージョンによって異なります。私はあなたがDebianを使っていたことを覚えているようです。cron次のように多くの変数が設定されました。

複数の環境変数がシステムによって自動的に設定されます。cron(8)悪魔。SHELLに設定され、銀は/bin/sh所有者行で設定されます。に設定されています。 、およびはジョブを実行しているユーザーなので変更できません。LOGNAMEHOME/etc/passwdcrontabPATH"/usr/bin:/bin"HOMESHELLPATHcrontabLOGNAME

(望むよりこれcrontab詳しくはマニュアルページをご覧ください。 )

答え2

特定の実装について言及していないので、cronもともとUNIX cronの実装について話しているとします。

デフォルト値PATHrootfor /usr/sbin:/usr/bin)と root 以外のユーザーのデフォルト値( for /usr/bin:)があります。

関連する値は次のようにオーバーライドできます。

PATH=
SUPATH=

ファイルに/etc/default/cron

望むより:https://sourceforge.net/p/schillix-on/schillix-on/ci/default/tree/usr/src/cmd/cron/

また見なさい:http://schillix.sourceforge.net/man/man1m/cron.1m.htmlそしてhttp://schillix.sourceforge.net/man/man1/crontab.1.html

レプリケーションの実装を参照する場合は、必要な実装に言及する必要があります。

関連情報