Bringen Sie eth0 zurück, konsistente Benennung von Netzwerkgeräten

Bringen Sie eth0 zurück, konsistente Benennung von Netzwerkgeräten

Ich bin auf ein Softwarelizenzproblem gestoßen, bei dem in RHEL 7.x, das jetzt verwendet wird einheitliche Benennung von Netzwerkgerätenund/oderBIOS-Devnameund/odervorhersagbare Netzwerkschnittstellennamen. Die Software funktionierte nicht, da der Netzwerkschnittstellenname etwa so lautete:enp0s31f6, es will seheneth.

also lautet mein Netzwerkname für einen Netzwerkport auf der Hauptplatineenp0s31f6

/etc/default/grubIch kann jedoch ändern GRUB_CMDLINE_LINUX="rhgb verbose ifnames=0 biosdevname=0", dass das Endziel nicht erreicht wird, nachdem ich ein grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfgund ein getan habe reboot, sehe ich immer nochenp0s31f6.

Erst wenn ein doing nmcli connection modify enp0s31f6 connection.interface-name eth0gefolgt von einem rebootdo erscheint, sehe ich nur noch eth0using ifconfigund alles funktioniert.

Gibt es eine bessere und/oder einfachere Möglichkeit,ethist der Name der Netzwerkschnittstellen? Bedenken Sie, dass es einfach ist, wenn es nur eine ist, also eth0, aber wenn Sie eine Quad-NIC-Karte haben, möchte ich einfach eth0..eth3 wie in den guten alten Zeiten.

Ich dachte,eth0Undeth1Undeth2Undeth3war ziemlich guteinheitliche Gerätenetzwerkbenennung. Jetzt bekomme ichenpdas undxyzdas für Schnittstellennamen :(

Antwort1

Ich habe udev vor ein paar Tagen ausprobiert und nicht viel herausgefunden. Eines hat am Ende allerdings funktioniert:

/usr/lib/udev/rules.d/80-net-setup-link.ruleXXX

Ich habe die Datei „umbenannt“ und jetzt habe ich eth0.

Zum Neustarten von udev verwendete ich glaube ich udeavadm control -e.

Auch das Anhalten ist ganz einfach:

Beachten Sie, dass systemd-udevd.service Restart=always enthält und diese Option daher systemd-udevd neu startet. Wenn Sie systemd-udevd.service stoppen möchten, verwenden Sie bitte Folgendes: systemctl stop systemd-udevd-control.socket systemd-udevd-kernel.socket systemd-udevd.service

Ich war so verzweifelt, dass ich das eingefügt habe – es funktioniert! Dann habe ich die Datei 80-net-link gefunden ...

"# Bearbeiten Sie diese Datei nicht, sie wird beim Update überschrieben."

(Ich weiß. Ich werde es noch einmal umbenennen)

Es beinhaltet:

NAME=="", ENV{ID_NET_NAME}!="", NAME="$env{ID_NET_NAME}"

Also habe ich es .rulesdurch ersetzt .ruleXXXund habe wieder „eth0“.

verwandte Informationen