回答:
これにはupstartを使用できます。Upstartは、ワイヤレスネットワーク(または一般的なネットワーク)に接続するイベントをキャッチし、スクリプトを実行するための前提条件として使用できます。
UpstartはすでにUbuntuの多くのスクリプトで使用されており、ブート時にすべてのSystem V initスクリプトを最終的に置き換えます。
Network Managerは、/ etc / NetworkManager / dispatcher.d /ディレクトリー内のすべてのスクリプトを実行します(rootが所有し、実行可能で、他のユーザーから読み取り可能でなく、setuidでもないスクリプト)。
環境変数が設定され、ネットワークマネージャーによってこのスクリプトに渡されます。CONNECTION_UUID環境変数(一意の文字列を含む)に関心があります。
したがって、問題を解決するには(特定のワイヤレスネットワークが接続されているときにスクリプトを実行します):
1)(/ etc / NetworkManager / system-connections /ディレクトリ内の適切な接続ファイル内を見て)興味のあるワイヤレス接続のuuidを見つけます。
2)環境変数CONNECTION_UUIDが上記の(1)のワイヤレスネットワークのuuidに一致する場合に必要なことを行うbash(またはperl、またはpython、その他)スクリプトを記述します。
3)このスクリプトを/etc/NetworkManager/dispatcher.d/に配置し、所有者と権限を適切に設定します。
さらに読む:man networkmanager(および上記のディレクトリ内のスクリプトを突っ走るリッテ)。