web-dev-qa-db-fra.com

Comment rétablir le nom de l'interface USB wifi (de wlxXXXXXXXXXXXX à wlanX)?

Avec Ubuntu 16.04, les interfaces wifi USB sont maintenant wlxXXXXXXXXXXXX où les X sont les chiffres de l’adresse MAC du périphérique (politique de nom d’interface prévisible). Pour plus d’informations à ce sujet, cliquez ici: systemd: PredictableNetworkInterfaceNames

en fait, tous les noms d’interface ont changé, mais j’ai pu revenir à l’ancienne méthode (ethX pour une interface ethernet, wlanX pour une carte wifi) en modifiant /etc/default/grub comme suggéré dans le troisième message de ce fil changement du nom des interfaces réseau ubuntu 16-04 Mon problème est que cette solution ne fonctionne pas pour les interfaces USB et que j'ai toujours cette très ennuyeuse nom long (j'utilise beaucoup la ligne de commande pour jouer avec mes interfaces wifi) interface naming issue

 So here is my question: 

Que dois-je faire pour désactiver ces nouvelles règles pour mon interface wifi USB? Merci pour vos conseils et excusez mon mauvais anglais. Au revoir

7
kcdtv

Vous avez oublié une chose de https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/

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

Puis redémarrez

Je pense que cela doit être le fichier 80-net-setup-link.rules dans/etc/udev/comme l'ordinateur portable que j'ai mis à jour vers Ubuntu 16.04 à partir de 15.10 contenait encore un fichier nommé /lib/udev/rules.d/73- usb-net-by-mac.rules et il contenait

# Use MAC based names for network interfaces which are directly or indirectly
on USB and have an universally administered (stable) MAC address (second bit
is 0).


IMPORT{cmdline}="net.ifnames", ENV{net.ifnames}=="0", GOTO="usb_net_by_mac_end" PROGRAM="/bin/readlink /etc/udev/rules.d/80-net-setup-link.rules", RESULT=="/dev/null", GOTO="usb_net_by_mac_end"


ACTION=="add", SUBSYSTEM=="net", SUBSYSTEMS=="usb", NAME=="", \ ATTR{address}=="?[014589cd]:*", \ IMPORT{builtin}="net_id", NAME="$env{ID_NET_NAME_MAC}"


LABEL="usb_net_by_mac_end"

Et il spécifie /etc/udev/rules.d/80-net-setup-link.rules

Ce fichier n'existe dans aucune de mes installations propres d'Ubuntu 16.04, mais une partie de cela doit exister dans un autre code source.

8
Jeremy31

Une note pour ceux qui recherchent un cas d'utilisation similaire:

J'ai eu un problème avec le pilote d'un dongle USB WiFi incapable de s'authentifier à cause d'un nom d'interface plutôt long dans Debian (stretch).

Étapes à suivre pour la résolution:

  1. copié /lib/udev/rules.d/80-net-setup-link.rules à /etc/udev/rules.d/

  2. a changé $env{ID_NET_NAME} en $env{ID_NET_SLOT}

Cela a permis de conserver l'unicité du nom de l'interface tout en le raccourcissant.

1
Code Maverick

Au lieu de désactiver complètement le changement de nom, vous pouvez le remplacer pour donner à vos interfaces vos propres noms personnalisés. Cela conserve le nom statique, mais vous donne un nom que vous pouvez mémoriser et saisir.

Le système de nommage existant (/lib/udev/rules.d/80-net-setup-link.rules) ne renomme une interface que si aucun nom ne lui a déjà été attribué. Vous pouvez donc ajouter vos propres règles avec une priorité plus élevée dans /etc/udev/rules.d qui nomme les interfaces à votre manière, ce qui empêche ensuite le système par défaut de nommer ces interfaces.

J'ai le fichier 70-wifi.rules dans mon système qui nomme les interfaces en fonction du réseau auquel elles sont connectées:

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:0f:00:4a:c4:c9", NAME="wifi-root"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:19:86:31:dd:b7", NAME="wifi-main"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="38:2c:4a:48:27:49", NAME="wifi-local"

Elle est définie par l'adresse MAC de l'interface et entraîne:

$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 3c:d9:2b:73:ad:5d brd ff:ff:ff:ff:ff:ff
15: wifi-main: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 00:19:86:31:dd:b7 brd ff:ff:ff:ff:ff:ff
16: wifi-local: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 38:2c:4a:48:27:49 brd ff:ff:ff:ff:ff:ff
17: wifi-root: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 00:0f:00:4a:c4:c9 brd ff:ff:ff:ff:ff:ff

Vous pouvez les renommer wlan0, wlan1, etc. La beauté de cette méthode réside dans le fait que vous obtenez les noms que vous souhaitez, et vous bénéficiez d'un nommage d'interface réseau statique. Ainsi, les interfaces porteront toujours le même nom.

0
Majenko

J'ai ubuntu studio et ai le même problème: un long nom wlxxxxx ET le wifi connecté mais ne fonctionne pas!

Ubuntu studio a un noyau spécial à faible temps de latence et je soupçonnais que le nom long pouvait être un problème.

Donc, je le renomme wlan0 inspiré par ce fil. J'ai fait ce qui suit:

1) copié le fichier /lib/udev/rules.d/80-net-setup-link.rules dans le dossier /etc/udev/rules.d/

2) édité le nom ici. Dans mon cas, il y avait une ligne: NAME == "", ENV {ID_NET_NAME}! = "", NAME = "$ env {ID_NET_NAME}"

Je viens de mettre "wlan0" au lieu de "$ env {ID_NET_NAME}".

Et maintenant le wifi fonctionne!

GR

0
mchrgr2000