LINUX.ORG.RU

Мы дадим вам enp1s0, говорили они, имена интерфейсов зафиксируются, говорили они

 


1

6

А потом втыкаешь видеокарту и enp1s0 становится enp2s0, и всё равно всё ломается.

Ну и. Ради чего? Всю жизнь жил с net.ifnames=0 в CONFIG_CMDLINE и дальше буду жить.

★★★★★
Ответ на: комментарий от anonymous

и где тут «убрать возможность иметь названия ethN»?

Именно тут. Вот именно этот набор правил не сработает.

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

потому что как всегда ты «слышал звон, да не знаешь где он».

Нет, потому что вас, фанатиков, бесполезно убеждать в очевидном. :-)
На вот: https://bugs.freedesktop.org/show_bug.cgi?id=53837

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)

А потом втыкаешь видеокарту и enp1s0 становится enp2s0

Это, кстати, ещё что... Бывает, что обновления ядра достаточно, чтобы какой-нибудь enp2s0f0 превратился в ens2f0.

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

На вот: https://bugs.freedesktop.org/show_bug.cgi?id=53837

Да. Цикл «а давай попробуем, авось получится» со слипами - это безусловно отличное техническое решение. Жаль убрали такой хороший образец качественного кода 8).

И кстати, вот ты тут горишь от того, что тебе не дают переименовывать интерфейсы в ethN. А можно мне так же гореть от того, что старый код ломался, если юзер хотел переименовать в renameN?

Deleted
()
Ответ на: комментарий от ya-betmen

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

Я админ, который может такие вещи чинить при помощи рук и головы.

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

А в болезнях, как известно, виноваты врачи.

t184256 ★★★★★
()
Ответ на: комментарий от ya-betmen

Может ему везло с другими, а сам он сразу придерживался практики переименования? Че за детсадовская агрессия?

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

А поясни, пожалуйста, для кого?

У нас достаточно большой енв (пару тысяч хостов), разворачивается через кобблер и все образы имеют опцию для стандартного названия интерфейсов.

Я не могу найти применение этой киллер-фичи.

А тут и не нужны тысячи хостов. Достаточно на самом деле одного.

Дано: сервер заранее известной модели. Одна штука. Его конфигурация заранее известна с точностью до всех установленных устройств и версий их прошивок. На сервере две сетевые карты. Они всегда подключены в разные сети, требующие разных настроек. Мы всегда знаем, что левая eth-дырка на корпусе сервера всегда подключена в сеть A, а правая - в сеть B.

Задача: сделать автоматически разворачиваемый дистрибутив линукса с хитрым софтом, который с этими сетями будет как-то хитро работать. Разворачиваться он должен без участия человека вообще. Тебе для тестов могут дать второй точно такой же сервер.

Твои действия: ?

P.S. Да, я знаю что это всё решается udev'ом, или даже ворохом шелл-скриптов. Но это будет точно то же самое, что уже делает systemd. И просто не вижу никакого практического смысла в переизобретении того же велосипеда ещё один раз. Только ценой своего времени и плюсом с новыми потенциальными багами.

Deleted
()

Тоже хочу таких приключений, пойду включу net.ifnames=1 и отключу persistent-net-generator.

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

Но это будет точно то же самое, что уже делает systemd. И просто не вижу никакого практического смысла в переизобретении того же велосипеда ещё один раз.

Только вот всё работало и без системд.

anon8
()
Ответ на: комментарий от t184256

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

Конечно если всю жизнь раскатывать мускуль+пых то на такое не наткнешься.

ya-betmen ★★★★★
()
Ответ на: комментарий от AS

это плохо - убрать возможность иметь названия ethN. Что тут непонятного?

Непонятно тут то, как такой «крутой админ», как ты, не осилил в параметры ядра добавить net.ifnames=0.

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

как ты, не осилил в параметры ядра добавить net.ifnames=0.

А как бы это помогло? Ну да, я увидел бы ethN, только вот как часто на своих местах?

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

ломать существующие системы с существующими конфигами таким образом - это плохо.

В том и дело.

AS ★★★★★
()
Ответ на: комментарий от ya-betmen

можно отказываться от использования на основании того что оно прибито к имени интерфейса.

А можно конфиг поправить? Что за хардкод ты там обсуждаешь, неучам вроде нас неизвестный?

t184256 ★★★★★
()
Ответ на: комментарий от i-rinat

Вот у тебя каша в голове...

Ты, лучше, вчитайся, можешь сразу в баг, и посмотри, что он как WONTFIX закрыт, а не NOTABUG. Или просто попробуй вариант с тремя eth, что я выше привёл с udev без отката того изменения.

AS ★★★★★
()

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
***

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
***

Как сидел на староверном eth* так и сижу. Персистент неймс во все поля.

Deleted
()

мне предлагали по маку уже фиксировать))

darkenshvein ★★★★★
()

а когда говорили, что имена интерфейсов зафиксируются?

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

Примерно так всё и есть - есть UCS разные (от старья до новых) и разворачивается всё атоматически, нужно только включить загрузку по сети да МАС-адрес вбить в коблер. ОС инсталлит он же, после отрабатывает папет.

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

Но идею понял, спасибо.

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

Давным-давно, несколько лет назад сделано было

touch /etc/udev/rules.d/80-net-name-slot.rules

Стоит

[I] sys-fs/eudev
     Доступные версии:      3.2.5{tbz2} ~3.2.6 ~3.2.7 **4.9999 **9999 {+blkid efi +hwdb introspection +kmod rule-generator selinux smack static-libs test ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32" KERNEL="linux"}
     Установленные версии:  3.2.5{tbz2}(04:30:04 02.01.2019)(hwdb introspection kmod -rule-generator -selinux -static-libs -test ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="32 64 -x32" KERNEL="linux")
     Домашняя страница:     https://github.com/gentoo/eudev
     Описание:              Linux dynamic and persistent device naming support (aka userspace devfs)

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

У тебя там в условии стоит имя интерфейса eth*. Очевидно, после переименования имена меняются. (Вот неожиданность-то!)

i-rinat ★★★★★
()
Последнее исправление: i-rinat (всего исправлений: 1)

А потом втыкаешь видеокарту и enp1s0 становится enp2s0

Не обязательно видеокарту, любую pci-e железку достаточно воткнуть и сеть сдвигается. А идиотский netplan с идиотским yaml - апофеоз школьных поделок.

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

Очевидно, после переименования имена меняются. (Вот неожиданность-то!)

Блин, да не переименовывается оно. Точнее как повезёт. Ровно из-за того, что целевое имя eth<N> может быть занято, а код переименования через временное имя выкинули.

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

Для тех, кому надо автоматически разворачивать одинаковые сервера с >1 сетевым интерфейсом.

А почему бы тем, кому надо автоматически разворачивать одинаковые сервера с >1 сетевым интерфейсом, один раз не накатить себе этот ваш системдэ? Сервера-то одинаковые, заталкивать системдэ всем подряд незачем.

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

Точнее как повезёт.

Так ведь ты этого и хотел, разве нет?

а код переименования через временное имя выкинули.

Ну ok, пойду гляну на этот код...

(https://github.com/systemd/systemd/commit/97595710b77aa162ca5e20da57d0a1ed735...)

Мда... С какого перепоя этот код вообще добавляли? Вот уж воистину, какой бы ужасный код не удаляли, найдётся чудак, который захочет его обратно.

i-rinat ★★★★★
()
Ответ на: комментарий от h578b1bde

Ещё один с альтернативным неадекватному мышлением.

Ну я же говорил. Ты же понимаешь, что альтернативное неадекватному не обязательно адекватное? Это простая логика, отрицание утверждений.

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

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

Ну я же говорил. Ты же понимаешь, что альтернативное неадекватному не обязательно адекватное?

И в чём заключается его неадекватность ты решил не объяснять, ограничившись навешиванием ярлычков. А потом что-то начал вещать за конструктив, ага.

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

А что тут объяснять? Есть какой-то узкий юзкейс, есть решения (и необязательно в качестве решения должен быть системдэ). Ломание всего и у всех ради этого узкого юзкейса — это и есть лютый неадекват.

h578b1bde ★☆
()
Последнее исправление: h578b1bde (всего исправлений: 1)
Ответ на: комментарий от i-rinat

Так ведь ты этого и хотел, разве нет?

Нет. Я бы хотел, чтобы у меня были eth с 0 по N. И чтобы внезапно некоторые из них не пропадали с возгласом «ура, мы починили, вы теперь будете жить хорошо».

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

И в чём заключается его неадекватность ты решил не объяснять

Ты написал:

А почему бы тем, кому надо автоматически разворачивать одинаковые сервера с >1 сетевым интерфейсом, один раз не накатить себе этот ваш системдэ? Сервера-то одинаковые, заталкивать системдэ всем подряд незачем.

Суждение бредовое. Предлагаешь мне объяснять, в чём бредовость? Может, ты вместо этого попытаешься сам понять, что предлагаешь?

А что тут объяснять?

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

i-rinat ★★★★★
()
Ответ на: комментарий от anonymous

Переменные в скриптах тоже все называешь var1..var666?

Я потом в скриптах переменные не обрабатываю другими скриптами.

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

Я бы хотел, чтобы у меня были eth с 0 по N.

Так выключаешь эту фичу udev, и у тебя eth c 0 по N. Только порядок случайный.

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

Суждение бредовое. Предлагаешь мне объяснять, в чём бредовость? Может, ты вместо этого попытаешься сам понять, что предлагаешь?

Бредовость — это сломать всё ради устранения фатального недостатка, которое всё равно не работает.

h578b1bde ★☆
()
Ответ на: комментарий от i-rinat

Только порядок случайный.

А кого может устраивать случайный порядок? Вариант «Русской рулетки» на компе устраивать? :-) Плюс напоминаю, раньше-то работало хорошо.

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

Плюс напоминаю, раньше-то работало хорошо.

Плохо работало. Скрипты, напоминаю, запоминали порядок, замеченный первым. Этот порядок мог быть разным от машины к машине, даже если машины одинаковые.

А что касается удалённого кода... Ты можешь доказать, что он гарантирует работу в любой ситуации? Есть ли гарантии, что там не случится live-lock?

i-rinat ★★★★★
()
Ответ на: комментарий от h578b1bde

Бредовость — это сломать всё ради устранения фатального недостатка, которое всё равно не работает.

И... ты съехал с вопроса, который поднял. Не думаю, что есть смысл продолжать обсуждение дальше, ты явно своё предложение разъяснять не собираешься.

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

Этот порядок мог быть разным от машины к машине, даже если машины одинаковые.

А каким таким хитропопым образом он мог быть разным? Где-то засунули генератор случайных числ или как?

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