루트가 아닌 사용자로 Debian Raspberry PI에서 네트워크 설정을 시작하는 방법

루트가 아닌 사용자로 Debian Raspberry PI에서 네트워크 설정을 시작하는 방법

내 사용자 계정 "bob"에 로그인할 때마다 WiFi에 연결하려면 다음 명령(sudo 또는 루트 계정 사용)을 사용해야 합니다.

wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf
dhclient wlan0

wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf나에게 다음과 같은 결과를 주었다:

Successfully initialized wpa_supplicant
Could not set interface wlan0 flags (UP): Operation not permitted
WEXT: Could not set interface 'wlan0' UP
wlan0: Failed to initialized driver interface

나는 dhclient wlan0얻다:

RTNETLINK answers: Operation is unreachable

저는 Raspberry PI 4, Debian 10 코드명인 Buster에서 이 작업을 수행하고 있습니다.

나에겐 시스템이 있다.

부팅하거나 "bob" 또는 루트로 로그인할 때마다 시스템이 WiFi에 연결되도록 환경을 설정하려면 어떻게 해야 합니까?

방금 보여드린 명령을 사용하여 .profile에 넣을 생각인데 "bob" 계정으로는 실행할 수 없습니다.

답변1

Wi-Fi 자격 증명은 으로 이동됩니다 /etc/wpa_supplicant/wpa_supplicant.conf.

파일은 다음과 같아야합니다

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
country=US
update_config=1

network={
    ssid="<wifi name>"
    psk="<wifi password>"
}

이제 Pi는 부팅할 때마다(또는 WiFi에 연결될 때) 자동으로 연결됩니다. 변경 사항을 적용한 후 Wi-Fi를 다시 로드하려면 를 사용하세요 sudo systemctl restart dhcpdc. network=여러 Wi-Fi에 자주 연결하는 경우 블록을 더 추가할 수 있습니다.

wpa_supplicant.confSD 카드를 제거하고 위 내용이 포함된 파일을 /bootSD의 - 섹션에 넣어 새로 설치된 Raspberry Pi OS에 로드할 수도 있습니다.

답변2

필요한 명령을 실행하는 크론 작업입니다.

스크립트 만들기 autocnnect.sh:

cat <<EOF > autoconnect.sh
/usr/sbin/wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf
sleep 0.5
/usr/sbin/dhclient wlan0 >/dev/null 2>&1
EOF

실행 가능하게 만들어라

chmod +x autoconnect.sh

루트로 실행 crontab -e하고 다음 줄을 추가합니다.

@reboot /path/to/autoconnect.sh

관련 정보