Это продолжениемой старый вопрос:
Какой лучший способ заставить ядро запускать сетевой интерфейс только в том случае, если он физически подключен? Итак, если его нет, просто продолжайте инициализацию других интерфейсов (если таковые имеются) и переходите к экрану входа в систему, без задержки «ожидания конфигурации сети».
Решение, которое тогда пришло, было следующим в etc/network/interfaces
, оно работало в 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
К сожалению, он перестал работать после обновления до версии 14.04 Trusty Tahr.Если интерфейс физически отсутствует (т. е. карта USB WiFi отключена), я снова сталкиваюсь с двухминутной задержкой «ожидания конфигурации сети».
Как мне реализовать ту же логику в версии 14.04?
решение1
Для этого можно использовать upstart job. Вырвите разделы pre-up и up, затем создайте файл /etc/init/network-interface_wlan9.conf :
start on net-device-added INTERFACE=wlan9
task
exec ifup wlan9
решение2
Ну, allow-hotplug
вместо этого, auto
похоже, помогло.
allow-hotplug wlan9
iface wlan9 inet manual
...
У меня это не сработало в v12.04, задержка загрузки осталась. Видимо, я был не один такой:http://ubuntuforums.org/showthread.php?t=1905244