Есть ли способ запускать сценарий каждый раз, когда я подключаюсь к определенной беспроводной сети?

Существует определенная беспроводная сеть, к которой я подключаюсь, которая требует от меня использования vpnc для доступа в Интернет. Если я создаю сценарий для этого, есть ли способ настроить его, чтобы при каждом подключении к этой сети сценарий запускался? Чтобы было ясно, я не хочу, чтобы этот скрипт запускался с большинством беспроводных подключений, только с одним конкретным.

14
задан 24 September 2010 в 19:45

2 ответа

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

Upstart уже используется многими сценариями в Ubuntu и в конечном итоге заменит все сценарии инициализации System V во время загрузки.

0
ответ дан 24 September 2010 в 19:45

Network Manager запускает ВСЕ сценарии в каталоге /etc/NetworkManager/dispatcher.d/ (принадлежащие пользователю root, исполняемые, которые не читаются другими пользователями и не установлены).

Переменные среды устанавливаются и передаются в этот сценарий администратором сети. Вас заинтересует переменная окружения CONNECTION_UUID (содержит уникальную строку).

Итак, чтобы решить вашу проблему (выполнить скрипт, когда к определенной беспроводной сети подключено):

1) выяснить uuid беспроводного соединения, в котором вы заинтересованы (заглянув внутрь соответствующей файл подключения в каталоге / etc / NetworkManager / system-connections /).

2) написать сценарий bash (или perl, или python, или любой другой), который делает то, что вы хотите, если переменная окружения CONNECTION_UUID соответствует uuid беспроводной сети в (1) выше.

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

дальнейшее чтение: man networkmanager (и немного ковыряюсь в скриптах в каталогах, упомянутых выше).

0
ответ дан 24 September 2010 в 19:45

Другие вопросы по тегам:

Похожие вопросы: