Když se dneska podívám na sysvinit skripty, situace v nich byla daleko horší! Berliček je tam spousta, některé jsou extrémně nechutné a to i u základních démonů, nebo služeb které používají miliony uživatelů (resp. serverů :-) Dost často narážím na kostlivce ve skříni například v případě RHELu 6, což už je ovšem ve Fedoře fixnuto (a tudíž i RHELu 7+ :-)
To, že se musejí psát berličky pro systemd není ani tak chyba systemd samotného, ale spíše jde o fakt, že současné programy a démoni tyto věci vyžadují. Ve startovacích skriptech se zkrátka "programuje", tak to ale nemá být. Bylo by daleko čistší upravit samotný software, jenže to se prostě nekdy nestíhá, nebo se tomu nikdo nechce věnovat.
Naopak, 32 binárek systemd-xxx je jen správně, takhle to má totiž být. Nebo snad 30 binárek git-xxx to je taky špatně? Samozřejmě že ne, tohle se prostě lépe spravuje, je té méně nýchylné k chybám a tak dále.
Osobně mám se systemd/journald jen ty nejlepší zkušenosti. Jinak ale pěkný článek! Díky.
S temi berlickami to neni az tak pravda. Cast z nich je mozna problem demonu, ale cast je proste konceptualni problem. Typicky problem je to, jak se resil ntpd vs. chrony. Vznikl z toho uplny gordicky uzel unit, targetu, specialni binarka a adresar ntp-units.d.
32 binarek samo o sobe spatne neni, ale dohromady maji 1.3MB, puvodni init mel 32kB, samozrejme k tomu zase byl potreba shell, ale init se dal udelat i bez nej, jen s inittab. Jde tak predevsim o nachylnost k chybam.
Presto dekuji za reakci i pochvalu.
Otazka neni zda dokaze, ale zda chceme aby to dokazal. A na to jsou nazory ruzne. Ideal-unix-way je lehke "jadro" (v tomto pripade init) a eventuelne lehky ale dostatecne specifikovany protokol a zbytek si resi sluzby samy. Problem s system-v initem je ale ten (viz manualova stranka daemon od systemd), ze spustit /etc/init.d/neco start
rucne (treba pres ssh bez virtualniho terminalu), rozhodne neni totez, jako kdyz to sputi init pri zmene runlevelu. Programatori na to obcas nemysli a admini to pak vyzerou.
Ale na druhou stranu laicky bych (r)evoluci systemd prirovnal k udevu. Kdyz vim, ze tam nekde je, kde je k tomu dokumentace a kde najdu popis jak ladit konfiguraci, tak mi to nevadi, a jsem rad, ze mi to ledasco udela automagicky. A take jsem rad, ze jsem na udev prechazel (v ramci debianu) teprve az kdyz ho na jinych mistech (jinych distribucich) odladili (nejen ve smyslu stability, ale i ve smyslu spravne funkcnosti na velke casti ruznych konfiguraci hw a uzivatelskych pozadavku). Takze jsem optimista a doufam, ze na debian se to (do defaultu) dostane az tuto cesticku jini proslapou :)
Je dobré si především uvědomit, že pro uživatele nepředstavuje žádnou výhodu, že některé systémové nástroje mají v názvu společný prefix a vyvíjejí se v rámci jednoho zdrojového repozitáře.
I kdyby se do stromu přidal 'systemd-web-browser', tak to nevidím jako důvod říct, že initscripts jsou špatné, protože neumějí prohlížet web.