相关:
- Debian 12 - 突然间,我的 USB3 Lan 适配器每次重新启动时都会分配随机 MAC 地址
- 在 UDEV 配置中使用父属性“serial”为 lan 接口分配另一个名称,而不是依赖于 MAC 地址
提供的第二个解决方案的问题是,某些 USB3 NIC 由于某些奇怪的原因共享相同的内容ATTR{系列}所以我重命名此接口的最后手段是 USB 路径。
因为所连接的 NIC 始终位于 USB3 集线器上的相同位置和位置,所以使用 USB 路径来识别和重命名接口可能很有用。
lsusb
说:
...
Bus 002 Device 006: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 005: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 010: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 009: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 008: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 007: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
...
遗憾的是,与往常一样,应该直观的事情并没有按照预期的方式工作。
我发现我的接口都在总线2上并且有各种开发编号从 5 到 10
所以我尝试使用这样的命令:
SUBSYSTEM="net", ACTION="add", DRIVERS="?*", ATTRS{busnum}="2", ATTRS{devnum}="5", ATTR{dev_id}="0x0", ATTR{type}="1", KERNEL="eth*", NAME="lan1"
但这不起作用。
也与此使用内核位于 KERNELS="2-3:1.0" 的设备上的路径:
SUBSYSTEM="net", ACTION="add", DRIVERS="?*", KERNELS="2-3:1.0", ATTR{dev_id}="0x0", ATTR{type}="1", KERNEL="eth*", NAME="lan1"
但什么也没有,接口没有重命名......
为什么这个规则不起作用?
答案1
发现问题,这是一个语法错误,如 @AB 所说,基本上我使用 = 而不是 == 来赋值,而不是读取和比较内容。
通过使用 == 作为运算符,一切正常。