# Jetson Nano wifi auto-connect setting (v2) ###### tags: `Jetson Nano` `wifi` ### Introduction 本文將會說明在 Jetson Nano 上,如何僅透過 Terminal 設定開機時自動連上 wifi Requirement: `sudo apt-get install wpasupplicant` ### 步驟說明(內部設定) 1. 編輯這個檔案,新增以下幾行在最後面 `sudo vim /etc/network/interfaces`: ``` auto wlan0 iface wlan0 inet dhcp wpa-driver wext wpa-conf /etc/wpa_supplicant.conf ``` 2. 設定 Timeout 時長,用於若無任何可連接 wifi 時的等候時間 (預設是5分多鐘,設定 45sec 實際等候為 60sec) ``` sudo mkdir -p /etc/systemd/system/networking.service.d/ sudo bash -c 'echo -e "[Service]\nTimeoutStartSec=45sec" > /etc/systemd/system/networking.service.d/timeout.conf' sudo systemctl daemon-reload ``` 3. 修改 config file 權限為 666: `sudo chmod 666 /etc/wpa_supplicant.conf` ### 使用方式 1. 在外部電腦使用 `ssh user@192.168.55.1` 連上 Jetson Nano ,並執行 sh file `source setwifi.sh`。這裡要注意,wifi 與密碼最好要用引號包起來(應該是因為空白的關係),不然可能會無法使用且不報錯。 正確例子: ``` >>> source setwifi.sh Please enter your WIFI name: "Ret[AI]iling Data_5G" Please enter your WIFI password: "XXXXXXXXXX" ... ``` 2. 重開機 or `systemctl reboot`,順利的話就會自動連上了,可以使用`hostname -I` 來獲取 IP address ### Optional 1. 把 wifi 相關資訊放到 config file 中的方式: `sudo bash -c "wpa_passphrase [name] [pwd] >> /etc/wpa_supplicant.conf"` 2. 或是使用以下方法也可以不須重開機 (wlan0 為網卡名稱): ``` sudo ifconfig wlan0 down sudo ifconfig wlan0 up sudo iwlist wlan0 scan sudo killall wpa_supplicant sudo wpa_supplicant -B -Dwext -iwlan0 -c/etc/wpa_supplicant.conf ``` 3. 檢查 wpa_supplicant.conf 底部是否有剛剛新增的 wifi,有問題的話密碼明文暗文都用用看: ``` network={ ssid="ssid_name" #psk="password" psk="encrypted password" } ``` 4. 檢查網卡是否有被啟動的方式: ``` sudo apt install rfkill rfkill list ``` Unblocking:`sudo rfkill unblock wifi` ### 附錄 - sh file 內容 執行此 sh file 可新增 wifi 到 wpa_supplicant.conf 中 下次開機時就會試圖連上新增的 wifi 因為是一直往下新增,所以連過的也會記得 ``` #! bin/bash read -p 'Please enter your WIFI name: ' wifi read -p 'Please enter your WIFI password: ' psk bash -c "wpa_passphrase $wifi $psk >> /etc/wpa_supplicant.conf" echo "===== WIFI setting complete! =====" echo "Please reboot the system." echo "After rebooting, you can use 'hostname -I' or similar command to obtain IP address." ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up