起動時に実行されるスクリプトにはどのような優先順位を与えるべきでしょうか?

起動時に実行されるスクリプトにはどのような優先順位を与えるべきでしょうか?

組み込みデバイスで Angstrom ディストリビューションを実行しています。起動時に高に設定されている GPIO 拡張ポートを利用したいと思います。以下は、拡張ポートを解放するコード セグメントです。

#!/bin/sh

cleanup() { # Release the GPIO port
  echo 133 > /sys/class/gpio/unexport
  exit
}

起動時に を使用してこのスクリプトを実行することを考えていますupdate-rc.d name_of_script default

私の質問は次のとおりです:

起動時に GPIO ポートがハイにならないようにするには、どのような優先順位を付ければよいでしょうか。GPIO ポートがハイになる原因となるスクリプトがあると思います。これが本当であれば、代わりに起動時に実行されないように無効にすることができます。

追加情報( の内容など/etc/init.d)がございましたら、お知らせください。

答え1

Angstrom が依存関係ベースのブートを使用しているかどうかはわかりません。使用している場合は、数字は無視されます。使用していないと仮定しましょう。

番号はスクリプトの順序付けにのみ使用されます。たとえば、Web サーバーを起動する前にすべてのファイルシステムがマウントされていることを確認することが重要です。また、ほとんどのデーモンを起動する前に syslogd が起動されていることを確認することも重要です。

したがって、あなたの場合、それは GPIO ドライバーをロードするスクリプトの後 (大きい番号) に、しかしアプリを起動するスクリプトの前 (小さい番号) に来る必要があります (これは、正しく構成された GPIO ポートによって異なります)。

上記のように依存関係ベースのブートを使用している場合は、スクリプトの先頭のコメントで依存関係を正しく設定すると、update-rc.d が番号を計算します (すべてが機能するように、他のスクリプトの番号も変更される可能性があります)。

関連情報