Чи є спосіб запустити сценарій кожного разу, коли я підключаюся до бездротової мережі specifc?


14

Існує певна бездротова мережа, до якої я підключаюся, і вимагає використання vpnc для доступу до Інтернету. Якщо я роблю сценарій для цього, чи існує спосіб його налаштувати так, щоразу, коли я підключаюся до цієї мережі, сценарій запускається? Щоб було зрозуміло, я не хочу, щоб цей сценарій виконувався з більшості бездротових з'єднань, лише з одним конкретним.

Відповіді:


6

Ви можете скористатися для цього запуском . Upstart здатний зафіксувати подію підключення до бездротової мережі (або мережі взагалі) і використовувати це як необхідну умову для запуску вашого сценарію.

Upstart вже використовується багатьма скриптами в Ubuntu і врешті-решт замінить усі скрипти для init System V під час завантаження.


5

Менеджер мережі виконує ВСІ Сценарії в каталозі /etc/NetworkManager/dispatcher.d/ (ті, що належать root, виконуються у виконанні, не читаються іншими користувачами та не встановлені).

Менеджер мережі встановлює і передає цьому сценарію змінні середовища. Вас зацікавить змінна середовище CONNECTION_UUID (містить унікальну рядок).

Отже, для вирішення вашої проблеми (виконайте сценарій, коли певна бездротова мережа підключена):

1) з’ясуйте uuid бездротового з'єднання, яке вас цікавить (заглянувши всередину відповідного файлу з'єднання в / etc / NetworkManager / system-connection / каталог).

2) написати bash (або perl, python, або будь-який інший) сценарій, який виконує те, що ви хочете, якщо змінна середовища CONNECTION_UUID відповідає сумісності з uuid бездротової мережі в (1) вище.

3) помістіть цей скрипт у /etc/NetworkManager/dispatcher.d/ та встановіть власника та дозволи довільно.

подальше читання: man networkmanager (і літ, що копається навколо сценаріїв у вищезгаданих каталогах).


На машині Natty, яка знаходиться на wi-fi, цей каталог порожній. Це залежить від версії системи?
nealmcb
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.