Starten von Suricata mit launchctl unter Mac OS X

592
Drew

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.pidDatei zu löschen und die vorhandenen Prozesse (die eigentlich nicht mit dem launchctl unloadBefehl 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?

1

1 Antwort auf die Frage

1
Drew

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