Warum sollte ich "service sshd reload" anstelle von "service sshd restart" verwenden?

8

Aus meinen Tests unter Linux scheint es so zu sein

service sshd reload

  • Funktioniert nur, wenn sshd bereits läuft
  • Stoppt sshd , wenn die Datei sshd_config Probleme hat
  • Gibt den Fehlercode 0 zurück, selbst wenn die sshd_config-Datei Probleme hat

service sshd restart

  • Funktioniert unabhängig davon, ob sshd bereits ausgeführt wird
  • Stoppt sshd , wenn die sshd_config -Datei eine ungültige Syntax oder andere Probleme aufweist
  • Gibt einen von Null verschiedenen Fehlercode zurück, wenn die sshd_config -Datei Probleme hat

Ich verstehe, dass sie verschiedene Operationen ausführen, aber es scheint mir ein Klacks, dass ich immer service sshd restart benutzen sollte. Gibt es Gründe, warum service sshd reload in manchen Situationen vorzuziehen ist?

    
Tim Bellis 11.07.2013, 10:52
quelle

4 Antworten

3

Wenn Sie den Befehl service sshd ausführen, in dem opt neu geladen / neu gestartet werden kann, wird ein Programm mit einer geänderten Umgebung wie folgt ausgeführt:

%Vor%

z.B.:

%Vor%

Der Befehl sshd macht in beiden Fällen (Neustart / Neuladen) fast dasselbe:

reload : Versucht, den Prozess zu beenden, der ein HUP-Signal sendet, und wie Sie auf dem Snipet sehen können, benötigt es die PID des Prozesses, um es zu tun. (Funktioniert unabhängig davon, ob sshd bereits ausgeführt wird)

%Vor%

neustart : Es würde genauso funktionieren, als ob Sie einen stop- & gt; start ausführen würden.

%Vor%     
nay743 30.08.2013 20:16
quelle
1

Einige Apps, einschließlich mehrerer Webserver, unterstützen das Neuladen ihrer Konfiguration ohne Neustart. In diesem Fall wäre reload der beste Weg, dies zu signalisieren.

Als Anwendungsfall wäre es großartig, wenn sshd tatsächlich das erneute Laden der Konfiguration unterstützt, ohne bestehende Verbindungen zu beeinträchtigen. Das würde es ermöglichen, die neue Konfiguration zu überprüfen, ohne die aktuelle ssh-Verbindung zu verlieren (z. B. beim Ändern von Berechtigungen, um sicherzustellen, dass Sie sich weiterhin anmelden können).

Weiterführende Literatur: Liste aller Aktionen systemd unit

    
jpaugh 11.08.2016 16:54
quelle
0

Nur um zu erwähnen: wie in den obigen Beispielen werden Leute sshd benutzt, das ist der Daemon, der Dienst ist ssh. Die richtige Zeile sollte sein:

%Vor%     
Borja Tarraso 17.12.2014 12:54
quelle
-1

Ich denke, das "reload" könnte in einem Shell-Skript für Multi-Dienste verwendet werden, um den ursprünglichen Status wiederherzustellen, in diesem Fall wussten wir nicht, ob ein Dienst läuft oder nicht, also lassen wir alle diese Dienste "neu laden" ".

Wenn wir in diesem Fall "Neustart" verwenden, werden einige der Dienste, die wir nicht verwendet haben, gestartet.

Normalerweise wollen wir diesen Dienst wie "sshd" zum Debuggen von Problemen (oder Änderungen) für einen einzelnen Dienst starten, "Neustart" sollte besser sein, da wir nicht überprüfen müssen, ob dieser Dienst erfolgreich ausgeführt wird oder nicht.

>     
Jevin 02.08.2016 20:06
quelle

Tags und Links