Ich versuche, einen Namen für eine Schnittstelle festzulegen, "ethLan" anstelle von eth0. Dadurch wird auch sichergestellt, dass der if-Name bei jedem Neustart und Kernel konsistent bleibt.
Ich habe einige Artikel in dem Thema gefunden, aber sie sind alle ein paar Jahre alt:
http://www.debian-administration.org/articles/463
http://www.linuxfromscratch.org/hints/downloads/files/ nameif.txt
Ich tat , wie sie sagten , und den zusätzlichen ethLan mac zu / etc / mactabs / . Zu diesem Zeitpunkt habe ich zwei Probleme:
1) Das if [...] && /sbin/nameif
Skript, das ich unter /etc/network/if-pre-up.d/ abgelegt habe, wird nicht ausgeführt. Ich habe dies gelöst, indem ich dies zu /etc/init.d/networking hinzugefügt habe , aber warum funktioniert if-pre-up.d nicht ?
2) Die Schnittstelle wird erst geladen, wenn ich ifconfig ethLan up manuell durchführe , obwohl ich sie zu / etc / network / interfaces hinzugefügt habe . Was mache ich falsch?
quelle
udevadm info -a /sys/class/net/eth0
. (sieheudevadm(8)
für Details)Für Leute, die über eine Suchmaschine auf diesen Beitrag stoßen, wie ich:
In Debian stretch und neueren Versionen können Sie systemd.link-Dateien verwenden, um udev die Geräte umbenennen zu lassen. Die Manpage finden Sie unter https://manpages.debian.org/stretch/udev/systemd.link.5.de.html .
Ein Beispiel:
Vergiss nicht, danach zu starten
update-initramfs -u
, um diese aktualisierten Konfigurationsdateien in dein initramfs einzubetten, wo sie angewendet werden.quelle
Es gibt einen etwas einfacheren Weg, dies mit einem Paket namens zu tun
ifrename
. Es hat eine separateudev
Konfigurationsdatei und Sie können MAC-Adressen verwenden, um Schnittstellen zu identifizieren.Es widerspricht
wireless-tools
jedoch.quelle
ifrename
ein Konflikt auftritt,udev
wenn beide verwendet werden, um den Schnittstellen dauerhafte Namen zu geben.