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.