我應該為啟動時運行的腳本賦予什麼優先順序?

我應該為啟動時運行的腳本賦予什麼優先順序?

我在嵌入式設備上運行 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 應該為您計算出一個數字(也可能對其他腳本進行重新編號,以使其一切正常)。

相關內容