私はUbuntuで起動スクリプトを追加するためにupdate-rc.dを使用しています。
私のスクリプトは次のように言います。
#!/bin/bash
nohup curl -C - -o ~/Downloads/linuxmint-17-xfce-dvd-64bit.iso.part 'http://mirror.umd.edu/linuxmint/images/stable/17/linuxmint-17-xfce-dvd-64bit.iso'
exit
実行可能にし、/etc/init.dに追加します。
スクリプトを手動で実行すると、完全に正常に実行されます。
ただし、起動を追加した後、自動的に起動しませんでした。
nohup.outで次のエラーが発生します。
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (7) Couldn't connect to server
確認する必要があるものや起動時に同じスクリプトを実行するために使用できる他のオプションはありますか?
root@amol-Lenovo-G570:~# ll /etc/rc2.d/ total 20
drwxr-xr-x 2 root root 4096 Nov 7 20:24 ./
drwxr-xr-x 179 root root 12288 Nov 7 19:36 ../
lrwxrwxrwx 1 root root 32 Oct 23 12:38 K08vmware-USBArbitrator -> /etc/init.d/vmware-USBArbitrator*
lrwxrwxrwx 1 root root 20 Sep 26 2012 S19postgresql -> ../init.d/postgresql*
lrwxrwxrwx 1 root root 21 Nov 7 20:24 S20download.sh -> ../init.d/download.sh*
ここで download.sh は私が実行しているスクリプトです。
答え1
問題は簡単です。ネットワークがまだ稼働していないため、次の手順を実行してください。
Couldn't connect to server
私はupstart / systemdまたは実際のsysv-initスクリプトを生成し、ネットワークに依存します。
これを達成する方法はいくつかあります。
- ヌーボーリッチと
- システムとして
- Sysv初期化スクリプト多くの点でより複雑ですが、移植性が必要な場合はこれが良い選択かもしれません。
答え2
1つだけ追加する--retry 5 --retry-max-time 120
と、最終的に機能します。