いくつかのスクリプトがあります。collection.sh
start.sh
script1.sh
そしてscript2.sh
起動時に実行するように設定しました。
collection.sh
着信電話start.sh
start.sh
両方ともscript?.sh
コレクションは次のように構成されます。
$ cp collection.sh /etc/init.d/
$ update-rc.d collection.sh defaults 99
collection.shを手動で実行すると(たとえば$ . /etc/init.d/collection.sh
)、すべてが期待どおりに実行されますが、コンピュータを再起動または完全にシャットダウンして起動すると、collection.shは実行されますが、start.shは実行されません。
これを明確にするために、各スクリプトの例は次のとおりです。
collection.sh
:. /path/to/start.sh &
start.sh
:./script1.sh & ./script2.sh &
script1.sh/script2.sh
:while : do #does some stuff here #yes this is an infinite loop done
印刷ステートメントが開始されることが確認されましたがcollection.sh
(実際には2回)start.sh
開始されません。
ps aux | grep collection.sh
実際に使用がcollection.sh
完了したことも確認しました。
ベストアンサー1
パスに問題がある可能性があります。
start.shでPATHを変更するか、start.shのフルパスを使用してscript[12].shを起動します。
どのディストリビューションを使用しているかについて言及していません(すべてのディストリビューションは少し異なります)。大きなハンマーアプローチは、時々/etc/rc.localに行を置くことです。