Kéž by jen Vaše definice neseděla i na systemd. Ale ještě dneska jej mnozí neumí používat, stejně jako všechny ty předchozí inity. A navíc jej bez funkčního systému neopravíte a v případě nevyhovující podpory po upgradu v jádře ani nespustíte. Během posledních pár let mi systemd přinesl asi tolik komplikací, jako celé mé experimentování od doby, kdy jsem začal s unixem. Opravdu považujete vytvoření neprůhledného a nestabilního binárního monolitu s neúplnou a poměrně nekvalitní dokumentací za přínos?
26. 5. 2019, 18:57 editováno autorem komentáře
Nechcem sa tu velmi opakovat ani spustat nejaky flame. Systemd ma jednu zasadnu vyhodu - narozdiel od openRC, initd a podobnych vie ci dana servisa NAOZAJ BEZI a nie len ci BOLA SPUSTENA (cize vie ju napr. aj restartnut ak treba). Okrem toho pri ukonceni vie, ci aj naozaj skoncila (mam teraz na mysli CELY PROCES TREE).
Neviem co konkretne myslite pod nestabilitou (nemal som ten problem), ale na Vas argument, ze ho ludia nevedia pouzivat viem povedat len to, ze napisat definiciu servisu (casovaca, socketu,...) je radovo jednoduchsie ako napisat kvalitny skript pre napr. openRC. A tak to zial aj vyzera - je docela mozne ze si to openRC nepravom schytava za lenivych autorov spustacich skriptov, ktori namiesto mozgu pouzivaju Ctrl+C a Ctrl+V.
Kazdopadne mne osobne systemd oproti skriptovanym initom pripada rozhodne ako pokrok (aj za cenu komplikacii, ktore to prinasa).
Samozrejme to neni jediny init ktery tohle umi navic ani u systemd to neni "neprustrelne". Ono jen pobrat co znamenaji vsechny ty kombinace "loaded, active, activating, dead, failed, stopped, running, waiting, listening, tentative, plugged,mouted, exited..." to je obcas veda. "Pokrok" proti skriptovym initum se skryva v tom, ze systemd omezuje mnozstvi pouzitych "prikazu" na skupiny preddefinovanych kryptickych SlovVNemeckeNotaci, pricemz tato mnozina neustale bobtna, aby autori pokryli ruzne obskurni situace, vznikajici celym konceptem.
A maly kviz na zaver - co se stane s bezicim systemem ktery ma za init systemd a za behu mu odstranime root svazek? A co se stane se systemem s jinym initem? Odpoved: u systemd v lepsi pripade nejste schopni rict co se stane, protoze to nikdo nevi, nikdo s tim nepocital, u primitivnich initu to naopak schopni rict jste. Je to sice extremni pripad, ale pro systemd typicky.
„Samozrejme to neni jediny init ktery tohle umi...“
To nikdo netvrdil. Otázka stojí, zda vlastnosti alternativních initů byly dostačující, když se za celé „fungování“ Sysvinitu nerozšířily a rozšířil se až Systemd.
„Ono jen pobrat co znamenaji vsechny ty kombinace...“
Ty kombinace většinou odrážejí složitost fungování procesů bez ohledu na Systemd. Možná jich přibylo jen proto, že Sysvinit na některé prostě s*al. Mimoto obvykle nepotřebujete všechny znát.
Osobně mě nezajímá, jaký init bude v Linuxu, zajímá mě, zda to funguje. Pro mě se situace se Systemd zjednodušila (je víceméně deklarativní). Problémy jsem zažil spíše s těmi starými službami, které se dosud spouštějí všelijakými obskurními skripty, pak to blbne.
A maly kviz na zaver - co se stane s bezicim systemem ktery ma za init systemd a za behu mu odstranime root svazek? A co se stane se systemem s jinym initem?
Takže už víme, pro které uživatele je vhodný který init systém. Pro uživatele, kteří potřebují vědět, co se stane, když za běhu odstraní root svazek, je vhodný SysVInit. A pro všechny ostatní systemd.
Tady by se hodila bazinga, ale vy jste ji v komentáři také neměl…