In welcher Reihenfolge werden Startelemente in OS X Lion/Mountain Lion verarbeitet?

In welcher Reihenfolge werden Startelemente in OS X Lion/Mountain Lion verarbeitet?

Ich möchte wissen, in welcher Reihenfolge Dienste und Anwendungen in OS X (Mountain) Lion aus Startordnern wie diesen gestartet werden:

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

Antwort1

/System/Library/LaunchDaemons, /Library/LaunchDaemons, und /Library/StartupItemswerden alle beim Systemstart verarbeitet. Es gibt keine bestimmte Reihenfolge für die LaunchDaemons-Ordner – alles darin kann auf einmal ausgeführt werden, nur diejenigen, die <key>RunAtLoad</key><true/>tatsächlich sofort gestartet werden. Die Vorgehensweise von launchd besteht darin, sie alle zu starten und sie ihre eigenen Abhängigkeiten regeln zu lassen.

StartupItems (sofern vorhanden) definieren ihre eigene Reihenfolge. Jedes StartupItem ist ein Ordner, der das auszuführende Skript enthält, sowie eine StartupParameters.plistDatei, die (unter anderem) definieren kann, was das StartupItem bereitstellt und was es erfordert. Sie werden so angeordnet, dass das Element, das eine bestimmte Funktion bereitstellt, vor denen ausgeführt wird, die diese benötigen.

Ich würde erwarten, dass StartupItems nach RunAtLoad LaunchDaemons ausgeführt wird, aber ich glaube nicht, dass dies irgendwo angegeben ist, und ich würde nicht darauf zählen.

Die Elemente in den drei LaunchAgent-Ordnern werden alle geladen, wenn sich ein Benutzer anmeldet (also irgendwann nach dem Systemstart). Wie bei LaunchDaemons gibt es keine bestimmte Reihenfolge, sie können alle gleichzeitig ausgeführt werden.

Schließlich gibt es /System/Library/StartupItemsin OS X Lion keinen Ordner.

verwandte Informationen