Was ist der richtige Weg, um Postfix dauerhaft auf Lion laufen zu lassen (nicht auf dem Server)?


35

Ich kann Postfix vorübergehend starten mit:

$ sudo launchctl
launchd% start org.postfix.master

Console.app zeigt jedoch, dass es nur für eine kurze Zeit ausgeführt wird:

26/11/11 2:00:55.710 PM postfix/master: master exit time has arrived

Ich denke, die Datei /System/Library/LaunchDaemons/org.postfix.master.plist muss aktualisiert werden, damit Postfix dauerhaft ausgeführt wird, aber ich habe die Antwort noch nicht gefunden.

Wie kann Postfix korrekt zum Startzeitpunkt gestartet und dauerhaft ausgeführt werden?

Aktualisieren Um die Datei wie in der ausgewählten Antwort empfohlen zu bearbeiten, habe ich sie zuerst in XML konvertiert.

plutil  -convert xml1 /System/Library/LaunchDaemons/org.postfix.master.plist

Dann editiere es einfach mit Vim:

sudo vim /System/Library/LaunchDaemons/org.postfix.master.plist

Ich hatte Probleme beim Versuch, Xcode zum Bearbeiten der Datei zu bringen.

Antworten:


36

Die folgenden Änderungen haben bei mir funktioniert:

  1. Entfernen Sie die folgenden zwei Elemente aus /System/Library/LaunchDaemons/org.postfix.master.plist:

    <string>-e</string>
    <string>60</string>

    Dies beendet das Verlassen nach 60 Sekunden.

  2. Fügen Sie das folgende Element als <dict>...</dict>untergeordnetes Element des Elements in dieselbe plist-Datei ein:

    <key>KeepAlive</key>
    <true/>
  3. Laden Sie die Datei neu:

    sudo launchctl unload /System/Library/LaunchDaemons/org.postfix.master.plist 
    sudo launchctl load /System/Library/LaunchDaemons/org.postfix.master.plist

postfix sollte nun als daemon laufen.

Die obigen Arbeiten auf Mountain Lion, Mavericks, Yosemite und El Capitan. Für Systeme mit Systemintegritätsschutz (El Capitan und höher) gibt es zwei Optionen:

  1. Kopieren /System/Library/LaunchDaemons/org.postfix.master.plistnach /Library/LaunchDaemons/org.postfix.custom.plist, Wechseln org.postfix.masternach org.postfix.customund Entladen und Laden wie oben.
  2. Deaktivieren Sie SIP (mithilfe von csrutil), nehmen Sie die Änderungen vor und aktivieren Sie SIP dann erneut.

Hinweis: Bei High Sierra und Mojave ist die Konfigurationsdatei com.apple.postfix.master.plistanstelle von org.postfix.custom.plist.


1
Arbeitete für mich auf Mavericks, aber ich musste den vollständigen Dateipfad eingeben, um es zu laden: sudo launchctl load /System/Library/LaunchDaemons/org.postfix.master.plist
rich

1
Es gab eine cd /System/Library/LaunchDaemonsLinie dort vor dem unloadund loaddass übersehen wurde. Ich habe den vollständigen Pfad angegeben, um ihn klarer zu machen.
Jim Stewart

2
@mjturner - den sip deaktivieren? nö nö nö ... Viel besser ist es, eine neue .plist zu erstellen, die Sie in / Library / LaunchDaemons / besitzen
Chris Withers

1
@mjturner - ja, das ist komisch. Ich habe keine Benachrichtigung erhalten und es ist ein bisschen traurig. Möchtest du die gleiche Bearbeitung vornehmen?
Chris Withers

3
@mjturner On High Sierra, org.postfix.master.plistwird in umbenannt com.apple.postfix.master.plist. Vielleicht möchten Sie das zur Antwort hinzufügen.
Utku
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.