Ich möchte eine Gruppe von Diensten bei einem Ereignis neu laden (nicht neu starten!).
Wenn ich beispielsweise meine SSL-Zertifikate aktualisiere, möchte ich, dass jeder Dienst, der sie verwendet, neu geladen wird ( nginxund postfixmir in den Sinn kommt). Ich möchte mich auch nicht daran erinnern, welche Dienste auf einem bestimmten Server SSL-Zertifikate verwenden. Es sollte ausreichen, sie bei der Konfiguration zu gruppieren.
Auf der anderen Seite möchte ich vermeiden, .servicedie mit den Paketen gelieferten Dateien zu ändern , da dies manuelle Eingriffe während der Aktualisierungen erfordert.
Wie schaffe ich das?
Es besteht die Möglichkeit, eine Gruppe von Diensten auf Anfrage zu stoppen. Dies würde sie jedoch für ein oder zwei Sekunden oder noch schlimmer unzugänglich machen. Sie bleiben möglicherweise bis zur Behebung inaktiv. Das kann ich mir nicht leisten.
.serviceDatei als Überschreibungen bearbeiten , können Sie das Aktualisierungsproblem vermeiden. sudo systemctl edit foo.servicespeichert Ihre Änderungen in /etc/systemd/system/foo.service.d/override.confder installierten foo.serviceDatei, anstatt sie zu ändern .
/opt/letsencrypt/letsencrypt-auto renew --pre-hook "service nginx stop; service postfix stop; service squid stop" --post-hook "service nginx start; service postfix start; service squid start": certmonger hat Postsave- und Presave-Befehle