Bug 22299 - не отрабатывает случай не-eth*
Summary: не отрабатывает случай не-eth*
Status: CLOSED WONTFIX
Alias: None
Product: Sisyphus
Classification: Development
Component: udev-rule-generator (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Sergey Y. Afonin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-11-16 11:24 MSK by Michael Shigorin
Modified: 2009-12-18 20:42 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Shigorin 2009-11-16 11:24:44 MSK
home:~> rpm -q udev-rule-generator
udev-rule-generator-141-alt11

home:~> cat /etc/iftab
ext     mac 00:02:44:6b:77:0e
int     mac 00:0f:ea:60:a0:3a

home:~> cat /etc/udev/rules.d/70-persistent-net.rules\~\~broken\~\~

# Firewire device )
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0f:ea:00:00:60:c6:e6", ATTR{type}=="24", KERNEL=="eth*", NAME="eth2"

# Firewire device )
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="4d:5a:90:00:03:00:00:00", ATTR{type}=="24", KERNEL=="eth*", NAME="eth1"
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x10de:0x0269 (forcedeth)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0f:ea:60:a0:3a", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x10ec:0x8139 (8139too)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:02:44:6b:77:0e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
Comment 1 Michael Shigorin 2009-11-16 11:47:08 MSK
В typescript от dist-upgrade пока никакого соответствующего stderr не нахожу.  Вернуть/убрать 70-persistent-net.rules и сделать руками
udevadm trigger --subsystem-match=net ?

Да, желаемый результат (был доправлен вручную, но вследствие использования только mac binding ожидалось нормальное автоконвертирование):

### firewire без разницы

# PCI device 0x10de:0x0269 (forcedeth)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0f:ea:60:a0:3a", ATTR{type}=="1", KERNEL=="eth*", NAME="int"

# PCI device 0x10ec:0x8139 (8139too)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:02:44:6b:77:0e", ATTR{type}=="1", KERNEL=="eth*", NAME="ext"
Comment 2 Valery Inozemtsev 2009-11-16 12:24:50 MSK
причем тут /etc/iftab? используй либо 70-persistent-net.rules, либо ifrename
Comment 3 Sergey Vlasov 2009-11-16 12:34:11 MSK
(В ответ на комментарий №2)
> причем тут /etc/iftab? используй либо 70-persistent-net.rules, либо ifrename
При установке пакета выполняется автоматическое преобразование iftab в 70-persistent-net.rules, но сейчас оно работает только для случая, когда в iftab интерфейсы переименовываются без смены базового имени (т.е., ethN -> ethN с указанием только нового номера).

Тут проблема в том, что для правил в 70-persistent-net.rules, кроме всего прочего, нужна информация об изначальном имени интерфейса (для проверок вида KERNEL=="eth*", необходимых для правильной обработки извращений типа wlan*+wmaster* с одинаковым адресом), а при установке пакета с уже переименованными интерфейсами эта информация уже потеряна.

Возможный вариант обхода (правда, опять в виде полной переделки того, что есть): выполнять преобразование не в момент установки пакета, а при первой перезагрузке после установки.
Comment 4 Valery Inozemtsev 2009-12-18 19:38:44 MSK
см. #3
Comment 5 Michael Shigorin 2009-12-18 20:34:54 MSK
Валер, это называется не "NOTABUG", а "LATER".  Или "WONTFIX".

Бага -- есть.
Comment 6 Valery Inozemtsev 2009-12-18 20:42:34 MSK
я так не считаю