Ich habe beschlossen, herauszufinden, welchen Namen mein Ethernet-Gerät haben wird, aber im Gegensatz zu anderen Distributionen scheint Debian diese Änderung nicht aktiviert zu haben (oder hält sie zurück?).
- Behalten Sie vorerst das alte Namensschema für persistente Netzwerkschnittstellen bei und aktivieren Sie das neue über net.ifnames = 1 in der Kernel-Befehlszeile.
Das Problem ist, dass ich die Grub-Kernel-Zeilen bearbeiten muss, und das scheint ein Overkill für etwas zu sein, das durch Ändern einer Datei deaktiviert werden kann . Gibt es eine andere Art und Weise?
Antworten:
Version 220-7 unter Debian hat den Patch, der dieses Opt-In ermöglichte, gelöscht:
Dies ergab sich aus einem Vorschlag in der Debian-Entwicklerliste . Systeme, die die alte Benennung verwendeten, werden erst umbenannt, wenn der Benutzer migriert. Lesen Sie README.Debian für die Migrationsanleitung.
Der neue Name kann vorhergesagt werden mit:
wo
eth0
ist der aktuelle Name des Geräts.quelle
Ich nehme an, du redest von Sid oder Jessie. Für Wheezy möchten Sie vielleicht den Backport von v204 ausprobieren .
Möglicherweise spielen hier einige Missverständnisse eine Rolle: Wie aus den udev-Regeln hier (für v208 derzeit in sid) hervorgeht, sind die udev-Entwickler explizit die Kernel-Cmdline als Standardmethode zum Aktivieren dieser Funktionalität ausgewählt.
Ich sehe nichts von Natur aus „overkill“ mit der ausgewählten Schnittstelle für sie mit und man einfach
GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=1"
in/etc/default/grub
. Gibt es bestimmte Nebenwirkungen, über die Sie sich Sorgen machen?Die Tatsache, dass die von Ihnen erwähnte Antwort darauf hindeutet, eine Datei zu entfernen, um sie zu deaktivieren, ist ein Hack (zumindest in Debians Fall), der auf lange Sicht nicht funktioniert, da diese Regeln in Debian gespeichert sind
/lib/udev/rules.d
, dh: sie würden in überschrieben ein Upgrade (außerdem macht es Sinn, die Funktionalität zu deaktivieren, indem die Datei, die sie beschreibt, effektiv entfernt wird, aber die Aktivierung unterscheidet sich grundlegend, daher halte ich dies für einen unfairen Vergleich).OTOH, wenn Sie einen konkreten Grund dafür haben, die Kernel-Cmdline nicht zu verwenden, können Sie einen Fehler gegen das Debian-Paket melden und den Betreuer veranlassen, diese Regeln zu verschieben
/etc/udev/
. Dann könnten Sie theoretisch zwischen den aktuellen "beständigen" und den neuen "vorhersagbaren" Regeln wechseln.Aber nur zu
net.if_names
Ihrer Information: Wenn Sie sich die Quellen für Version 209 ansehen , scheint sich die Prüfung insgesamt zu lösen, sodass Ihre Frage möglicherweise in naher Zukunft erneut beantwortet werden muss.quelle
net.ifname=1
Parameter einzuschließen, aber diese Funktion war unter Linux Mint nicht aktiviert. Welche Linux-Distributionen unterstützen dieses Feature?Unter Debian / Ubuntu, beginnend mit udev 220, können Sie die neuen Namen aktivieren, indem Sie diese Datei umbenennen:
Wie von vorgeschlagen
/usr/share/doc/udev/README.Debian.gz
, gefolgt vonStarten Sie dann neu (oder rmmod + insmod des Moduls, das Ihre Netzwerkkarte ansteuert).
quelle
Ubuntu 15.10 verwendet
biosdevname
nicht vorhersehbare Netzwerkschnittstellennamen. Auch wenn du es entfernst (apt-get remove biosdevname) und grub editierst (GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=1"
) und die persistenten Regeln , erhalten Sie keine prädikatiblen Netzwerkschnittstellen.Der Hauptgrund scheint die Abwärtskompatibilität zu sein. Ich habe es gerade mit 2 mobilen Breitband-USB-Geräten getestet und der Name der Netzwerkschnittstelle wird bei jedem Start inkonsistent angegeben (z. B. die erste Schnittstelle usb0, die zweite usb1 und umgekehrt). Der Hauptgrund scheint die Abwärtskompatibilität zu sein.
Auf dem Launchpad sind einige Fehler aufgetreten (z. B. diese ). Die kurze Antwort lautet jedoch, dass Sie nach einer anderen Distribution suchen sollten, wenn Sie nach vorhersehbaren Namen für die Netzwerkschnittstelle suchen.
quelle