Ich habe eine Antwort gefunden: Einfach in der .plist loswerden:
<key>KeepAlive</key> <true/>
Und jetzt wird es alle Instanzen des Jobs töten, wenn es benutzt wird launchctl unload
Verwenden von Mac OS X Yosemite 10.10.3.
Ich versuche, Suricata beim Booten im Daemon-Modus zu starten launchctl
. Hier ist mein /Library/LaunchDaemons/org.suricata.Suricata.plist
:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.suricata.Suricata</string> <key>KeepAlive</key> <true/> <key>RunAtLoad</key> <true/> <key>ProgramArguments</key> <array> <string>/usr/local/bin/suricata</string> <string>-c</string> <string>/usr/local/etc/suricata/suricata.yaml</string> <string>-i</string> <string>en2</string> <string>-D</string> </array> <key>ServiceDescription</key> <string>Suricata WiFi Net</string> </dict> </plist>
Aber nach dem Start
$ sudo launchctl load -w /Library/LaunchDaemons/org.suricata.Suricata.plist
Das bekommen in suricata.log
:
[ERRCODE: SC_ERR_INITIALIZATION(45)] - pid file '/usr/local/var/run/suricata/suricata.pid' exists. Is Suricata already running? Aborting!
Ich habe versucht, den Daemon zu entladen, diese suricata.pid
Datei zu löschen und die vorhandenen Prozesse (die eigentlich nicht mit dem launchctl unload
Befehl abgebrochen werden) wie folgt zu beenden :
$ sudo launchctl unload -w /Library/LaunchDaemons/org.suricata.Suricata.plist $ sudo kill $(pidof suricata) $ rm -f /usr/local/var/run/suricata/suricata.pid
Aber es hat nicht geholfen, also habe ich dies in suricata.log
:
.pid' exists. Is Suricata already running? Aborting!
Könnte jemand erklären, wie man Suricata bei osx boot startet. Was mache ich falsch?
Ich habe eine Antwort gefunden: Einfach in der .plist loswerden:
<key>KeepAlive</key> <true/>
Und jetzt wird es alle Instanzen des Jobs töten, wenn es benutzt wird launchctl unload