Como abrir uma interface de rede somente se estiver fisicamente presente no Ubuntu 14.04?

1

Este é um follow-up na minha velha pergunta :

  

Qual seria a melhor maneira de fazer o kernel trazer uma interface de rede   somente se estiver fisicamente conectado? Então, se não existe, apenas   prosseguir com a inicialização de outras interfaces (se houver) e continuar   a tela de login, sem atrasar a "configuração de rede".

A solução que surgiu então foi a seguinte em etc/network/interfaces , ela costumava trabalhar em 12.04:

auto wlan9
iface wlan9 inet manual
        wpa-ssid MYSSD
        wpa-psk MYKEY
        wpa-proto RSN
        wpa-pairwise CCMP
        wpa-group CCMP
        wireless-power off
        pre-up if [ -f /sys/class/net/wlan9/operstate ]; then ifconfig wlan9 up; fi
        up if [ -f /sys/class/net/wlan9/operstate ]; then dhclient wlan9; fi

Infelizmente, parou de funcionar assim que atualizei para 14.04 Trusty Tahr. Se a interface estiver fisicamente ausente (ou seja, a placa USB desconectada da tomada), experimente novamente os 2 minutos "aguardando configuração de rede" atraso.

Como posso obter a mesma lógica trabalhando em 14.04?

    
por noseratio 29.06.2014 / 04:14

2 respostas

2

Você pode usar um trabalho iniciante para isso. Rip out as seções pre-up e up e então faça um arquivo /etc/init/network-interface_wlan9.conf:

start on net-device-added INTERFACE=wlan9
task
exec ifup wlan9
    
por CameronNemo 29.06.2014 / 13:40
2

Bem, allow-hotplug em vez de auto parece ter ajudado.

allow-hotplug wlan9
iface wlan9 inet manual
...

Isso não funcionou para mim na v12.04, o atraso de inicialização ainda estava lá. Aparentemente, eu não era o único: link

    
por noseratio 29.06.2014 / 14:43