Diit.cz - Novinky a informace o hardware, software a internetu

Jednotweetová chyba v systemd

Jsou lidé, kteří systemd nemají rádi. Jsou lidé, kteří systemd rádi mají. Pak je tu většina, které je systemd úplně lhostejné. Nedávno odhalená chyba by ale měla zajímat všechny.

Ať už vůči systemd namítal kdo chtěl, co chtěl, v uplynulých dvou letech jej jako výchozí init system začaly používat všechny rozšířenější distribuce a následně i distribuce od nich odvozené, distribuce odvozené od distribucí odvozených atd. Odolávajících mohykánů je poskrovnu, takže když se tedy objeví chyba, je jí ovlivněno relativně velké množství linuxových instalací. A chyba, která se objevila na konci září, je opravdu vypečená.

NOTIFY_SOCKET=/run/systemd/notify systemd-notify ""

Pokud tento příkaz (který se pohodlně vejde do 140 znaků omezujících jeden příspěvek na Twitteru, odtud název) spustíte pod libovolným uživatelem, dojde k zaseknutí PID 1 (= systemd) ve stavu pause. Příkaz odesílá zprávu nulové délky do /run/systemd/notify, aserce na řádku 1666 ve zdrojovém kódu manager.c, ale nulovou délku nepřipouští a systemd se s ní nevyrovná. Nadále tak nelze spouštět a zastavovat systémové démony, přijímat spojení, čistě rebootovat systém a i další součásti závislé na systemd se chovají nestabilně.

Systemd chybu obsahuje zhruba dva roky, od verze 219 je běžně reprodukovatelná (některé bugreporty uvádějí nutnost zabalení příkazu do while cyklu), verze starší než 209 chybu neobsahují, ve verzích mezi těmito dvěma je dopad méně závažný.

Oprava je už na světě (verze 231-9) a netrvala ani příliš dlouho, chyba samotná ovšem opět rozvířila debaty, které poslední dobou trochu polevily: Zda je systemd opravdu tak dobrá náhrada sysvinit, jak o něm autoři tvrdí. Zda je v pořádku, do jakých rozměrů narostly závislosti ostatních částí systému na systemd. Zda by neškodila trocha diverzity a možnosti volby u jednotlivých distribucí. Vzduchem zase létají slovní spojení jako "defective by design", avšak osobně nepředpokládám, že by s pozicí systemd tato aférka nějak výrazně otřásla.

Co myslíte vy?

Martin Kukač

Většinu dne trávím tím, že přeměňuju kofein na kód. Když s tím skončím a ještě není čas jít spát, tak zbylý čas nerovnoměrně dělím mezi rodinu, sbírku počítačového harampádí, vysílání na volně přístupných pásmech a geocaching.

více článků, blogů a informací o autorovi

Diskuse ke článku Jednotweetová chyba v systemd

Čtvrtek, 6 Říjen 2016 - 20:06 | HKMaly | No nevim, me pripada pri porovnani stromu...
Čtvrtek, 6 Říjen 2016 - 13:12 | PPK | Proc ztracet cas hledanim chyby, ktera se mi...
Čtvrtek, 6 Říjen 2016 - 12:43 | Fotobob | Hmm, to je dost dobrá hláška. Komická. Jasně že...
Čtvrtek, 6 Říjen 2016 - 12:14 | bežný občan | Darmo potom linuxáci vykrikujú, ako hneď opravujú...
Středa, 5 Říjen 2016 - 22:18 | PPK | Ano problemy to zpusobovalo. Ja se konecne...
Středa, 5 Říjen 2016 - 19:46 | teso | To je síce pekné, ale tá chyba je tam dva roky. A...
Středa, 5 Říjen 2016 - 19:15 | Karel | Ach jak nesnasim tady tuhle vyndankovskou...
Středa, 5 Říjen 2016 - 19:05 | magnezar | Třípísmenkové individuum s tím souhlasit nebude.
Středa, 5 Říjen 2016 - 18:38 | bager | a su ludia ktory si uzivaju zakladny princip...
Středa, 5 Říjen 2016 - 17:56 | Jaroslav Crha | d) jsou lidi kteří tweet k životu nepotřebují!

Zobrazit diskusi