네트워크 인터페이스를 영구적으로 비활성화하는 방법은 무엇입니까?


22

와의 네트워크 인터페이스를 중단 ifconfig wlan0 down했지만 몇 시간마다 wlan0인터페이스가 다시 나타나고 이유를 알 수 없습니다.

기계를 다시 시작하지 않고 절대로 변경하지 않았습니다 /etc/network/interface. 내 질문은 "영구적으로"비활성화하는 방법에 대한 것 wlan0입니다. 내가 사용 /etc/network/interface합니까? 나는 이미 ifconfig wlan0 down내 안에 rc.local있습니다.

답변:


32

방법 # 1-NetworkManager의 애플릿에서

데스크탑 오른쪽 상단의 아이콘 아래에서 액세스 할 수있는 네트워크 애플릿에서 무선 네트워킹을 비활성화하십시오.

                                                    ss #!

참고 : 네트워킹 애플릿의 아이콘은 삼각형 쐐기 모양입니다. 위의 이미지는 화살표 # 1입니다. 이 아이콘을 클릭하면 무선으로 영구적으로 비활성화 할 수있는 곳에서 메뉴 # 2를 볼 수 있습니다.

방법 # 2-/ etc / network / interfaces

파일에서 /etc/network/interfacesNetworkManager가 wlan0인터페이스를 제어하지 않도록 지정할 수 있습니다 . 이렇게하려면 위에서 언급 한 파일에이 줄을 추가하면됩니다.

iface wlan0 inet manual

그런 다음 NetworkManager를 다시 시작하십시오.

$ sudo service network-manager restart

참고 문헌


1
방법 1은 Wi-Fi 카드가 하나만있는 경우에만 작동합니다.
xuhdev

0

나는 이것과 비슷한 것을해야했지만 장치가 전혀 나오지 않기를 원했습니다. 우리는 리눅스 기반 장치에서 이더넷 포트를 물리적으로 덮었으므로 전혀 나타나지 않아야합니다.

나는 udev 규칙으로 이것을했다.

이 udev 규칙은 eno2의 ID_NET_NAME_ONBOARD를 가진 네트워크 장치가 추가 될 때 Linux가 pci 장치를 제거하도록 지시합니다. 예를 들어에 추가하십시오 /etc/udev/rules.d/90-disable-eno2.rules.

ACTION=="add", SUBSYSTEM=="net", ENV{ID_NET_NAME_ONBOARD}=="eno2", RUN+="/bin/sh -c 'echo 1 > /sys$DEVPATH/device/remove'"

ID_NET_NAME_ONBOARD와 같은 마법 환경 변수는 udev here에 의해 설정됩니다 . 아래 해당 파일의 주석에서 몇 가지 예를 복사했습니다.

PCI Ethernet card with firmware index "1":
    ID_NET_NAME_ONBOARD=eno1
    ID_NET_NAME_ONBOARD_LABEL=Ethernet Port 1

PCI Ethernet card in hotplug slot with firmware index number:
    /sys/devices/pci0000:00/0000:00:1c.3/0000:05:00.0/net/ens1
    ID_NET_NAME_MAC=enx000000000466
    ID_NET_NAME_PATH=enp5s0
    ID_NET_NAME_SLOT=ens1

PCI Ethernet multi-function card with 2 ports:
    /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/enp2s0f0
    ID_NET_NAME_MAC=enx78e7d1ea46da
    ID_NET_NAME_PATH=enp2s0f0
    /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.1/net/enp2s0f1
    ID_NET_NAME_MAC=enx78e7d1ea46dc
    ID_NET_NAME_PATH=enp2s0f1

PCI wlan card:
    /sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlp3s0
    ID_NET_NAME_MAC=wlx0024d7e31130
    ID_NET_NAME_PATH=wlp3s0

USB built-in 3G modem:
    /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.6/net/wwp0s29u1u4i6
    ID_NET_NAME_MAC=wwx028037ec0200
    ID_NET_NAME_PATH=wwp0s29u1u4i6

USB Android phone:
    /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/net/enp0s29u1u2
    ID_NET_NAME_MAC=enxd626b3450fb5
    ID_NET_NAME_PATH=enp0s29u1u2

s390 grouped CCW interface:
    /sys/devices/css0/0.0.0007/0.0.f5f0/group_device/net/encf5f0
    ID_NET_NAME_MAC=enx026d3c00000a
    ID_NET_NAME_PATH=encf5f0

규칙을 테스트 할 때 다음과 같은 명령을 실행하여 모든 것이 일치하고 구문이 올바른지 확인해야합니다.

# Find the path marked "P" with this command.
udevadm info --path=/sys/class/net/eno2

# Test with this command with the path from above
udevadm test --action="add" /devices/pci0000:00/0000:00:1c.4/0000:03:00.0/net/eno2 2>&1 | less

0

systemd를 사용하여 네트워크 인터페이스를 영구적으로 비활성화 할 수 있습니다. 예를 들어 비활성화하려는 경우 wlan0:

$ systemctl | grep wlan0
sys-devices-platform-soc-XXX.auto-net-wlan0.device loaded active plugged   /sys/devices/platform/soc/XXX.auto/net/wlan0
sys-subsystem-net-devices-wlan0.device             loaded active plugged   /sys/subsystem/net/devices/wlan0                                                                     
wpa_supplicant@wlan0.service                       loaded active running   WPA supplicant daemon (interface-specific version)                                                   

다음으로 하나씩 가져 가서 그들이 무엇을하는지 확인하십시오.

$ systemctl status wpa_supplicant@wlan0.service
● wpa_supplicant@wlan0.service - WPA supplicant daemon (interface-specific version)
   Loaded: loaded (/lib/systemd/system/wpa_supplicant@.service; disabled; vendor preset: enabled)
   Active: active

중지하고 비활성화하십시오.

$ sudo systemctl stop wpa_supplicant@wlan0.service
$ sudo systemctl disable wpa_supplicant@wlan0.service

wpa_supplicant@wlan0.service예를 들어 비활성화 하면 wlan0 인터페이스가 무선 네트워크에 연결을 시도하지 않습니다.

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