« Отговор #119 -: Oct 10, 2014, 10:15 »
Някой беше споменал, че UDEV се траел (не се сещам кой беше, просто треда стана много дълъг). Та точно UDEV ми е идеален пример за Пьотерингщина и уиндолз талибанщина. Понеже ползвам Gentoo (който е ролинг ъпдейт дистрибуция) някои от нещата които скъсяват живота на мейнтейнърите на нормални дистрибуции се проявяват и при крайните потребители. Може би на никой не му е направило впечатление, но преди време някой гений в пристъп на "иновационно" прозрение реши, че мрежовите интерфейси вече не е нужно да с eth0-1, а нещо "по-истинско". Като основен аргумент беше изтъкнато, че видиш ли, при много мрежови интерфейси не е ясно кой ще се инициализира първи и ще бъде съответно eth0. Това си беше определено проблем но си имаше простичко решение - в конфигурационен файл се пишеше кой е мак адреса на картата съответстващ на съответното /dev/eth0. Дистрибуциите си го правеха автоматично и никой не забелязваше.
От както udev беше прилапан в systemd. Първо се появи някаква схема за "предвидими" имена която подреждаше интерфейсите по шините на които са закачени и им даваше някакви невероятностни имена или пък към етх се прибавяше мак адреса (някой от вас знае ли си мак адресите на картите наизуст, че да му е лесно да се ориентира). Имаше я и възможността нещата да са си по старому, като във файлче просто се пишеше съответният мак адрес за кое етх работи.
Както се казва "да ама не". След като udev попрестоя под крилото на великият Пьот решиха, че от една версия нататък вече настройките за мак адрес ще се игнорират и трябва или да се примириш с въртенето на интерфейси при всеки рестарт или да минеш на великата им схема с предвидими имена. Държах около година новият udev маскиран но накрая реших, че няма как - ще мигрирам към предвидими имена и се почна... Първо - научи как се казват новите интерфейси. После виж кой интерфейс кой е. Накрая променяй абсолютно всички скриптове, файърлоли и мрежови конфигурации. Принудих се няколко пъти да търча до офиса и да конфигурирам физически машината докато видя кое къде е закачено. Беше велико приключение.
Като друг пример на велика Пьотерингщина можа за посоча изискването /usr да не е на отделен дял, а част от / защото вече udev имал зависимости в /usr/lib (предполагам разбирате какво значи това на практика). За тези които са си форматирали дисковете и си ползват системите от години единствената възможност е да си правят initrd. Лично аз сам си компилирам кернела и никога не съм се занимавал с подобни глупости, защото в моя случай беше напълно излишно. Уви, вече трябва и с това да се занимавам като компилирам кернел.
Просто неща които са много на брой и дребни на пръв поглед се събират и правят живота ти черен. Това е systemd манталитетът.