Existe uma maneira de iniciar um script bash após a inicialização somente quando wlan0 está conectado

2

Eu quero começar um script bash no Ubuntu após a inicialização. Mas o script deve ser executado primeiro depois que o dispositivo wlan0 estiver conectado ao meu wifi.

Como posso conseguir isso?

    
por NES 04.12.2010 / 11:32

2 respostas

3

Eu começaria na inicialização e esperaria até o wlan0 estar conectado. Você pode verificar isso via

#!/bin/bash

while true; do
    # testing...
    LC_ALL=C nmcli -t -f DEVICE,STATE dev | grep -q "^wlan0:connected$"
    if [ $? -eq 0 ]; then
        break
    else
        # not connected, sleeping for a second
        sleep 1
    fi
done

# now connected, run the script
    
por htorque 04.12.2010 / 11:54
6

No Ubuntu você pode usar o upstart para isso. Salve o seguinte como /etc/init/yourscript.conf

start on net-device-up wlan0

exec  your_script
    
por Florian Diesch 04.12.2010 / 12:48