Как вернуться имя интерфейса Wi-Fi USB (от wlxXXXXXXXXXXXX до wlanX)?

С Ubuntu 16.04 интерфейс Wi-Fi USB теперь wlxXXXXXXXXXXXX, где эти X являются цифрами адреса Mac устройства (политика предсказуемого имени интерфейса), Большей информацией об этом может быть находка здесь: systemd:PredictableNetworkInterfaceNames

на самом деле все интерфейсное именование изменилось, но я смог вернуться к старомодному пути (ethX для интерфейса Ethernet, wlanX для inetrnal карты Wi-Fi) изменяющий/etc/default/grub, как предложено в третьем сообщении этого потока, изменяющего проблему ubuntu 16-04 My имени сетевых интерфейсов, то, что это решение не делает работ для интерфейсов USB, и у меня все еще есть это очень раздражающее длинное имя (я использую командную строку много для проигрывания с моими интерфейсами Wi-Fi), interface naming issue

 So here is my question: 

Что я должен сделать для отключения этого новые правила для моего интерфейса Wi-Fi USB? Спасибо за Ваши советы и оправдание мой плохой английский язык. До свидания

8
задан 13 April 2017 в 05:23

4 ответа

Вы пропустили одну вещь от https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames /

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

Затем перезагрузка

, я думаю, что это должен быть 80-net-setup-link.rules файл в/etc/udev/как один ноутбук, который я обновил к Ubuntu 16.04 от 15,10, все еще содержал файл, названный/lib/udev/rules.d/73-usb-net-by-mac.rules, и это содержало

# 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"

, И это указывает/etc/udev/rules.d/80-net-setup-link.rules

, Этот файл не существует ни в одной из моих чистых установок Ubuntu 16.04, но часть этого должна существовать в другом исходном коде

8
ответ дан 23 November 2019 в 05:38

Примечание для тех, которые ищут подобный пример использования:

у меня была проблема с драйвером USB WiFi аппаратного ключа, не могущим пройти проверку подлинности из-за довольно долгого имени интерфейса в Debian (фрагмент).

Шаги для разрешения:

  1. скопировал /lib/udev/rules.d/80-net-setup-link.rules в /etc/udev/rules.d/

  2. , изменился $env{ID_NET_NAME} на $env{ID_NET_SLOT}

, Это поддержало уникальность имени интерфейса при сокращении его.

2
ответ дан 23 November 2019 в 05:38

Я имею студию человечности и имел ту же проблему: длинное имя wlxxxxx И соединенный Wi-Fi, но не РАБОТА!

Студия Ubuntu имеет специальное низкое ядро задержки, и я подозревал, что длинное имя могло быть проблемой.

Так, я переименовываю его к wlan0, вдохновленному этим потоком. Я сделал следующее:

1) скопированный/lib/udev/rules.d/80-net-setup-link.rules в папку,/etc/udev/rules.d/

2) отредактированный имя там. В моем случае была строка: НАЗОВИТЕ == "", ENV {ID_NET_NAME}! = "", НАЗЫВАЮТ =" $env {ID_NET_NAME}"

Я просто поместил "wlan0" вместо "$env {ID_NET_NAME}".

И теперь РАБОТЫ Wi-Fi!

GR

0
ответ дан 23 November 2019 в 05:38

Вместо того, чтобы полностью отключить переименование Вас может переопределить его, чтобы дать Вашим интерфейсам Ваши собственные имена. Это сохраняет статическое именование, но дает Вам имя, которое можно помнить и ввести.

Существующая система именования (/lib/udev/rules.d/80-net-setup-link.rules) только переименовывает интерфейс, если ему уже не дали имя. Таким образом, можно добавить собственные правила в более высоком приоритете в /etc/udev/rules.d который называет интерфейсы Вашим собственным способом, который затем мешает системе по умолчанию назвать те интерфейсы.

У меня есть файл 70-wifi.rules в моей системе, которая называет интерфейсы согласно сети, с которой они подключены:

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"

Это включается MAC-адресом интерфейса и приводит к:

$ 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

Вы могли переименовать их wlan0, wlan1, и т.д. Красота этого метода - Вы, получают имена, которые Вы хотите, и Вы извлекаете выгоду из статического именования сетевого интерфейса. Таким образом, интерфейсы будут всегда называть тем же самым.

0
ответ дан 23 November 2019 в 05:38

Другие вопросы по тегам:

Похожие вопросы: