プロが教えるわが家の防犯対策術!

ラズベリーパイを使ってサーバーの勉強をしております。
現在、cronを使ってmydns.jpへの自動通知にチャレンジしているのですが、上手く動作しないため質問させていただきました。

[参考にしたサイト]
https://arakan60.mydns.jp/04kousaku/21-17cronmyd …

shファイルを直接実行するすると、ちゃんとmydnsに通知されているので、cronの設定がいけないのだと考えております。cronには下記のように記述しております。

#15分毎にプログラム実行
*/15 * * * * /mydns_update.sh

初歩的な質問だとは思いますが、アドバイスをいただけないでしょうか。
よろしくお願いいたします。

A 回答 (2件)

>シェルスクリプトはルートに配置しています。


>ちなみに、一般的にはどのような場所に配置するのでしょうか?

私だったら…ですが、
/usr/local/sbin下とかでしょうかね。

>cronに関しては何もいじっていないのでシステムとしてのものだと思います。

/etc/crontab
でしょうか?
であれば、おそらく書式が違いますので動作しないかと。

crontab -e
で編集するものと、/etc/crontabでは微妙にフォーマットが異なります。
# /etc/crontabは第6フィールドに実行ユーザ名を記述する必要がある。

>環境変数・・・初めて聞く単語なので調べておきます。

シェルスクリプトの中でprintenvとかをリダイレクトして保存してみると違いとか判るかと。


あと…DDNSの更新だったらddclientは利用できないのでしょうか?
    • good
    • 0

>ラズベリーパイを使って



で、OSはなんです?

>*/15 * * * * /mydns_update.sh

そのシェルスクリプトはちゃんとルートに置かれていますか?
まぁ、普通はそんなところに置かないのですが。

で、crontabはどちらに?
/etc/crontabのシステムとしてのものなのか、/var/lib/下などのユーザー毎のものなのか。

ターミナル(シェル)では動作するのに、cronで動かない。というのに、環境変数が設定されていないから。というのがよくありますが、その辺りはどうです?
    • good
    • 0
この回答へのお礼

Wr5さん

ご回答頂きありがとうございます。お礼が遅くなりました。

OSはRaspbian8.0です。

>*/15 * * * * /mydns_update.sh
>そのシェルスクリプトはちゃんとルートに置かれていますか?
>まぁ、普通はそんなところに置かないのですが。

シェルスクリプトはルートに配置しています。
ちなみに、一般的にはどのような場所に配置するのでしょうか?


>で、crontabはどちらに?
>/etc/crontabのシステムとしてのものなのか、/var/lib/下などのユーザー毎のものなの>か。

cronに関しては何もいじっていないのでシステムとしてのものだと思います。


>ターミナル(シェル)では動作するのに、cronで動かない。というのに、環境変数が設定されていないから。というのがよくありますが、その辺りはどうです?

環境変数・・・初めて聞く単語なので調べておきます。

お礼日時:2017/07/23 11:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!