コンピュータの起動時にファイルをダウンロードする必要があるため、cronjobに次の行を作成しました。
@reboot wget -a /log/here -O /save/here https://domain.tld/file.ext
残念ながら、空のファイルが作成され、/save/here
エラーが発生しました/log/here
。
エラーは次のとおりです。
Resolving domain.tld (domain.tld)... failed: Temporary failure in name resolution.
wget: unable to resolve host address ■domain.tld■
起動プロセスの最初に名前解決が利用できないためですか?ドメイン名を名前解決をバイパスするIPアドレスに変更することに加えて、他にできることはありますか?私はこれらすべてをcrontabに保存したいと思います。
答え1
使うシステム依存単位ファイルを使用するnetwork
か、以下を試すことができます。
@reboot until ping -c1 dk &>/dev/null; do sleep 2; done; wget -a /log/here -O /save/here https://domain.tld/file.ext
(dk
私が知っている最短ドメイン名)
答え2
これを行う最も安定した方法は、起動時にwgetを使用することです/etc/rc.local
。また、私が使用しているコンピュータには内蔵バッテリがなく、代わりにネットワークタイムプロトコルを使用して時計を設定するためです。起動時に--no-check-certificate
SSL証明書がまだ有効でないなどの問題が原因でコマンドが失敗するのを防ぐために、https://を指定または使用しないことがわかりました。