it-swarm.com.de

Wie "starte" ich eine bestimmte Netzwerkschnittstelle auf RHEL neu?

In RHEL anstelle von service network restart Befehl, wie kann ich eine bestimmte Netzwerkschnittstelle neu starten, sagen wir "eth1", mit nur einem Befehl.

"Nur ein Befehl", da dies die einzige Schnittstelle ist, an der auch mein ssh arbeitet. Wenn ich also Folgendes verwenden möchte: ifdown und dann ifup, kann ich den Befehl ifup niemals ausführen, da mein ssh beendet wurde einmal nach ifdown eth1 Befehl.

Es sollte also einen einzigen Befehl geben, mit dem ich die Schnittstelle, die meine aktuelle ssh -Verbindung bedient, vollständig herunterfahren und dann hochfahren kann. Ich muss mir also keine Sorgen machen, dass die Verbindung zu meinem Server vollständig unterbrochen wird.

Irgendeine Idee bitte?

18
夏期劇場

Sie können verwenden:

ifdown eth1 && ifup eth1

Als ein einziger Befehl. Das && führt nur einen Befehl aus, dann den anderen , wenn der erste Befehl erfolgreich ist . Wenn Sie Sudo verwenden müssen, stellen Sie sicher, dass Sie es vor jedem Befehl verwenden:

Sudo ifdown eth1 && Sudo ifup eth1

Solange Ihre Schnittstelle so konfiguriert ist, dass sie über die erforderliche IP-Adresse und Route verfügt, die der aktuellen Konfiguration entsprechen, wird Ihre SSH-Verbindung nicht unterbrochen.

Wenn Sie sich Sorgen machen, es auf einem Produktionsserver zu verwenden, auf den Sie nicht über eine andere Zugriffsmethode verfügen, ist dies verständlich. Obwohl der Befehl genau das tut, was Sie wollen, ist es sehr leicht, einen Konfigurationsfehler zu haben, der erst nach dem Ausführen dieses Befehls bemerkt wird. Wenn Sie keine alternative Zugriffsmethode haben (z. B. Out-of-Band-Konsole oder SSHD, die auf einer anderen Schnittstelle ausgeführt wird), ist es am sichersten, dies nicht zu tun.

Ich verwende diese Technik häufig, um einen Neustart der Schnittstelle durchzuführen, aber ich habe im Allgemeinen eine Sicherungszugriffsmethode zur Verfügung, nur für den Fall, dass ich dies tue.

27
blahnana

Sie können eine Schnittstelle neu starten, indem Sie die folgenden Befehle eingeben:

# ifdown eth1
# ifup eth1

Danach können Sie überprüfen, ob Ihre neue Konfiguration aktiv ist

# ip a
1
jerQ

Versuchen Sie, die IP-Adresse (oder einen beliebigen Schnittstellenparameter) einer Schnittstelle auf einem Remotecomputer zu ändern? Wenn die Antwort Ja lautet, können Sie eine der folgenden Möglichkeiten ausprobieren:

Eine coole Methode ist die Verwendung des Bildschirmdienstprogramms zum Erstellen einer Sitzung, indem Sie einfach "Bildschirm" eingeben. Wenn Sie den Netzwerkdienst neu starten und Ihre SSH-Verbindung unterbrochen wird, überprüfen Sie mit Bildschirm -ls, ob die Sitzung noch aktiv (aber getrennt) ist, und Bildschirm -r, um die getrennte Sitzung fortzusetzen Session. Dies funktioniert, wenn in Ihrer Schnittstellenkonfigurationsdatei kein Fehler vorliegt, d. H. Der Netzwerkdienst erfolgreich neu gestartet wurde.

Sie können auch den folgenden Trick verwenden:

$ cp -v current_conf_file current_conf_file.bak
$ echo "mv current_conf_file.bak current_conf_file && service network restart" | at now+10min

Bearbeiten Sie anschließend Ihre Schnittstellenkonfigurationsdatei und starten Sie den Netzwerkdienst neu. Im Fehlerfall müssen Sie nur 10 Minuten warten, bis die vorherige Konfiguration erneut angewendet und der Netzwerkdienst neu gestartet wird.

0
IG83