Идея udev в автонастройке. Без шаманства для обычного пользователя и ручной правки конфигов. И с таким же успехом можно было бы продолжать использовать devfs и kudzu.
У любых прравил бывают исклюения. И сетевые карты - это именно те исключения.
Аппаратно существует и может существовать, только один адаптер этого типа:
# NETWORK=$(lspci -nn | grep Network | awk '{print $1}'); \
> NETW_PATH=$(find /sys -type d -name "*$NETWORK*"); \
> grep . $NETW_PATH/{uevent,net/*/uevent}
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/uevent:DRIVER=rtl8723be
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/uevent:PCI_CLASS=28000
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/uevent:PCI_ID=10EC:B723
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/uevent:PCI_SUBSYS_ID=17AA:B736
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/uevent:PCI_SLOT_NAME=0000:03:00.0
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/uevent:MODALIAS=pci:v000010ECd0000B723sv000017AAsd0000B736bc02sc80i00
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/net/wlan0/uevent:DEVTYPE=wlan
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/net/wlan0/uevent:INTERFACE=wlan0
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/net/wlan0/uevent:IFINDEX=3
А сие означает:
- Независимо от количества смен адаптера, ни при каких условиях, wlanN не должен быть больше нуля.
И ни при каких условиях, при условии что аппаратно адаптер может быть только один, N не должен расти. При этих условиях, интерфейс
должен обязан быть всегда wlan0. Не wlan1, не wlan2, - wlan0. И нет никакого смысла, для аппаратно несуществующих адаптеров, коллекционировать правила в persistent-net.rules. После каждой замены адаптера, повышая N интерфейса. Рост N, это ошибка в алгоритме.