Jak zmienić nazwę interfejsu Ethernet?

11

Ponieważ moja wbudowana karta sieciowa nie była obsługiwana przez system Ubuntu, byłem zmuszony użyć karty sieciowej USB do tymczasowego połączenia internetowego w czasie instalacji.

A karta sieciowa USB przyjęła eth0nazwę, dzięki czemu stała się wbudowaną kartą sieciową eth1.

Oczywiście, to nie ma znaczenia, ale tylko dla systemu „uroda” Chciałbym eth1, aby stać eth0pozwalając każdy nowo przyłączone NIC stać eth1.

czy to możliwe?

Ivan
źródło

Odpowiedzi:

10

To jest możliwe. Proszę zrób:

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

Zamień eth0 i eth1. Korekta ostrożnie, zapisz i zamknij gedit. Użyj dowolnego innego edytora tekstu, jeśli nie masz gedit. Uruchom ponownie natychmiast i powinieneś być gotowy.

chili555
źródło
7
... i najpierw wykonaj kopię zapasową pliku
Rinzwind
7
Dla przypomnienia: jest to poprawne dla 14.04, ale 70-persistent-net.rules nie istnieje już od Ubuntu 15.10. Zobacz askubuntu.com/questions/689501, aby znaleźć rozwiązanie, które działa dla Ubuntu 15.10, 16.04 i nowszych.
richvdh
cóż, może to być poprawne dla 14.04. W ostatnich wydaniach trochę się zmieniło.
richvdh
Masz rację. Kiedy opublikowano to w 2012 r., Była to poprawna procedura. Ta procedura, podobnie jak wiele innych rzeczy, zmieniła się w 15.10 i nast.
chili555
11

To zmienia nazwę em1 na eth0 dla mnie na 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

Źródło: odpowiedź Billf tutaj: https://bbs.archlinux.org/viewtopic.php?id=156375

Do twojej wiadomości, to było to, co pierwotnie widziałem w logach:

$ 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

Wygląda na to, że systemd-udevd wykonywał negatywną pracę i na początku zmieniał nazwę eth0 na em1. Nie jestem pewien, jak to zrobić, ale zmiana nazwy na eth0 wydaje się działać.

Dla entuzjastów, którzy chcą dowiedzieć się więcej ... http://linux.dell.com/files/whitepapers/consistent_network_device_naming_in_linux.pdf

użytkownik79878
źródło
1
Dziękuję bardzo, bardzo za to. Wszystkie inne wydają się nie mieć sensu.
sjas
0

W Ubuntu Server 16.04LTS 70-persistent-net.rules nie istnieje i wiele postów nie pomogło. Po 4 godzinach poszukiwań wymyśliłem to rozwiązanie i ku mojemu zdziwieniu faktycznie zadziałało!

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

Następnie utwórz plik za pomocą sudo vi /etc/systemd/network/10-internet.link i dodaj następujące

[Dopasuj] Ścieżka = pci-0000: (adres MAC urządzenia)

[Link] Nazwa = eth0 (lub jakkolwiek chcesz to nazwać)

: wq, aby zapisać plik

następnie uruchom ponownie i dostosuj plik / etc / network / interfaces .. następnie uruchom ponownie

Mam nadzieję, że to komuś pomoże

Jadey1412
źródło
Nie działa I nie powinien, AFAIU.
Jno
Nie działa. właśnie przetestowane z 16,04 lts
Kendrick