如何在 Debian 啟動時自動執行 wpa_supplicant

如何在 Debian 啟動時自動執行 wpa_supplicant

我想wpa_supplicant -D wext -i wlan0 -c /etc/wpa_supplicant.conf在 Debian 啟動時運行(運行等級 2-5)。我從一個相關問題中發現了一些模糊的說明,該說明說要放入腳本/etc/init.d/,然後從適當的/etc/rcRUNLEVEL.d/目錄符號連結到它。但是,我注意到已經有一些名為“wpasupplicant”的檔案可能在啟動時運行:

/etc/network/if-down.d/wpasupplicant

/etc/network/if-post-down.d/wpasupplicant

/etc/network/if-pre-up.d/wpasupplicant

/etc/network/if-up.d/wpasupplicant

它們都是同一腳本的符號連結/etc/wpa_supplicant/ifupdown.sh。它在開頭有一條註釋說“[...]允許 ifup(8) 和 ifdown(8) 管理以守護程序模式運行的 wpa_supplicant(8) 和 wpa_cli(8) 進程。”然而,它最接近調用wpa_supplicant自身的是(在functions.sh中):

WPA_SUP_BIN="/sbin/wpa_supplicant"
[snip]
start-stop-daemon --start --oknodo $DAEMON_VERBOSITY \
    --name $WPA_SUP_PNAME --startas $WPA_SUP_BIN --pidfile $WPA_SUP_PIDFILE \
    -- $WPA_SUP_OPTIONS $WPA_SUP_CONF
[snip]
start-stop-daemon --stop --oknodo $DAEMON_VERBOSITY \
    --exec $WPA_SUP_BIN --pidfile $WPA_SUP_PIDFILE

這是否意味著為 製作 init.d 腳本是安全的wpa_supplicant,如果是的話,它會是什麼樣子?

基本資訊:

  • Debian 擠壓 (5.0)
  • 官方 wpasupplicant 套件 (v0.6.10-2.1)

我的系統的完整內容functions.shifupdown.sh都在這裡(當然,取決於我的系統的正常運行時間 - 這是一台已經使用了五年的筆記型電腦,非常喜歡過熱):

函數.sh

ifupdown.sh

答案1

如果您的目標是在啟動時設定無線介面(而不是wpa_supplicant出於其他原因將命令放入腳本中),則可以使用產生的/etc/network/interfaces普通設定檔wpa_passphrase來實現此結果。

/etc/network/interfaces(假設wlan0是您的無線介面並且配置wpa_passphrase位於/root/your-wpa.conf):

allow-hotplug wlan0
iface wlan0 inet dhcp
    wpa-conf /root/your-wpa.conf

在我的系統上,「wpa-conf」行的開頭有一個製表符(不是空格)。鍵入此回應時,無法進入網路標籤。不確定這是否重要。

我不需要編輯 WPA conf 檔案或對其執行任何操作。這是我從命令中得到的

wpa_passphrase myssid mysecret >wpa.conf

如何使用WiFi介面在 Debian.org 和/usr/share/doc/wpasupplicant/README.wpa_supplicant.conf.gz本地。

我在 Jessie 上進行了測試,並且不再剩下任何 Squeeze 系統 - 但我想您在提出問題後的 4 年內已經升級了。

答案2

編輯 wpa_supplicant.conf 檔案並將其新增至 /etc/network/interfaces

http://wiki.debian.org/WPA#Why.3F

相關內容