LINUX.ORG.RU
ФорумTalks

Попрощаемся с eth*

 , ,


1

1

Сегодня обновился udev до версии 200. С этой версии из systemd/udev удалён функционал переименования ядерных интерфейсов eth в eth же. По факту это означает, что привязать сетевухи по макам и оставить их имена eth* более невозможно. Как результат придётся отвыкать от привычных имён.

В качестве причины называется:

«The biggest of all however is that the userspace components trying to assign the interface name raced against the kernel assigning new names from the same „ethX“ namespace, a race condition with all kinds of weird effects, among them that assignment of names sometimes failed. As a result support for this has been removed from systemd/udev a while back.»

http://wiki.gentoo.org/wiki/Udev/upgrade

За 6 лет достаточно активно использовал переименования интерфейсов, никаких «weird effects» не видел ни разу. И никаких проблем с назначением кастомных имён тоже не было.

Вывод: я понимаю, прогресс, все дела. Но перечитывать тонну скриптов и ковыряться с двумя десятками серверов ради этого... Кажется, здесь есть дисбаланс, господа. Будьте готовы.

★★

Но перечитывать тонну скриптов и ковыряться с двумя десятками серверов ради этого...

не надо было ставить на сервера всякие генты/федоры. ССЗБ.

drBatty ★★
()
Ответ на: комментарий от drBatty

не надо было ставить на сервера всякие генты/федоры. ССЗБ.

Ой, оляля, можно подумать, что в других диструбутивх не грядет тоже самое.

tazhate ★★★★★
()
Ответ на: комментарий от drBatty

А чо ты такой дерзкий?
Как не надо?
А клиента подоить?
А Ъ-кулькакерность?

Да ну, ЧСВ свое только портить!

Deleted
()

По факту это означает, что привязать сетевухи по макам и оставить их имена eth* более невозможно.

И правильно. А зачем, вообще, так делать?

Axon ★★★★★
()

что-то как-то в wiki не полноценно описаны возможности. Как я понял:

1). можно использовать кастомные имена

2). можно использовать старые имена если нету коллизий, напр. сетки в разных пространствах имет

Сам пока на новый udev не перелезал жду пока утрясется и задокументируют возможности нормально.

http://blog.flameeyes.eu/2013/03/predictably-non-persistent-names#gsc.tab=0

http://blog.flameeyes.eu/2013/03/predictable-persistently-non-mnemonic-names#...

qnikst ★★★★★
()
Ответ на: комментарий от Deleted

в rhel уже давно так и на это все кому не лень ссылаются, нет?

qnikst ★★★★★
()

«Разрушайте, разрушайте до основания его».

IPR ★★★★★
()

тлен, доска! кай запрещает складывать из льдинок ж***

Thero ★★★★★
()
Ответ на: комментарий от tazhate

Ой, оляля, можно подумать, что в других диструбутивх не грядет тоже самое.

посмотрим. А зачем такую свинью подкладывать в других дистрах?

drBatty ★★
()

О великий Фабио, хоть ты не поддавайся Поттерингу! Спаси нас!

necroposter
()
Ответ на: комментарий от xorik

$ sudo ifconfig | head -n1
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

$ eix -e sys-fs/udev | grep Install
Installed versions: 200^t(16:02:12 01.04.2013)(acl firmware-loader gudev hwdb introspection keymap kmod openrc -doc -selinux -static-libs)

xorik ★★★★★
()
Ответ на: комментарий от Deleted

Как не надо?

а зачем это вообще нужно? У кого-то проблемы с гонками? Пусть решают. Кстати, а на ЛОРе кто-то эти гонки видел? В том смысле, что я например видел, решаются они сами, искароппки, привязкой к MAC'у. Без всяких переименований. В systemd не решаются? Значет проблема в systemd.

drBatty ★★
()
Ответ на: комментарий от Axon

я где-то писал, что раньше было нельзя? Ну и не «нужно», а возможно нужно. А вот категоричные арчеводы^Wпользователи точно не нужны.

qnikst ★★★★★
()
Ответ на: комментарий от drBatty

сегодня увидал сервак под 6.4 центосью:

# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: p8p1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000

leave ★★★★★
()
Ответ на: комментарий от qnikst

Ну и не «нужно», а возможно нужно.

Что это значит?

А вот категоричные арчеводы^Wпользователи точно не нужны.

Вы меня не поняли. Во-первых, я не люблю systemd. Во-вторых, по моему мнению, «predictable» interface names - полный идиотизм. Но и вой на тему «ЗЛОЙ ПОТТЕРИНГ ОТБИРАЕТ У МЕНЯ МОЙ eth0, ВОТ ЖЕ ГАД!!!!!1111», мягко говоря, раздут и необоснован.

Axon ★★★★★
()
Ответ на: комментарий от leave

сегодня увидал сервак под 6.4 центосью:

там один интерфейс? ну и какие проблемы?

Какие могут быть «гонки» с одним eth? Да и конфиги можно быстренько sed -i 's/\<eth0\>/p8p1/g' прогнать. Это не страшно.

drBatty ★★
()

По ссылке написано, что echo | tee /etc/udev/rules.d/80-net-name-slot.rules продолжает отключать «предсказуемые имена».
Т.е. проблема в том, что сами по себе «предсказуемые имена» не могут теперь выглядеть как ethN, wlanN и пр.?

Darth_Revan ★★★★★
()
Последнее исправление: Darth_Revan (всего исправлений: 2)
Ответ на: комментарий от Axon

Что это значит?

в очень большом числе конфигураций, ни predictable ни custom имена сетевых устройств не нужны, в эту категорию сразу попадают десктопы и ноуты. Для серверов или устройств со сложной структурой сети удобны custom names.

наример, меня на ноуте устраивает дефолтный (<udev-200) вариант:

1: lo:
2: eth0:
3: wlan0:
4: br0:
6: virbr0:
7: virbr0-nic:
10: tunlxcghc74:
12: vethEQ4746:
13: vethdtj4Fy:
15: vethiytgKQ:
17: tun0:
19: vethjmXm49:

Вы меня не поняли. Во-первых, я не люблю systemd. Во-вторых, по моему мнению, «predictable» interface names - полный идиотизм. Но и вой на тему «ЗЛОЙ ПОТТЕРИНГ ОТБИРАЕТ У МЕНЯ МОЙ eth0, ВОТ ЖЕ ГАД!!!!!1111», мягко говоря, раздут и необоснован.

в треде тема systemd поднималась только drBatty, но она не релеватна проблеме. Вообще тема неточна, щас в новостях (системы портаж) должна быть корректная новость со всеми возможностями, где описывается и как сохранить eth0 и перейти к другим вариантам.

qnikst ★★★★★
()
Ответ на: комментарий от drBatty

посмотрим. А зачем такую свинью подкладывать в других дистрах?

Не считаю это свиньей.

Stable interface names across reboots
Stable interface names even when hardware is added or removed, i.e. no re-enumeration takes place
Stable interface names when kernels or drivers are updated/changed
Stable interface names even if you have to replace broken ethernet cards by new ones

А вот это мега круто, а то задолбало уже.
Кстати, нормальные люди, прежде чем апдейтить продакшн, ЧИТАЮТ ЧЕЙНДЖЛОГ, а кто так не делает - тот ссзб и должен быть уволен немедленно.

tazhate ★★★★★
()

За 6 лет достаточно активно использовал переименования интерфейсов,

Раз постоянно их переименовывал, то не переломишься, если еще раз переименуют. Или что ты имеешь в виду под «активно использовал»?

никаких «weird effects» не видел ни разу. И никаких проблем с назначением кастомных имён тоже не было.

Я тебя тоже никогда не видел - ты не существуешь. А раз ты не существуешь, то какое дело разработчикам до твоего мнения?

plm ★★★★★
()

tazhate, Pinkbyte а давайте ради интересу перенесите эту тему в Admin/Desktop ибо релеватно, и радостоно порежте левые (не содержащие обоснования почему это релеватно) комментарии про systemd по 4.2 хотя бы с (0). А то достало ненужные флеймы читать.

qnikst ★★★★★
()

Будьте готовы.

Уже готов. Перешел на mdev.

devl547 ★★★★★
()
Ответ на: комментарий от qnikst

Новость есть, в ней описаны разные варианты миграции, но, как я понял, при желании оставить имена, аналогичные ядерным, остаётся только отключить новомодные «улучшения». _Пока_ это действительно возможно.

Впрочем, сейчас, как ни странно, удалось стандартным 70-persistent-net.rules дубово привязать по макам обратно на eth* и забыть на время о _значительно_более_удобных_ eno*.

Stage1 ★★
() автор топика

С этой версии из systemd/udev удалён функционал переименования ядерных интерфейсов eth в eth же.

Можно продолжать именовать. Просто напиши свой rule для udev или скопируй /etc/udev/rules.d/70-persistent-net.rules из старого пакета.

Vovka-Korovka ★★★★★
()
Ответ на: комментарий от qnikst

существует отличная от 0 какая-то вероятность, что генторазрабочтики его видели.

Определенно. С этим я и не спорю - я лишь хочу продемонстрировать абсурдность аргументации systemd-фобов в стиле «не видел, мне не нужно».

plm ★★★★★
()

по ссылке что вы привели

If you don't have /etc/udev/rules.d/80-net-name-slot.rules as empty file with only comments inside of it, or if it isn't a symlink to /dev/null, or if you didn't disable with kernel commandline net.ifnames= you will get the new Predictable Network Interface Names by default.

что в переводе значит что либо ты создаёшь пустой /etc/udev/rules.d/80-net-name-slot.rules или отключаешь через параметры ядра или получаешь Predictable Network Interface Names by default

что кагбы означает что ничего не запретили и читать надо внимательнее. и да ЕМНИП эта фича включена ещё в удев 187 была.

и да закопать етц надо было уже 2 месяца назад.

ну и всё расходимся.

Thero ★★★★★
()
Последнее исправление: Thero (всего исправлений: 1)
Ответ на: комментарий от tazhate

Stable interface names across reboots

Никогда небыло, автоматом вяжется по макам.

Stable interface names even when hardware is added or removed, i.e. no re-enumeration takes place

См. пункт 1.

Stable interface names when kernels or drivers are updated/changed

C 2.6.16 до 3.8.5 не видел ни разу. Может и бывало когда-то.

Stable interface names even if you have to replace broken ethernet cards by new ones

Привязываешь новый мак на старое имя. Нет проблем.

А как, кстати, новая система поймёт, что новая сетевуха вставлена взамен вытащенной и должна иметь имя прежней?

Сударь, кто же продакшн сразу обновляет? Ковыряю тестовый сервак.

Stage1 ★★
() автор топика
Последнее исправление: Stage1 (всего исправлений: 1)
Ответ на: комментарий от Stage1

Новость есть, в ней описаны разные варианты миграции, но, как я понял, при желании оставить имена, аналогичные ядерным, остаётся только отключить новомодные «улучшения».

оставить старые или кастомные имена можно отключением predictable-names, а не всех новомодных улучшений. При этом те кому это нужно могут использовать predictable-names.

_Пока_ это действительно возможно.

это будет возможно всегда, пока можно переименовывать устройства, и врятли когда либо эту возможность отключат.

Впрочем, сейчас, как ни странно, удалось стандартным 70-persistent-net.rules дубово привязать по макам обратно на eth* и забыть на время о _значительно_более_удобных_ eno*.

это не странно так как переименование устройств не отключено, насколько я понимаю выпилено/будет выпелен алгоритм решения конфликтов, который фейлит в каких-то ситуациях и усложняет решение. Т.е. если в пространстве eth* будут конфиликты, то udev ничерта не переименует, пока конфликтов нет использовать eth/wlan никто не запрещает.

qnikst ★★★★★
()

Теперь ясно, почему на одном из хостов вчера пропал eth0 и появился eno1 при том, что eth1 как был, так и остался, несмотря на почти идентичные чипы. Неприятно.

backbone ★★★★★
()
Ответ на: комментарий от Stage1

он строит имена относительно порта пси тоесть воткнутые в первый пси сетевухи будут именоваться одинаково.

Thero ★★★★★
()
Последнее исправление: Thero (всего исправлений: 1)
Ответ на: комментарий от tazhate

Stable interface names across reboots

Stable interface names even when hardware is added or removed, i.e. no re-enumeration takes place

Stable interface names when kernels or drivers are updated/changed

Stable interface names even if you have to replace broken ethernet cards by new ones

только последний пункт с ethX не работал. Кстати, а как ваш новый удав узнает, что новая карта теперь должна называться как «четвёртая слева вчера сгоревшая»? Через libastral.so?

Кстати, нормальные люди, прежде чем апдейтить продакшн, ЧИТАЮТ ЧЕЙНДЖЛОГ, а кто так не делает - тот ссзб и должен быть уволен немедленно.

с этим я не спорил. читать надо конечно, вот только необходимость найти и исправить все конфиги с ethX это не отменяет. На боевом сервере это будет не очень удобно.

drBatty ★★
()
Ответ на: комментарий от drBatty

он их именует как карточка воткнутая в 4 слот пси. вотыкай новую в 4 слот где была сгоревшая и всё. лень править скрипты пользуйся своими именами-алиасами.

Thero ★★★★★
()

Сегодня обновился udev до версии 200

# grep udev /etc/portage/package.mask
=sys-fs/udev-200

Я отложил. Ненавижу обновления.

record ★★★★★
()
Последнее исправление: record (всего исправлений: 1)
Ответ на: комментарий от Thero

он их именует как карточка воткнутая в 4 слот пси.

ну а толку? а если я мамку заменил? А если я в 4й слот что-то другое воткнул?

лень править скрипты пользуйся своими именами-алиасами.

тогда о чём вой вселенский? Автор заголовка соврал?

drBatty ★★
()
Ответ на: комментарий от Rastafarra

в нормальных операционках такого нет.

Это в которых подключения называются типа «Подключение по локальной сети *»?

Ttt ☆☆☆☆☆
()

Я великий линуксоид и админ локалхоста! За все мое долгое 3-х месячное знакомство с линуксами я ни разу не сталкивался с проблемами переименования сетевых интерфейсов, а значит поттеринг — лох и системд маст дай!

morse ★★★★★
()

я понимаю, прогресс

Прогресс - это когда возможности (выбора) увеличиваются, а не уменьшаются.

record ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.