So starten Sie einen Daemon als Root in OS X

1123

Ich habe meine plist in / Library / LaunchAgents und mein exexutive Programm in / usr / libexec und daemon statrs beim Systemstart abgelegt. Dieser Dämon gehört jedoch dem Benutzer. Ich versuche meine Liste in / Library / LauchDaemons zu platzieren, aber es funktioniert nicht und der Daemon startet nicht beim Systemstart

Ich möchte wissen, wie ein Daemon beim Start des Systems als Root gestartet wird. Welche zusätzlichen Jobs sollte ich ausführen, um einen Daemon als Root zu starten? Danke im Voraus!

0
`launchd` macht genau das, was Sie brauchen. vor 11 Jahren 0
Was meinst du? Was soll ich machen? Ich kann einen Daemon mit launchctl load coomand on on terminal starten. Die Lebensdauer des Daemons ist jedoch nicht über einen Neustart hinaus. Nach dem Neustart des Systems wird der Daemon nicht gestartet. vor 11 Jahren 0

2 Antworten auf die Frage

4
cody

Nachdem Sie plist in / Library / LaunchDaemons eingefügt haben, müssen Sie den Befehl sudo launchctl load -w /Library/LaunchDaemons/your.plist
See man launchctlfür das Flag -w ausführen (es erfüllt genau das, was Sie benötigen).
Bearbeiten : Haben Sie den RunAtLoad-Schlüssel in Ihrer Plist auf true gesetzt?
Edit2 : Ich habe vergessen, RunAtLoad hat keinen Einfluss auf den Autostart, es ist alles über Deaktiviertaste.

Ich versuche das, aber gib mir diesen Fehler: launchctl: Doppelter Besitz der Datei (Überspringen): /Library/LaunchDaemons/com.apple.mydaemon.plist nichts zu laden vor 11 Jahren 0
Sie mögen es wahrscheinlich nicht, dass Sie dort com.apple verwenden. Randy Howard vor 11 Jahren 0
Sie müssen sich im Besitz von root: wheel befinden und über 0644 mod (-rw-r - r--) verfügen. vor 11 Jahren 0
Was genau soll ich tun, damit es funktioniert? Ich würde mich freuen, wenn Sie mir helfen, dieses Problem zu lösen vor 11 Jahren 0
`sudo chown root: wheel your.plist` und` sudo chmod 0644 your.plist` vor 11 Jahren 0
Danke, mein Lieber. Der Daemon wird erfolgreich gestartet, aber als Benutzer nicht als Root gestartet. Was ist der Fehler, den Sie denken? vor 11 Jahren 0
Der Daemon startet nicht als root. Ich habe alle Jobs gemacht, die du gesagt hast, aber es startet nicht als root! vor 11 Jahren 0
warum glaubst du, dass es nicht als root startet? Versuchen Sie es mit den beiden Befehlen `sudo launchctl list | grep your_daemon_name` und `launchctl list | grep your_daemon_name`. Welcher zeigt dir deinen Dämon? vor 11 Jahren 0
Vielen Dank, Mr.Cody. Ich schätze Ihre Hilfe . Es ist gelöst Gott schütze dich vor 11 Jahren 0
0
user2370071

Ändern Sie das Verzeichnis, in dem Sie Ihre Plist gespeichert haben, wie folgt:

/System/Library/LaunchDeamon 

Dieses Verzeichnis wurde vor dem Start des Benutzers aus Launchd gelesen.

Ich habe versucht, diese Lösung jetzt zu verwenden, aber seit ich ein Upgrade auf El-Capitan durchgeführt habe, kann ich keine Dateien in dieses Verzeichnis verschieben. Gibt es dafür eine Lösung? Yaron Idan vor 8 Jahren 0