cronジョブが実行されていません - rootが正常に実行されています

cronジョブが実行されていません - rootが正常に実行されています

作成したスクリプトがあり、ルートで正しく実行されます。クローンジョブを追加しましたが、正しく実行されません。

コマンドは次のとおりです。

gpio -g mode 17 input
getval="$(gpio read 17)"
todayis=$(date) 
getstatus=$getval 
if [ "$getstatus" = "0"  ]; then 
power="Power ON"
else
power="Power OFF"
echo $todayis $power $getstatus >> /var/www/turnmeon.log

ルートとして実行したときのログファイル:

Wed Nov 8 21:11:41 UTC 2017 Power ON 0

crontabで実行したときのログファイル:

Wed Nov 8 21:11:41 UTC 2017 Power OFF

OFFが実際に真であれば、予想したように最後に1がありません。

crontabジョブの代わりにbashプロンプトで実行されるのはなぜですか?

*/2 * * * * bash /myscript.sh

ベストアンサー1

権限の問題のようです。おそらくデスクトップユーザーとしてcrontabを編集しているでしょう。これは、ジョブがデスクトップユーザーとして実行されることを意味します。ジョブにrootが必要な場合は、rootでcrontabを編集する必要があります。

おすすめ記事