코딩 연습

만자로 리눅스 잠자기 모드 후 무선인터넷 끊김 방지 본문

Linux

만자로 리눅스 잠자기 모드 후 무선인터넷 끊김 방지

코딩아저씨 2021. 3. 30. 00:46
반응형

 

 

만자로 리눅스 사용 중 잠자기 모드 후에 와이파이를 찾지 못하는 문제 해결법

 

/etc/systemd/system/network-restart.service

 

란 파일을 만들어 아래의 내용을 붙여 넣는다.

#cat /etc/systemd/system/network-restart.service
#systemctl enable network-restart.service
#systemctl start network-restart.service
#systemctl stop network-restart.service
#systemctl disable network-restart.service
#systemctl status network-restart.service
#systemctl daemon-reload

[Unit]
Description=Network Suspend/Resume Service 
Before=sleep.target
StopWhenUnneeded=yes

[Service]
User=root
Type=oneshot
RemainAfterExit=yes
ExecStartPre=-/usr/bin/sudo -u $USER /bin/bash -lc 'nmcli networking off'
ExecStart=/usr/bin/sleep 1
ExecStart=-/usr/bin/systemctl stop NetworkManager
ExecStart=/usr/bin/sleep 1
ExecStart=-/usr/bin/env bash -c 'DEVICE=$(hwinfo --wlan | grep "Device File" | cut -d " " -f5) && ip link set $DEVICE down'
ExecStart=/usr/bin/sleep 1
ExecStart=-/usr/bin/modprobe -r mt76x0e
ExecStop=/usr/bin/sleep 3
ExecStop=-/usr/bin/modprobe mt76x0e
ExecStop=/usr/bin/sleep 2
ExecStop=-/usr/bin/env bash -c 'DEVICE=$(hwinfo --wlan | grep "Device File" | cut -d " " -f5) && ip link set $DEVICE up'
ExecStop=/usr/bin/sleep 2
ExecStop=-/usr/bin/systemctl start NetworkManager
ExecStop=/usr/bin/sleep 2
ExecStop=-/usr/bin/sudo -u $USER /bin/bash -lc 'nmcli networking on'
ExecStop=/usr/bin/sleep 1
ExecStop=-/usr/bin/sudo -u $USER /bin/bash -lc 'nmcli r wifi off'
ExecStop=/usr/bin/sleep 1
ExecStop=-/usr/bin/sudo -u $USER /bin/bash -lc 'nmcli r wifi on'

[Install]
WantedBy=sleep.target

 이제 터미널에 inxi -nz 를 입력하고 엔터를 치자.

그러면 다음과 같은 결과를 볼 수 있다. 

Network:   Device-1: Broadcom BCM43602 802.11ac Wireless LAN SoC driver: brcmfmac 
           IF: wlp3s0 state: up mac:  

 

이제 network-restart.service 파일을 열어서 mt76x0e 부분을 driver: 옆에 있는 brcmfmac 로 바꿔 준 후 저장한다.

(두 군데 모두 바꿔야 한다.) 

 

터미널에 다음을 입력한 후 엔터키를 친다.

 

systemctl enable network-restart.service

 

재시작하면 끝

 

 

반응형


Comments