Привет. Ниже находятся мои соображения по поводу порядка инициализации сетевых интерфейсов после споров по поводу бага #4332. Факты и требования таковы: (1) hotplug находит не все устройства (2) hotplug обязательно должен запускать ifup для сетевых интерфейсов (3) запуск hotplug безусловен (4) решение проблемы должно работать с уже имеющимися ifcfg-* (5) /etc/init.d/network сейчас отключает hotplug во время поднятия интерфейсов Отсюда следует, что (6) запуск /etc/init.d/network также обязателен из-за (1) Из (2) и (3) следует, что для интерфейсов, которые hotplug сможет обнаружить, ifup будет запущен 2 раза. Если убрать (5), то ifup будет запускаться 2 раза и для тех интерфейсов, которые hotplug обнаружить не смог, но обрабатывать хочет (эти два утверждения относятся к интерфейсам с ONBOOT=yes). Из практического опыта ясно, что (7) флаг ONBOOT выводить из обращения нельзя Принимая в расчёт то, что hotplug должен работать с PCI-устройствами, выключать эту поддержку нельзя. Отсюда вырисовывается вопрос: обязательно ли ifup должен отрабатывать, если он вызван из hotplug (это можно определить по переменной IN_HOTPLUG)? Я думаю, что по умолчанию не должен. Но должен быть способ заставить его это делать. Что у нас получается: 1. с имеющимися ifcfg-* ifup будет игнорировать вызов из hotplug 2. если в ifcfg-* имеется переменная USE_HOTPLUG=yes, то вызов будет отработан 3. USE_HOTPLUG=yes подразумевает ONBOOT=no 4. PCMCIA-интерфейсы работать по умолчанию не будут, но это не так страшно, потому что для них всё равно нужно создавать ifcfg-*, который сразу можно создать правильным 5. блокировать работу hotplug /etc/init.d/network больше не будет Это реализуется приложенным небольшим патчем. Заинтересованным разработчикам просьба проверить на машине с PCMCIA ethernet и USB mouse (скорее всего это ноутбук).