Dracut v0.4

Została wydana nowa wersja dracuta – następcy aktualnych narzędzi do tworzenia initramfs rozwijanego przez deweloperów Fedory i Debiana.

Celem projektu jest stworzenie uniwersalnego zestawu narzędzi do tworzenia initramfs, które będą pozbawione zależnych od konkretnej dystrybucji rozwiązań. Dzięki zmodularyzowaniu skryptów teoretycznie będzie możliwe stworzenie initrd bez zbędnych dla danej maszyny modułów – po co mi plymouth na serwerze? Powinno się to też przyczynić do skrócenia startu systemu – w Fedorze nash czasami niemiłosiernie długo potrafi mielić te skrypty startowe – w Dracut domyślnym egzekutorem ma być dash, co powinno się również przełożyć na pewien wzrost szybkości działania.

Ogólnie ma być szybciej i bardziej uniwersalnie – tak, żeby wiele dystrybucji mogło z tego skorzystać.

Niemało jeszcze pozostało do zrobienia, ale deweloperzy pracują pełną parą – przez ostatnie dwa dni zostały wydane trzy wersje. Całość ma być na tyle funkcjonalna, żeby zastąpić mkinitrd w już Fedorze 12 – więc wysokie tempo prac jest zrozumiałe.

Pozostaje mieć nadzieję, że deweloperzy nie po obrażają się na siebie i nie zakończą tak owocnie rozpoczętej współpracy, a Dracut nadal będzie się szybko rozwijał i zostanie zaadoptowany również przez inne dystrybucje, a nie tylko pochodne Debiana i Fedory.

żadnych reklam, sama wiedza.

Zarejestruj się na BEZPŁATNY NEWSLETTER i raz w tygodniu otrzymuj najważniejsze wiadmości
ze świata IT, nowych technologii i kryptowalut.

Bez reklam.

  1. Awatar Emdé
    Emdé

    Łał! LJZ, całkiem niezły news :)! I chociaż niektóre fragmenty ("po co mi plymouth na serwerze?") należałoby poprawić, to nie jest źle.

    1. Awatar quest
      quest

      Faktycznie, ten nius jest niezły. Jednak ban i tak mu się należy za założenie trzeciego konta z rzędu i unikanie kary.

      1. Awatar LeM51
        LeM51

        Kary? Sąd był kapturowy!

    2. Awatar Sławek
      Sławek

      No dobra. Może lepiej "po co komuś usplash/pylmouth na serwerze"? Chodziło pewnie o konieczność ograniczenia intramfs. Swoją drogą, to do sprawdzenia systemu plików nie jest potrzebny wcale initramfs. Wystarczą sumy kontrolne pewnych plików i lokalne kopie, choć pewnie sprawdzanie sum kontrolnych jednak potrwa dłużej.

      1. Awatar czepolskoczminadyfer
        czepolskoczminadyfer

        "No dobra. Może lepiej “po co komuś usplash/pylmouth na serwerze”?"

        Jeśli mam serwer(y) i jedyne co mam do niego wpięte to kabel zasilania i kabel sieciowy, to po co mi plymouth w initrd? Naprawdę nie potrzebuje tego zbędnego kodu, bo nawet jakbym miał podpięty monitor, to i tak nie przeprowadzam często restartu.

        "Chodziło pewnie o konieczność ograniczenia intramfs"

        Zgadza się – aktualnie nie mam możliwości wyrzucenia plymouth z initrd bez przerabiania mkinitrd, bo jakiś geniusz uznał, że ten super zajefajny ficzer będzie cieszył również ludzi używających Linuksa do czegoś innego niż surfowanie po internecie, zmienianie tapety, obracanie kostki etc.

        "Swoją drogą, to do sprawdzenia systemu plików nie jest potrzebny wcale initramfs. Wystarczą sumy kontrolne pewnych plików i lokalne kopie, choć pewnie sprawdzanie sum kontrolnych jednak potrwa dłużej"

        Zupełnie nie mam pojęcia o czym mówisz. Domyślam się, że nie rozumiesz od czego służy initrd/initramfs.

        Możliwe, że wiesz, że w jądrze Linux sterowniki do urządzeń oraz kod systemów plików jest bardzo często skompilowany jako tzw. moduł. Moduły tworzy się dlatego, żeby zbytnio nie przeładowywać jądra zbędnymi rzeczami. Teraz wyobraź sobie jak musi być zbudowane jądro dla dystrybucji – musi mieć obsługę wielu różnych systemów plików oraz sterowników urządzeń z których można wystartować system. Gdyby wbudować wszystkie dostępne moduły, to jądro miałoby jakieś 66 MB w przypadku dystrybucji, którą używam. Dlatego ten cały kod jest w modułach. Teraz powstaje problem – jeśli w jądrze nie ma wbudowanej obsługi systemu plików xyz oraz sterownika do naszego mega, hiper gwiezdnego sas, to jak zamontować taki system plików i jak załadować inne moduły. Tutaj z pomocą przychodzi nam initramfs/initrd. Jest to mały system plików na którym umieszczono kilka programów, moduły potrzebne do zamontowania rootfs, skrypty które muszą zostać wykonane aby móc odpalić init z rootfs. Po wykonaniu wszystkich poleceń ze skryptów initramfs system plików / jest podmieniany tym, który jest na dysku.

        To tak w skrócie i uproszczeniu. Dracut ma realizować też kilka innych rzeczy – na przykład ładowanie polityk mandatowej kontroli dostępu, umożliwić logowanie przez ssh, żeby podać hasło do rootfs.

        1. Awatar ak47
          ak47

          Na jakiej zasadzie to narzadko przebudowuje initrd?
          Bo widze conajmniej kilka problemów/niedogosności :]

        2. Awatar czepolskoczminadyfer
          czepolskoczminadyfer

          "Na jakiej zasadzie to narzadko przebudowuje initrd?"

          Nie rozumiem pytania. Mógłbyś je przeredagować na bardziej zrozumiały język?

        3. Awatar Sławek
          Sławek

          Widać byłem nieco zaspany. Jądro zawsze ma tylko wbudowaną obsługę którejś wersji EXT-a. Moduł można załadować znając jego lokalizację(fizyczną), ale to jest bardziej pozbawione sensu.

          PS: To jak jądro wczytuje initramfs? Robi to bootloader?

        4. Awatar ak47
          ak47

          no dobra purysto językowy :]
          na jakiej zasadzie dracut przebudowuje obraz initrd. Piszesz przeca, że może on wywalać z pelnego obrazu to i owo (np uspalsh/pylmouth według ciebie są zbędne).
          Zauważ że takie wywalanie prowadzi do tego że jesli bedziesz chcial poprostu przenieść system serwerowy na maszynę o zupełnie innej konfiguracji sprzętowej to system nie ruszy. kerenel panic bo sterownik sata sie zmienił (tak btw na to czuły jest XP) initrd wlasnie powstał po to aby jedno dystrybucyjne jajo zostało odpalone na dowolnej konfiguracji sprzętowej.

        5. Awatar jellonek
          jellonek

          slawek: chyba dawno sprawdzales – obecnie ext od lat lezy w modulach, zamiast tego – jadro obsluguje standarowy dosc format archiwum cpio.
          tak, bootloader wczytuje kernel i initramfs, po czym tylko kernelowi podaje informacje gdzie ten initramfs sie znajduje w pamieci.

        6. Awatar czepolskoczminadyfer
          czepolskoczminadyfer

          "na jakiej zasadzie dracut przebudowuje obraz initrd."

          Gdybyś zajrzał do helpa mkinitrd, to wiedziałbyś, że można wyrzucać z initramfs różne grupy modułów – do scsi, raid, lvm, dmraid. W Dracut jest dostępna podobna opcja omit lista_modułów_dracuta. Dzięki temu można podczas przebudowywania initramfs wyrzucić z niego niepotrzebne na danej maszynie rzeczy.

          "Zauważ że takie wywalanie prowadzi do tego że jesli bedziesz chcial poprostu przenieść system serwerowy na maszynę o zupełnie innej konfiguracji sprzętowej to system nie ruszy. kerenel panic bo sterownik sata sie zmienił (tak btw na to czuły jest XP) initrd wlasnie powstał po to aby jedno dystrybucyjne jajo zostało odpalone na dowolnej konfiguracji sprzętowej."

          Ja chcę mieć kontrolę nad tym, co jest w initramfs. Jeśli ty nie chcesz, to twoja sprawa – spadaj na drzewo i używaj jakiejś mutacji mkinitrd.

        7. Awatar ak47
          ak47

          @czepolsko……….cośtam
          A do hitlera mnie nie porównasz?

        8. Awatar jellonek
          jellonek

          ak47: nie popisales sie tym razem 😉 initrd – a wlasciwie teraz initramfs nie powstal w celach przez ciebie opisanych. btw. sam mam "przykrojony", tj. dopasowany do swojego sprzetu initramfs – zgodnie ze standardami debianowymi – jedna opcja w pliku konfiguracyjnym i masz tylko te moduly, ktore sa potrzebne ci do startu systemu.
          btw. swojego systemu nie odpalam na innym sprzecie…

        9. Awatar ak47
          ak47

          @czepolsko……….cośtam
          Wyjaśnij mi prosze o mądry czym się rożni dracut od zwyklego odpalania mkinitrd z parametrami? Bo Ja nie widzę żadnej różnicy.
          Btw mówisz że chcesz mieć kontrole na tym co jest w initramfs. Czy nie latwiej/szybciej jest poprostu rezygnować z initramfs? Tak, system mozna odpalić bez initramfs ;]

        10. Awatar czepolskoczminadyfer
          czepolskoczminadyfer

          "Wyjaśnij mi prosze o mądry czym się rożni dracut od zwyklego odpalania mkinitrd z parametrami?"

          Przecież wyjaśniłem – jest zmodularyzowany i można go bardziej dopasować do własnych potrzeb. Nie rozumiem co tu może do ciebie nie docierać? Jak chcesz znać resztę różnic, to zajrzyj do źródeł .

          "Btw mówisz że chcesz mieć kontrole na tym co jest w initramfs. Czy nie latwiej/szybciej jest poprostu rezygnować z initramfs? Tak, system mozna odpalić bez initramfs ;]"

          Myślisz, że będę kompilował jądro na serwerze? Nawet nie instaluje tam gcc…

          W RHEL czy Fedorze i pochodnych nie da się zrezygnować z initramfs bez mocnych przeróbek w systemie. Nawet jak masz wkompilowaną w jądro obsługę FS czy sterownik urządzenia na którym jest rootfs, to ze względu na niekernelowe nazewnictwo urządzeń system bez initramfs się nie podniesie.

          No i wątpię, żebyś sobie z tym poradził – ekspercie…

        11. Awatar ak47
          ak47

          a to trzeba kompilować na tej samej maszynie na ktorej jest to odpalane 0_o ekspercie …??
          Co do fedory jakoś jeszcze 4 lata temu sie dało się uruchomić bez initrd …;] I tak trochę zachodu to kosztowalo.

          @jell
          Jakis miesiąc temu płyta główna w jednej z maszyn (developerskich) wysiadła……… zamiast odtwarzać backup podlaczyiśmy dyski pod inny kadłubek i se chodziło aż nowa plyta przyszła. Wiec czasem ten fat initrd może być baaaaaardzo przydatny.

        12. Awatar czepolskoczminadyfer
          czepolskoczminadyfer

          "a to trzeba kompilować na tej samej maszynie na ktorej jest to odpalane 0_o ekspercie …??"

          Ja nie mam innych systemów z Linuksem w statusie != serwer.

        13. Awatar ak47
          ak47

          Na wszystko są sposoby ……..
          -lajfcd
          -system zwirtualizowany
          -jakieś inne cuda też się znajdą
          Mówisz o serwerze w sensie maszyny produkcyjnej czy domowej popierdułki?

        14. Awatar Patol
          Patol

          Najlepiej od razu zatańczyć przed komputerem na uszach, zrobić pompkę na 2 palcach itp….

        15. Awatar gotar
          gotar

          @Sławek – a gdzieś takie bzdury wyczytał, że jądro zawsze jakiegoś ext obsługuje?

  2. Awatar czepol
    czepol

    Nius ok, więc zostaje.

    1. Awatar czepolskoczminadyfer
      czepolskoczminadyfer

      To co, nie dostanę bana? Czepol, k… nie wymiękaj – zapodaj bana 🙂

      1. Awatar czepol
        czepol

        Jak będziesz pisał niusy takiej jakości to nie byłoby żadnego problemu. Zrobienie bana dużo czasu nie zajmuje, tobie napisanie niezgodnego z regulaminem niusa już trochę więcej 😉 Poza tym, niedługo (mam nadzieję) będzie ficzer (ktoś odpowiedział na jeden z komentarzy do redakcji), dzięki któremu niusy osób, które nic jeszcze nie napisały będą dostępne tylko po akceptacji moderatora.

        1. Awatar jellonek
          jellonek

          proponuje by jednak moderacji poddawane byly wszystkie od osob o statusie nizszym niz redakcja…

    2. Awatar czepol
      czepol

      Gratulację dobrego loginu 🙂

      1. Awatar Emdé
        Emdé

        Login niezły, tylko co to jest "dyfer"? W internecie przeczytałem, że to filtr do skręta oO…

        1. Awatar czepol
          czepol

          @czepolskoczminadyfer
          To jest serwis o IT, a nie o motoryzacji 😉

        2. Awatar czepolskoczminadyfer
          czepolskoczminadyfer

          "To jest serwis o IT, a nie o motoryzacji"

          Jestem inżynierem informatyki, wiem do czego służy ls w uniksie, ale nie potrafię zatankować samochodu… 🙂

        3. Awatar Emdé
          Emdé

          Akurat opcję z dyferencjałem z miejsca zdyskfalifikowałem na początku, bo myślałem, że miałeś na myśli coś bardziej kreatywnego :D.

        4. Awatar czepolskoczminadyfer
          czepolskoczminadyfer

          Lokalny żargon 4×4 nigdy nie jest kreatywny… może następnym razem lepiej pójdzie jak napisze zamiast na dyfer na panharda.

          Albo nie, bo to jest zbyt kreatywne – pierwsze 10 haseł na google nie ma zbyt wiele wspólnego z panhard rod

    3. Awatar marcinsud
      marcinsud

      Nie do końca, ale niech już będzie.

  3. Awatar riklaunim
    riklaunim

    Co na to chłopaki z Pardusa? 🙂 czy Archowcy generujący dopasowany obraz initramfs przy instalacji kernela ? 🙂

    1. Awatar czepolskoczminadyfer
      czepolskoczminadyfer

      Ci od Pardusa, to pewnie będą chcieli te skrypty initramfs w pythonie pisać 🙂

  4. Awatar Sławek
    Sławek

    Niegdyś developerze Ubuntu ogłosili rozpoczęcie prac nad Upstart. Wtedy developerzy Debiana zaproponowali projekt o podobnej nazwie. Wiem, że tylko z nazwy podobny. Mógłby ktoś mi podać jego nazwę?

    1. Awatar riklaunim
      riklaunim

      upstart-nobuntu?

      1. Awatar Sławek
        Sławek

        Nie chodziło o projekt zaczynający się na D. Sam poszukam. Miał być zamiennikiem Upstart, więc trochę nie związane z tematem.

        1. Awatar gotar
          gotar

          Z tego co mówisz wynika, że downstart ;>

  5. Awatar Sławek
    Sławek

    "Niemało jeszcze pozostało do zrobienia, ale deweloperzy pracują pełną parą – przez ostatnie dwa dni zostały wydane trzy wersje :)"
    Nie powinno być kropki? Widać, że nius jest trochę uszczypliwy, ale i dobrze – jeżeli to prawda.

  6. Awatar Energizer
    Energizer

    No i takie projekty mi się podobają – dostępne dla Linuksa a nie np. dla *buntu only.

    1. Awatar matiit
      matiit

      Praktycznie wszystko odpalisz na nowoczesnych linuksach… no chyba że aplikacja na chama sprawdza czy distro na którym jest uruchamiana to ubuntu, używa np. apt'a (wtedy *deb only)

      1. Awatar atavus
        atavus

        @matiit
        nie zebym sie czepial, ale apt-get chodzi tez na rpmach…

  7. Awatar Kenya Fatone
    Kenya Fatone

    Thankyou for this post, I am a big fan of this site would like to go on updated.

  8. Awatar Andre Seydel
    Andre Seydel

    keep up the good piece of work, I read few articles on this site and I think that your website is really interesting and holds bands of great info .

  9. Awatar Yelena Southand
    Yelena Southand

    I believe you have mentioned some very interesting points , regards for the post.

  10. Awatar Aquaponics
    Aquaponics

    Your home is valueble for me. Thanks!…

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *