(gelöst) net.ifnames (jessie-backports buggy)

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
guennid

(gelöst) net.ifnames (jessie-backports buggy)

Beitrag von guennid » 13.07.2017 13:37:09

bisher konnte ich mit "net.ifnames=0" im bootloader verhindern, dass systemd-udev die NICs umbenannte. Gilt das nicht mehr (jessie)? Eine 70-persistent-net.rules wird nicht angelegt.
Zuletzt geändert von guennid am 17.07.2017 22:48:02, insgesamt 2-mal geändert.

guennid

Re: net.ifnames

Beitrag von guennid » 14.07.2017 08:34:28

*push*

Hintergrund der Frage ist: Da meine bisherige PCMCIA-WLAN-Karte nicht mehr funktioniert (siehe (1), benötige ich Ersatz. Bei einer anderen PCMCIA-WLAN-Karte bleibt es bei der Kernel-Benamung, will sagen, die kann ich mit wlan0 funktionierend konfigurieren. Bei einem etwas leistungsfähigeren USB-Dongle (zuständiges Modul rtl8192cu) wird wlan0 umbenannt in das leicht zu merkende wlx000d81ac74d6 :roll: . Ich denke, entweder funktioniert der boot-loader-Parameter oder er funktioniert eben nicht. Was soll dieser Mischmasch?

(1) viewtopic.php?f=30&t=165947

Benutzeravatar
schorsch_76
Beiträge: 2535
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: net.ifnames

Beitrag von schorsch_76 » 14.07.2017 11:38:01

Hier [1] steht was dazu
This change does not apply to upgrades of jessie systems; the naming will continue to be enforced by /etc/udev/rules.d/70-persistent-net.rules. For more information, see /usr/share/doc/udev/README.Debian.gz or the upstream documentation.
I don't like this, how do I disable this?

You basically have three options:
1.You disable the assignment of fixed names, so that the unpredictable kernel names are used again. For this, simply mask udev's .link file for the default policy: ln -s /dev/null /etc/systemd/network/99-default.link
2.You create your own manual naming scheme, for example by naming your interfaces "internet0", "dmz0" or "lan0". For that create your own .link files in /etc/systemd/network/, that choose an explicit name or a better naming scheme for one, some, or all of your interfaces. See systemd.link(5) for more information.
3.You pass the net.ifnames=0 on the kernel command line
[1] https://www.debian.org/releases/stable/ ... face-names

guennid

Re: net.ifnames

Beitrag von guennid » 14.07.2017 15:41:05

Den Link kenne ich. Darauf beziehe ich mich ja. Ich hatte Option 3 gewählt und die funktioniert hier eben nicht zuverlässig. Im Grunde genommen ist mir das Wurscht, ich kann auch bei Verwendung von udev deren Bezeichnerei übernehmen. Da ich im Allgeinen ohne udev arbeite, wär's mir aber ganz recht, wenn das Kernel-Kommando zuverlässig funktionierte und ich dann nicht jedesmal meine scripts anpassen müsste.

Benutzeravatar
detix
Beiträge: 1699
Registriert: 07.02.2007 18:51:28
Wohnort: MK

Re: net.ifnames

Beitrag von detix » 14.07.2017 16:48:42

Wenn die Karte eine MAC-Adresse hat, warum das nicht per link -Datei anpassen?
Wlan nutz ich momentan nicht, für den Router hier siehts zB so aus:

/etc/systemd/network/10-eth1-dhcp.link

Code: Alles auswählen

[Match]
MACAddress=00:11:22:33:44:55

[Link]
Name=interNet
/etc/systemd/network/30-dhcp.network

Code: Alles auswählen

[Match]
Name=interNet

[Network]
DHCP=yes
Das funktioniert hier absolut zuverlässig und auch in ähnlicher Weise fürs lokale Netzwerk,
vielleicht musst du bei so einer Änderung eine neue initrd.img bauen,
nachzulesen in /usr/share/doc/udev/README.Debian.gz mit:

Code: Alles auswählen

update-initramfs -u
Gruß an alle Debianer, und immer daran denken:
Macht ohne Haftung funktioniert nicht!

guennid

Re: net.ifnames

Beitrag von guennid » 16.07.2017 16:50:00

Ich habe hier z.Z. weder was mit systemd noch mit initrd.img am Hut. Mein Verständnisproblem ist, dass dasselbe (jessie-aktuelle) udev trotz ifnames=0 im bootloader die eine wlan-NIc umbenennt, die andere aber nicht. (Nach meinem Kenntnisstand ist udev, mittlerweile systemd-udev, schon seit einiger Zeit dafür zuständig, den vom Kernel erzeugten Netzwerk-Schnittstellen feste Namen zu geben.)

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: net.ifnames

Beitrag von inne » 16.07.2017 19:11:06

guennid hat geschrieben: ↑ zum Beitrag ↑
14.07.2017 08:34:28
Bei einem etwas leistungsfähigeren USB-Dongle (zuständiges Modul rtl8192cu) wird wlan0 umbenannt in das leicht zu merkende wlx000d81ac74d6 :roll: . Ich denke, entweder funktioniert der boot-loader-Parameter oder er funktioniert eben nicht. Was soll dieser Mischmasch?
Ist das vielleicht ein Bug?
systemd ignores net.ifnames=0 on USB
Wenns so ist, probiere die Versionen aus den Backports...

guennid

Re: net.ifnames

Beitrag von guennid » 16.07.2017 22:01:20

Ist das vielleicht ein Bug?
Sowas hatte ich schon befürchtet. Leider ist mein Englisch zu schlecht, um diese Bug-Meldungen richtig verstehen zu können.

Danke für den backports-Tipp!

Apropos: Die Umbenennerei gibt's ja schon etwas länger. Wenn ich das im aktuellen Zusammenhang richtig interpretiere, haben sie auch das System der Umbenennungen schon wieder geändert - schlechte alte udev-Tradition halt.

Liest'de mit TomL? Es gibt Arbeit! :wink:

guennid

Re: net.ifnames

Beitrag von guennid » 17.07.2017 18:17:04

Leider war die backports-Version von udev bereits installiert (230). Kann ich das downgraden/wie kann ich das downgraden (215 in jessie), ohne das X neu installieren zu müssen?

guennid

Re: net.ifnames

Beitrag von guennid » 17.07.2017 22:38:55

So, länger warten wollte ich nicht.

udev samt xserver gepurged (xorg.conf wegsichern, falls benutzt). Deinstallierte X-Pakete gemerkt. Vorsichtshalber backports aus der sources.list genommen. 1. Versuch, die jessie-Version von udev (215) zu installieren scheiterte, wgen libudev1, war natürlich ebenfalls auf 230. Die loszuwerden war nicht ganz einfach: deinstallieren ging nicht, das hätte das halbe System mitgenommen. Ich habe mir dann die Version im jessie-repo händisch runtergeladen und per dkpg über die existierende drüber installiert. Anschließend udev+X-Kram neu installiert. net.ifnames=0 funktioniert wieder.

Antworten