So deaktivieren Sie eine Netzwerkkarte in Centos

10

Ich suche einen "One Liner" für ein Skript, das Folgendes benötigt:

  • deaktiviere eth0.
  • Lass es nicht beim Booten starten.
  • Nehmen Sie die IP-Adresse weg
  • Stellen Sie sicher, dass diese Adresse nicht erneut verwendet wird.
Arthur Ulfeldt
quelle

Antworten:

14

Einzeiler? Wie wäre es damit als Wurzel?

echo "DEVICE=eth0" > /etc/sysconfig/network-scripts/ifcfg-eth0 && service network restart

Die Konfiguration für eth0 wird entfernt und durch etwas ersetzt, das nicht konfiguriert ist.

Richard Holloway
quelle
1
+1, schlag mich bis zum
Anschlag
Mit welchem ​​Befehl wird diese Datei verwendet? ohne die restlichen Schnittstellen zurückzusetzen?
Arthur Ulfeldt
2
Arthur: Sie können tun , ifdown eth0 && ifup eth0statt service network restartzu Neustart eth0 und nicht alle Schnittstellen.
Richard Holloway
1
Dieser Befehl bringt die Schnittstelle nicht herunter, sondern deaktiviert sie. Es ist etwas anders. Prüfen Sie ip addrnach service network restart, Schnittstelle aktiviert ist , aber keine IP (CentOS 7).
sekrett
8

In müssen /etc/sysconfig/network-scripts/ifcfg-eth0Sie haben

ONBOOT=no

wie MDMarra sagte, aber Sie müssen auch haben

NM_CONTROLLED=no

Andernfalls startet der NetworkManager die Schnittstelle, wenn die ONBOOTEinstellung ignoriert wird . Es sei denn, Sie verwenden NetworkManager nicht, aber ich denke, es ist üblich.

Butch
quelle
4

In /etc/sysconfig/network-scripts/ifcfg-eth0Sie ändern müssen , ONBOOT=um nound Sie die Linien für löschen IPADDRund NETMASK.

Nachdem Sie die Konfigurationsdatei kopiert haben, müssen Sie den networkDämon neu starten .

MDMarra
quelle
2

Der Netzwerkdämon muss nicht neu gestartet werden, insbesondere wenn andere Netzwerkkarten verwendet werden. Sie können einfach ein 'ifdown eth0' durchführen.

Romeo
quelle
1
Dies bleibt beim Neustart mit CentOS 7
Joseph Persie
2

Setzen Sie alias eth0 offein /etc/modprobe.conf. Dadurch wird sichergestellt, dass nichts im System es jemals verwenden kann. Es kann nicht einmal manuell aufgerufen werden.

Ignacio Vazquez-Abrams
quelle
Das ist gut und hart! Daraus kommt nichts.
Arthur Ulfeldt
0

Soweit ich weiß, ist der richtige Weg, es einfach mit der "ONBOOT" -Anweisung auszuschalten und dies durch ein Skript zu erreichen, können Sie die folgende Zeile verwenden:

sed -i 's/^ONBOOT.*/ONBOOT=no/g' /etc/sysconfig/network-scripts/ifcfg-eth0 && service network restart 
Itai Ganot
quelle
-1

Es gibt noch eine andere Option für unerfahrene Leute (wie mich). Gehen Sie zu www.webmin.com und laden Sie webmin herunter und installieren Sie es.

Konfigurieren Sie Ihren Server über eine webbasierte Umgebung.

Nickman
quelle
1
Ich suchte nach einem Befehl, den ich einem Skript hinzufügen konnte.
Arthur Ulfeldt
-1

falls du es noch nicht herausgefunden hast ... ifconfig down oder up. Mit dem alten Befehl ifconfig können Sie weiterhin eine Schnittstelle nach oben oder unten oder andere Optionen installieren. Verwenden Sie, um alles zu sein, was zu verwenden war, als Redhat zum ersten Mal herauskam.

Bob
quelle
-2

sed -i 's / ^ ONBOOT. * / ONBOOT = no / g' / etc / sysconfig / Netzwerkskripte / ifcfg-eno2 && Neustart des Servicenetzwerks

Um es hartnäckig zu machen.

chattr + i / etc / sysconfig / network-scripts / ifcfg-eno2

mrvthi
quelle