Cómo deshabilitar una NIC en centos

10

Estoy buscando un 'one liner' para un script que necesita:

  • deshabilitar eth0.
  • hacer que no comience en el arranque.
  • quitarle su dirección IP
  • asegúrese de que no intente usar esta dirección nuevamente.
Arthur Ulfeldt
fuente

Respuestas:

14

¿Un trazador de líneas? ¿Qué tal esto como root?

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

Eliminará la configuración de eth0 y la reemplazará por algo que no esté configurado.

Richard Holloway
fuente
1
+1,
golpéame con fuerza
¿Qué comando hará que se use este archivo? sin restablecer el resto de las interfaces?
Arthur Ulfeldt
2
Arthur: Puedes hacer en ifdown eth0 && ifup eth0lugar de service network restartreiniciar eth0 y no todas las interfaces.
Richard Holloway
1
Este comando no desactiva la interfaz, pero la desactiva. Es un poco diferente. Verifique ip addrdespués service network restart, la interfaz está activa pero no IP (CentOS 7).
sekrett
8

En lo /etc/sysconfig/network-scripts/ifcfg-eth0que necesitas tener

ONBOOT=no

como dijo MDMarra pero también debes tener

NM_CONTROLLED=no

o bien el NetworkManager iniciará la interfaz ya que ignora la ONBOOTconfiguración. A menos que no use NetworkManager, pero creo que es común.

Marimacho
fuente
4

En /etc/sysconfig/network-scripts/ifcfg-eth0necesita cambiar ONBOOT=a noy puede eliminar las líneas para IPADDRy NETMASK.

Después de copiar el archivo de configuración, debe reiniciar el networkdemonio.

MDMarra
fuente
2

No es necesario reiniciar el demonio de red, especialmente si tiene otras tarjetas de red que están en uso. Simplemente puede hacer un 'ifdown eth0'.

Romeo
fuente
1
esto no persiste al reiniciar con CentOS 7
Joseph Persie
2

Poner alias eth0 offen /etc/modprobe.conf. Esto asegurará que nada en el sistema pueda usarlo nunca. Ni siquiera podrá abrirse manualmente.

Ignacio Vazquez-Abrams
fuente
Eso es bueno y duro! nada sale de ese nic.
Arthur Ulfeldt
0

Hasta donde sé, la forma correcta es simplemente apagarlo usando la directiva "ONBOOT" y lograrlo a través de un script puede usar la siguiente línea:

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

Hay otra opción para personas sin experiencia (como yo). vaya a www.webmin.com descargue e instale webmin.

configure su servidor a través de un entorno basado en la web.

Nickman
fuente
1
Estaba buscando un comando que pudiera agregar a un script.
Arthur Ulfeldt
-1

en caso de que aún no se haya enterado ... si está abajo o arriba. El antiguo comando ifconfig todavía le permite hacer plomería / subir o bajar una interfaz u otras opciones. Solía ​​ser todo lo que había que usar cuando Redhat salió por primera vez.

Beto
fuente
-2

sed -i 's / ^ ONBOOT. * / ONBOOT = no / g' / etc / sysconfig / network-scripts / ifcfg-eno2 && reinicio de la red de servicios

Por hacerlo persistente.

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

mrvthi
fuente