Existe uma maneira de executar um script sempre que eu me conectar a uma rede sem fio específica?


14

Existe uma rede sem fio específica à qual me conecto que exige que eu use o vpnc para acessar a Internet. Se eu criar um script para fazer isso, existe uma maneira de configurá-lo para que, sempre que eu conectar a esta rede, o script seja executado? Para deixar claro, não quero que esse script seja executado com a maioria das conexões sem fio, apenas uma específica.

Respostas:


6

Você pode usar o iniciante para isso. O Upstart pode capturar o evento de conexão com uma rede sem fio (ou uma rede em geral) e usá-la como pré-requisito para executar seu script.

O Upstart já é usado por muitos scripts no Ubuntu e, eventualmente, substituirá todos os scripts de inicialização do System V no momento da inicialização.


5

O Network Manager executa TODOS os scripts no diretório /etc/NetworkManager/dispatcher.d/ (aqueles de propriedade do root, que são executáveis, que não são legíveis por outros usuários e não configurados).

As variáveis ​​de ambiente são definidas e transmitidas para esse script pelo gerenciador de rede. Você estará interessado na variável de ambiente CONNECTION_UUID (contém uma sequência única).

Portanto, para resolver seu problema (execute um script quando uma rede sem fio específica estiver conectada):

1) descubra o uuid da conexão sem fio em que você está interessado (olhando dentro do arquivo de conexão apropriado no diretório / etc / NetworkManager / system-connections / system).

2) escreva um script bash (ou perl, ou python, ou o que for) que faça o que você deseja se a variável de ambiente CONNECTION_UUID corresponder ao uuid da rede sem fio em (1) acima.

3) coloque esse script em /etc/NetworkManager/dispatcher.d/ e defina o proprietário e as permissões adequadamente.

leitura adicional: man networkmanager (e um litte bisbilhotando os scripts nos diretórios mencionados acima).


Em uma máquina Natty que está com wi-fi, esse diretório está vazio. Isso depende da versão do sistema?
Nealmcb 18/05
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.