Linux Ubuntu Server のスクリプトで Wi-Fi アクセス ポイントの接続を確認する方法

Linux Ubuntu Server のスクリプトで Wi-Fi アクセス ポイントの接続を確認する方法

Linux デバイスのネットワーク アクセスを構成する bash スクリプトを作成しています。

このスクリプトは、Linuxに精通していない人やデバイスの管理者権限を持たない人が使用する必要があります。イーサネットインターフェースの設定部分は書きましたが、問題ありません。次に、Wi-Fi構成部分。

ゲームの最後は、 内に設定を記述することですnetplan configuration yaml file。スクリプトの予想されるワークフローは次のとおりです。

  1. 高度な Wi-Fi パラメータ (SSID、パスワード、認証モード、DHCP、または手動構成など) を取得するインタラクティブ メニュー システムを管理します。
  2. 選択したアクセスポイントへの接続を確認します
  3. データをネットプラン構成 yaml ファイルに保存する
  4. 変更を適用する

ポイント1, 3 and 4は正常です...利用可能なアクセス ポイントのリストを取得することも正常です。

私が達成できないのは、ポイント2選択したアクセスポイントへの接続を確認します)。次のような使用体験をしてみたいと思います

WIFI configuration parameters:
    SSID: My Network
    PSK:  password
Actions:
    - e: Edit
    - t: Test connectivity
    - s: Save
    - q: Quit
Select Action: t
....wait while testing connectivity
Test result: OK
Press a key to continue...

試してみましたiwconfigが、WPA では動作しないので、ほとんどの場合には適用されません。

試してみましたwpa_supplicantが、テストは実行できましたが、私が考えている方法ではありませんでした...これは、 でのみ停止できるフォアグラウンド テストでありctrl-C、初心者 (私の最終的なユーザー ターゲット) には読みにくいものです。

私はしたいと思います

  1. バックグラウンドでWi-Fi接続を起動する
  2. アクセスポイントへの接続が正常かどうかをバックグラウンドでテストします
  3. バックグラウンドで Wi-Fi 接続を閉じる (最終目標はネットプランを構成することです)
  4. 呼び出しスクリプトにOK/Fail応答を返す

wpa_supplicantもちろん、で接続を実行することは可能ですbgが、 で常に接続を確認して停止するにはどうすればよいでしょうかbg?

なにか提案を?

ありがとう、サンドロ

関連情報