OS X Lion/Mountain Lion 中啟動項目的處理順序為何?

OS X Lion/Mountain Lion 中啟動項目的處理順序為何?

我想知道 OS X (Mountain) Lion 中的服務和應用程式從啟動資料夾啟動的順序,例如:

/Library/LaunchAgents
/Library/LaunchDaemons
/System/Library/LaunchAgents
/System/Library/LaunchDaemons
~/Library/LaunchAgent
/Library/StartupItems
/System/Library/StartupItems

答案1

/System/Library/LaunchDaemons/Library/LaunchDaemons、 和/Library/StartupItems均在系統啟動時處理。 LaunchDaemons 資料夾沒有特定的順序——其中的所有內容都可以同時運行,只有那些<key>RunAtLoad</key><true/>真正立即啟動的內容才可以。啟動的做事方式就是把他們全部解僱,讓他們釐清自己的依賴關係。

StartupItems(如果有的話)定義自己的順序。每個 StartupItem 都是一個資料夾,其中包含要執行的腳本和一個StartupParameters.plist檔案(除其他外)可以定義 StartupItem 提供的內容以及它需要的內容;它們將被排序,以便提供特定功能的項目在需要它的項目之前運行。

我希望 StartupItems 在 RunAtLoad LaunchDaemons 之後運行,但我不認為這是在任何地方指定的,我不會指望它。

當使用者登入時(即係統啟動後的某個時間),三個LaunchAgent 資料夾中的項目都會被載入。與 LaunchDaemons 一樣,沒有特定的順序,它們都可以同時運行。

/System/Library/StartupItems最後, OS X Lion 中沒有資料夾。

相關內容