USB WiFi 인터페이스 이름을 wlxXXXXXXXXXXXX에서 wlanX로 되 돌리는 방법은 무엇입니까?


9

: 우분투 16.04를 가진 USB 무선 랜 인터페이스는 이제 X 여기에서 찾을 수 있습니다 이것에 대해 (예측 인터페이스 이름의 정책에) 더 많은 정보 장치의 MAC 주소의 숫자입니다 wlxXXXXXXXXXXXX 있습니다 systemd : PredictableNetworkInterfaceNames

실제로 모든 인터페이스 이름이 변경되었지만 이 스레드의 세 번째 게시물에서 제안 된대로 네트워크 인터페이스 이름을 변경하는 / etc / default / grub 을 수정하여 구식 방식 (이더넷 인터페이스의 경우 ethX, 내장 Wi-Fi 카드의 경우 wlanX)으로 돌아갈 수있었습니다. 우분투 16-04 내 문제는이 솔루션이 USB 인터페이스에서 작동하지 않으며 여전히 매우 성가신 긴 이름을 가지고 있다는 것입니다 (Wi-Fi 인터페이스를 사용하려면 명령 줄을 많이 사용합니다) 인터페이스 이름 문제

 So here is my question: 

USB wifi 인터페이스에서이 새로운 규칙을 비활성화하려면 어떻게해야합니까? 당신의 조언에 감사하고 내 가난한 영어를 실례합니다. 안녕


왜 비활성화 하시겠습니까?
— Kaz Wolfe

명령 줄을 사용하여 wifi USB 인터페이스를 관리하고 이전 이름 ​​지정을 사용하는 스크립트를 사용하기 때문입니다. 우리는 내가 :) 정말 여기에 포인트 아니다 매우 쓸모 systemd 인터페이스 "예측 가능한 정책"하지만 ... 고려해야 것에 대해 시간을 말할 수보다
— kcdtv

관리하는 스크립트가 있고 동일한 카드를 사용하는 경우 올바른 (더 나은) 이름을 사용하도록 스크립트를 변경하지 않는 이유는 무엇입니까? 이 방법으로 당신은 항상 당신이 어떤 것을 사용하는지 알 수 있습니다. 이 두 카드 만 항상 연결 한 경우 스크립트에서 다른 카드를 찾아서 설정하십시오.
— Kaz Wolfe

더 나은 이름이 없습니다 ... 나는 이것에 대해 더 깊이 고려하지 않을 것입니다. 그것은 실제로 여기가 중요하지 않습니다. 당신은 그들이 더 낫다고 생각하지만 시스템을 다른 방식으로 사용할 수 있습니다. 나는 다른 방식으로 사용합니다 ... 실제로 카드를 많이 가지고 ...하지만 정말 여기가 아닌 점 ....
— kcdtv

1
새로운 이름 지정 체계가 짜증납니다. 이제 USB 장치가 변경 될 때 이름 때문에 mac 주소에 바인딩 된 별도의 스크립트가 필요합니다.
— Nuclear

답변:


9

https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ 에서 한 가지를 놓쳤습니다.

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

그런 다음 재부팅

15.10에서 Ubuntu 16.04로 업데이트 한 랩톱에 여전히 /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의 새로 설치에 존재하지 않지만 그 일부는 다른 소스 코드에 있어야합니다


1
Jeremy31 안녕하세요, 답변 주셔서 감사합니다
— kcdtv

. 내 /etc/udev/rules.d/ 디렉토리가 비어 있습니다. 나는이 80 그물 설치-link.rules 에 에는 /lib/udev/rules.d을 . 이 디렉토리에서 제안한 것과 동일하지만 USB wifi 장치의 이름은 여전히 ​​mac 주소로 지정되어 있습니다. 나는 다시 ... 감사하는 방법을 찾기 위해 노력할 것이다 내가 뭔가를 찾을 때 업데이트 할 것
— kcdtv

방금 내 우분투 16.04 시스템을 확인하고 이전 USB wifi 장치를 연결하면 iwconfig에서 wlan1로 표시되므로 /etc/udev/rules.d/80-net-setup-link.rules에 수행하십시오. grub 파일의 net.ifnames = 0이 USB 장치 변경을 막기에 충분하지 않은 이유를 잘 모르겠습니다.
— Jeremy31

효과가 있었다! 규칙 80을 /lib/udev/rules.d 에서 /etc/udev/rules.d로 복사했습니다 . 이 디렉토리에서 80-net-setup-link.rules.bak로 이름을 바꾸면서 복제했습니다 . 그리고 마침내 / dev / null_에 대한 심볼릭 링크 를 만들었습니다 . 재부팅 후 USB WiFi 카드가 " wlan1 "인터페이스 로 표시되지 않습니다 . 대단히 감사합니다! :)
— kcdtv

2

비슷한 사용 사례를 찾는 사람들을위한 참고 사항 :

데비안 (스트레치)의 인터페이스 이름이 길어 USB WiFi 동글의 드라이버를 인증 할 수없는 문제가있었습니다.

해결 단계 :

  1. 복사 /lib/udev/rules.d/80-net-setup-link.rules에/etc/udev/rules.d/

  2. 변경 $env{ID_NET_NAME}에$env{ID_NET_SLOT}

이를 통해 인터페이스 이름의 고유성을 유지하면서 단축했습니다.

업데이트 : 이것은 더 이상 데비안 10의 문제가 아닌 것 같습니다.


0

나는 우분투 스튜디오를 가지고 있으며 같은 문제가 있습니다 : 긴 wlxxxxx 이름과 wifi가 연결되었지만 작동하지 않습니다!

우분투 스튜디오에는 대기 시간이 짧은 특수 커널이 있으며 긴 이름이 문제가 될 수 있다고 생각했습니다.

따라서이 스레드에서 영감을 얻은 wlan0으로 이름을 바꿉니다. 나는 다음을 수행했다.

1) /lib/udev/rules.d/80-net-setup-link.rules를 /etc/udev/rules.d/ 폴더에 복사

2) 거기에서 이름을 편집했습니다. 제 경우에는 NAME == "", ENV {ID_NET_NAME}! = "", NAME = "$ env {ID_NET_NAME}"줄이있었습니다.

방금 "$ env {ID_NET_NAME}"대신 "wlan0"을 입력했습니다.

그리고 지금 와이파이 작동!

GR


0

이름 변경을 완전히 비활성화하는 대신 인터페이스 이름을 재정 의하여 인터페이스에 사용자 지정 이름을 지정할 수 있습니다. 정적 이름은 유지하지만 기억하고 입력 할 수있는 이름을 제공합니다.

기존 이름 지정 시스템 ( /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

이 방법의 장점은 당신이 당신이 원하는 이름을 가져 등등, 그들이 wlan1, wlan0 이름을 바꿀 수 있습니다, 그리고 당신은 정적 네트워크 인터페이스 이름 혜택을 누릴 수 있습니다. 따라서 인터페이스의 이름은 항상 동일합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.