Я пытаюсь написать "универсальное" правило udev для назначения имени интерфейса моей карте NIC.
Для конкретного приложения мне требуется возможность загрузить безголовый сервер, где сетевой адаптер может быть изменен в любой момент. Однако, Марка и модель NIC останутся прежними.
поэтому я атаковал проблему, пытаясь написать общее правило udev, которое будет назначать требуемое имя (которое впоследствии будет сопоставлено с определенными статическими сетевыми настройками) для любого сетевого адаптера, соответствующего Vednor и ID модели. мой вывод udevadm:
micromass@ComExATE:/sbin> sudo ./udevadm info --attribute-walk --query=all --pat h=/sys/class/net/eth4
P: /devices/pci0000:00/0000:00:1c.5/0000:05:00.0/net/eth4
E: UDEV_LOG=3
E: DEVPATH=/devices/pci0000:00/0000:00:1c.5/0000:05:00.0/net/eth4
E: INTERFACE=eth4
E: IFINDEX=2
E: SUBSYSTEM=net
E: ID_VENDOR_FROM_DATABASE=Broadcom Corporation
E: ID_MODEL_FROM_DATABASE=NetXtreme BCM5761 Gigabit Ethernet PCIe
E: ID_BUS=pci
E: ID_VENDOR_ID=0x14e4
E: ID_MODEL_ID=0x1681
так что мое правило выглядело так:
SUBSYSTEM=="net", ACTION=="add", ATTR{IDVENDOR_ID}=="0x14e4", ATTR{ID_MODEL_ID}=="0x1681", NAME="my-device"
Однако не повезло. поэтому я попробовал что-то немного проще и решил сопоставить первые 3 набора MAC-адреса (которые назначены поставщику)
SUBSYSTEM=="net", ACTION=="add", ADDRESS=="00:30:64??:??:??", NAME="my-device"
Все еще не повезло. я не могу изменить эти правила, чтобы добавить символические ссылки вместо переименования.
Не уверен, куда идти отсюда, поэтому любая помощь будет отличной.