Unterschied zwischen System- und globalen Daemons

Laut dem Launchd-Tutorial gibt es zwei Orte, an denen sich ein Daemon befinden kann.

  1. Ein globaler Daemon, der sich unter befindet/Library/LaunchDaemons
  2. Ein Systemdämon, der sich unter befindet/System/Library/LaunchDaemons

Was ist der Unterschied zwischen ihnen? Beide scheinen die gleiche Aufgabe zu erledigen, indem sie beim Start ein Programm im Auftrag von ausführen root.

BEARBEITEN:

Mit Unterschied meine ich den Unterschied in der Funktion. Ich weiß, dass der System-Daemon von Apple und global von Anbietern stammt, aber ich möchte wissen, ob es einen Unterschied in der Funktion gibt.

Antworten (2)

Kein Unterschied

Einmal ausgeführt, gibt es keinen Unterschied zwischen den Standorten. Der Ursprung des launchd-Jobs bestimmt die Autorisierung, die zum Verwalten des Jobs erforderlich ist.

Sowohl /Libraryals auch /Systemlaunchd-Jobs können von jedem Benutzer ausgeführt werden. Pro-Benutzer-Jobs sind auf den Benutzer und die Gruppe ihres Besitzers beschränkt.

Die Bearbeitung der launchd-Jobs wird durch den Systemintegritätsschutz/System eingeschränkt .

Von man 5 launchd.plist:

  • ~/Library/LaunchAgentsVom Benutzer bereitgestellte Benutzeragenten.
  • /Library/LaunchAgentsVom Administrator bereitgestellte Benutzeragenten.
  • /Library/LaunchDaemonsVom Administrator bereitgestellte systemweite Daemons.
  • /System/Library/LaunchAgentsVon OS X bereitgestellte Benutzeragenten.
  • /System/Library/LaunchDaemonsSystemweite Daemons, die von OS X bereitgestellt werden.

System-Daemons werden vom Anbieter bereitgestellt – Apple, und globale Daemons werden vom Administrator bereitgestellt – SIE.

Ich weiß, aber gibt es einen Unterschied in der Funktionsweise? Funktioniert es genauso? Oder gibt es einen Unterschied, wie zum Beispiel eine zusätzliche Erlaubnis oder so etwas.