Ich möchte es wpa_supplicant -D wext -i wlan0 -c /etc/wpa_supplicant.conf
beim Debian-Start ausführen (Runlevel 2-5). Ich habe einige vage Anweisungen in einer verwandten Frage gefunden, in denen stand, dass man ein Skript einfügen /etc/init.d/
und dann von den entsprechenden /etc/rcRUNLEVEL.d/
Verzeichnissen aus einen symbolischen Link darauf erstellen soll. Allerdings habe ich festgestellt, dass es bereits einige Dateien mit dem Namen „wpasupplicant“ gibt, die wahrscheinlich beim Start ausgeführt werden:
/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
Sie alle sind Symlinks zum selben Skript /etc/wpa_supplicant/ifupdown.sh
. Es hat am Anfang einen Kommentar, der besagt, dass es „[...] ifup(8) und ifdown(8) erlaubt, wpa_supplicant(8)- und wpa_cli(8)-Prozesse zu verwalten, die im Daemon-Modus laufen.“ Das nächste, was es jedoch einem Selbstaufruf am nächsten kommt, wpa_supplicant
ist (in 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
Bedeutet das, dass es sicher ist, ein init.d-Skript dafür zu erstellen wpa_supplicant
und wenn ja, wie würde es aussehen?
Allgemeine Information:
- Debian Squeeze (5.0)
- offizielles wpasupplicant-Paket (v0.6.10-2.1)
Der vollständige Inhalt meines Systems functions.sh
ist ifupdown.sh
hier (natürlich abhängig von der Betriebszeit meines Systems – es ist ein fünf Jahre alter Laptop, der sehr gerne überhitzt):
Antwort1
Wenn Ihr Ziel darin besteht, Ihre drahtlose Schnittstelle beim Start zu konfigurieren (anstatt den wpa_supplicant
Befehl aus anderen Gründen in ein Skript einzufügen), können Sie /etc/network/interfaces
die normale Konfigurationsdatei verwenden wpa_passphrase
, die generiert wird, um dieses Ergebnis zu erzielen.
In /etc/network/interfaces
(vorausgesetzt, dies wlan0
ist Ihre drahtlose Schnittstelle und die Konfigurationsdatei wpa_passphrase
ist in /root/your-wpa.conf
):
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /root/your-wpa.conf
Auf meinem System habe ich am Anfang der Zeile „wpa-conf“ einen Tabulator (keine Leerzeichen). Beim Eintippen dieser Antwort hatte ich Probleme, einen Tabulator für das Web einzugeben. Ich bin nicht sicher, ob das wichtig ist.
Ich musste die WPA-Conf-Datei nicht bearbeiten oder sonst etwas damit machen. Das ist, was ich vom Befehl bekomme
wpa_passphrase myssid mysecret >wpa.conf
SehenSo verwenden Sie eine WiFi-Schnittstelleauf Debian.org und /usr/share/doc/wpasupplicant/README.wpa_supplicant.conf.gz
lokal.
Ich habe dies auf Jessie getestet und habe keine Squeeze-Systeme mehr – aber ich nehme an, dass Sie in den vier Jahren seit dem Stellen der Frage ein Upgrade durchgeführt haben.
Antwort2
Bearbeiten Sie die Datei wpa_supplicant.conf und fügen Sie sie zu /etc/network/interfaces hinzu