¿Cómo cambiar el nombre de una interfaz Ethernet?

11

Como mi NIC incorporada no era compatible con Ubuntu desde el primer momento, me vi obligado a usar una NIC USB para la conexión a Internet temporal durante el tiempo de instalación.

Y la NIC USB ha tomado el eth0nombre haciendo que la NIC incorporada se convierta eth1.

Claro, esto realmente no importa, pero solo para la "belleza" del sistema, me gustaría dejar que se eth1convierta eth0cualquier NIC recién conectada eth1.

es posible?

Ivan
fuente

Respuestas:

10

Es posible. Por favor, hazlo:

gksudo gedit /etc/udev/rules.d/70-persistent-net.rules 

Intercambiar eth0 y eth1. Revise cuidadosamente, guarde y cierre gedit. Use cualquier otro editor de texto si no tiene gedit. Reinicie de inmediato y ya debería estar listo.

chili555
fuente
77
... y primero haga una copia de seguridad del archivo
Rinzwind
77
Solo para el registro: esto es correcto para 14.04, pero 70-persistent-net.rules ya no existe a partir de Ubuntu 15.10. Consulte askubuntu.com/questions/689501 para obtener una solución que funcione para Ubuntu 15.10, 16.04 y versiones posteriores.
richvdh
bueno, podría ser correcto para 14.04. Ha habido un poco de cambio en esta área en los últimos lanzamientos.
richvdh
Estás en lo correcto. Cuando esto se publicó en 2012, era el procedimiento correcto. Este procedimiento, así como muchas otras cosas, ha cambiado en 15.10 y siguientes.
chili555
11

Esto cambia el nombre de em1 a eth0 para mí en Ubuntu 14.04:

# Note: replace xx:xx... in the rule with the MAC address of your Nic>    
$ sudo vim /etc/udev/rules.d/75-persistent-net-generator.rules

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="xx:xx:xx:xx:xx:xx", NAME="eth0"

# Change "em1" to "eth0" in your interfaces file.
$ sudo vim /etc/network/interfaces

$ sudo reboot

Crédito: la respuesta de Billf aquí: https://bbs.archlinux.org/viewtopic.php?id=156375

Para su información, esto era lo que estaba viendo originalmente en los registros:

$ sudo grep eth0 /var/log/dmesg
[    2.976463] e1000e 0000:00:19.0 eth0: registered PHC clock
[    3.003714] e1000e 0000:00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) 18:03:73:e9:f2:36
[    3.031177] e1000e 0000:00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[    3.058399] e1000e 0000:00:19.0 eth0: MAC: 10, PHY: 11, PBA No: E041FF-0FF
[    3.153759] systemd-udevd[167]: renamed network interface eth0 to em1

Parece que systemd-udevd estaba haciendo un trabajo negativo y renombrando eth0 a em1 en primer lugar. No estoy seguro de cómo evitar que lo haga, pero cambiar el nombre a eth0 parece funcionar.

Para el entusiasta que quiere saber más ... http://linux.dell.com/files/whitepapers/consistent_network_device_naming_in_linux.pdf

user79878
fuente
1
Muchas, muchas gracias por esto. Todos los demás parecen perder el punto.
sjas
0

En Ubuntu Server 16.04LTS, 70-persistent-net.rules no existe y muchas publicaciones no ayudaron. Después de 4 horas de búsqueda, encontré esta solución, y para mi sorpresa, ¡realmente funcionó!

sudo ln -s / dev / null /etc/udev/rules.d/80-net-setup-link.rules

Luego cree el archivo usando sudo vi /etc/systemd/network/10-internet.link y agregue lo siguiente

[Coincidencia] Ruta = pci-0000: (la dirección mac de su dispositivo)

[Enlace] Nombre = eth0 (o como quieras nombrarlo)

: wq para guardar el archivo

luego reinicie y ajuste su archivo / etc / network / interfaces ... luego reinicie nuevamente

Espero que esto ayude a alguien

Jadey1412
fuente
No funciona Y no debería, AFAIU.
jno
No funciona. recién probado con 16.04 lts
Kendrick