NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.
Forum Discussion
overtake
May 30, 2016Aspirant
cronが実行されない
バリュードメインのDDNS更新を自動で行いたいので、以下のようにしました。 /etc にディレクトリ /cron.ddns を作成し、 /etc/cron.ddns/ddns というファイルに下記の記述 #!/bin/sh HOST='×××' # ホスト名('*'も可) DOMAIN='××××××××.net' # ドメイン PASSWORD='××××××××' #...
Cat_bus_1985
May 31, 2016Star
overtakeさん
ここは linux のフォーラムではないので、あまり専門的なことがいえないですが、
./etc/cron.ddns/ddns で実行できるということですか?
それであれば、cron に指定するエントリは、./etc/cron.ddns/ddns を指定したほうがいいと思います。
(可能であれば ddns.sh としたほうがわかりやすいです。)
以下であるとおそらく2行したの行をコピーして、cron.ddns と書き換えただけだと思いますが、
フルパスで実行しないと意味はないです。
*/2 * * * * root cd / && run-parts --report /etc/cron.ddns
17 * * * * root cd / && run-parts --report /etc/cron.hourly
外部リンクですが、以下のページ等を参照いただくといいと思います。
http://www.server-memo.net/tips/crontab.html
それでは
- overtakeMay 31, 2016Aspirant
レス頂きありがとうございます。
その後、少しやり方を変え工夫をしてみましたが、うまくいきません。
DDNS更新のスクリプト名を ddns.sh とし、パーミッションを755に。
置き場所は /usr/ddns というディレクトリを作成しその中に。
これで、 /usr/ddns/ddns.sh とコマンドをたたくと正常にDDNS更新されることを確認。
crontab -e で、crontabの記述を以下に訂正
*/2 * * * * root /usr/ddns/ddns.sh
しかしやはり実行されません。
cronが動いているかどうか確認する方法がweb上にいくつかありましたが・・・
>cronが動いているか確認
>/etc/rc.d/init.d/crond status
==> /etc/rc.d が存在していない。(rc0.d~rc5.d というディレクトリはあるが・・・)
==>find crond としても、crondなんて無いと言われる。
同じ理由で、 crond start も当然使えない。
>cronのログを確認
>vi /var/log/cron
==>実行すると新規ファイルの作成になる。
お手上げです。
当フォーラムはLinuxのフォーラムではないとのことで、もし適切なフォーラムをご存知でしたら教えていただけますでしょうか。- overtakeJun 03, 2016Aspirant
解決しましたのでご報告いたします。
DDNS更新スクリプトは、
/home/**ユーザー名**/ddns.sh
として設置。
SSHにrootではなく当該ユーザーでログインし、crontab -e
*/2 * * * * /home/**ユーザー名**/ddns.sh
と記述。
これで無事にDDNS更新がされることが確認できました。
なぜrootではダメだったのかは良くわかってないですが…。
NETGEAR Academy

Netgearアカデミーでスキルを向上 - トレーニングを受け、認定を取得し、最新のNetgear技術で周囲と差をつけよう!
参加はこちらから!