ArmbianでWi-Fi設定(失敗編)

2020.9.20 追記
ぜひ、成功編と併せてご覧ください。
ArmbianでWi-Fi設定(成功編) – あららぼ

Wi-Fi をオンボード搭載していないシングルボードコンピュータで、Wi-Fi の USB ドングルを挿して設定することにしました。

Raspberry Pi OS だとツール raspi-config で簡単に設定できるのですが、Armbian に用意されている同種のツール armbian-config では、Wi-Fi 情報の表示は出来ますが設定は出来ませんでした。

今回はサーバ用途のため GUI ツールも使えません。
しかたなく、手動で設定することにしました。

目次

結論

ページ最後に書いていますが、DHCP だと上手く行きました。
ただ今回、固定IP化がゴールなので失敗です...

環境

  • シングルボードコンピュータ
    Banana Pi M1 Classic

    • Soc
      Allwinner A20
    • Memory
      1GB

※このボードは、Wi-Fi 非搭載モデルです。

  • OS
    Armbian

    # cat /etc/issue
    Armbian 20.08.1 Buster \l 

設定

前回の記事を参考に設定していきます。

固定IP設定

いつもの調子でネットワーク情報を書き込みます。

  • /etc/network/interfaces.d/
    ※再起動で反映されます。

例)インターフェース名が wlan0 の場合。

auto wlan0 
allow-hotplug wlan0
iface wlan0 inet static
address ***.***.***.***
netmask 255.255.255.0
gateway ***.***.***.***
dns-nameservers 8.8.8.8 8.8.4.4
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

※末尾の wpa-conf はアクセスポイント接続情報ファイルを読み込むための記述です。

Wi-Fi 設定

wpa_cli コマンドを使い、対話式で wpa_supplicant.conf ファイルを作成していきます。

アクセスポイント情報登録

wpa_cli コマンドで一度アクセスポイントへ接続し、その情報を登録します。

# wpa_cli
wpa_cli v2.8-devel
Copyright (c) 2004-2019, Jouni Malinen <j@w1.fi> and contributors

Selected interface ''

Interactive mode

> scan
OK
<3>CTRL-EVENT-SCAN-STARTED 
<3>CTRL-EVENT-SCAN-RESULTS 
<3>WPS-AP-AVAILABLE 
<3>CTRL-EVENT-NETWORK-NOT-FOUND 
<3>CTRL-EVENT-SCAN-STARTED 
<3>CTRL-EVENT-SCAN-RESULTS 
<3>WPS-AP-AVAILABLE 

> scan_result
bssid / frequency / signal level / flags / ssid
c0:25:a2:72:cb:xx   2422    -55 [WPA-PSK-CCMP][WPA2-PSK-CCMP][WPS][ESS] {AccessPointName}
...

> add_network
0

> set_network 0 ssid "nAP"
OK

> set_network 0 psk "xxx"
OK

> enable_network 0
OK

> save_config
FAIL

ここで問題発生です。
前回 save_config した際は OK となり万々歳だったのですが、今回は FAIL となりエラーとなりました。

なお、save_config できないと設定の永続化が出来ません(再起動でクリアされる)。

save_config "FAIL" 対策

wpa_cli コマンドで save_config できないのは権限が無いから〜という記事を見つけたので、対応してみました。

ちなみに、対象ファイルやディレクトリの権限に問題はありませんでした。
(root で実行していて、且つ root に読書権限付き)。

Web で見つけた記事は update_config を設定する、という記事でした。

# cat /etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=/run/wpa_supplicant
update_config=1

上記のように設定して再起動してみましたが、結果は変わりませんでした("FAIL")。

成功例

何故か DHCP だと上手くつながりました...

# cat /etc/network/interfaces.d/wlan0 
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf