Saturday’s Talks: se systemd ci fosse stato dall’inizio, nessuno avrebbe avuto niente da dire

Lo avevo anticipato mentre cercavo di spiegare la causa di tutti i disservizi avuti questa settimana sul portale (alla fine il downtime è stato basso, ma il giramento di scatole alto quindi ha compensato): il prossimo episodio di “Saturday’s Talks” sarebbe stato dedicato a systemd.

Ed eccoci qua.

Nel corso dei disservizi abbiamo dovuto imparare che oggi, quando qualcuno installa Ubuntu 18.04 LTS (Long Term Support, la più stabile) la metodologia di default con cui si troverà a configurare la rete è rappresentata dalla combinazione di netplan (chi?) e networkd (ah adesso systemd gestisce pure la rete?).

È necessario capire come funzionano quelle due componenti se si vogliono effettuare configurazioni specifiche. Ad esempio un bridge, da documentazione ufficiale, si configura così:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:
      dhcp4: no
  bridges:
    br0:
      dhcp4: yes
      interfaces:
        - enp3s0

Non è un file ifcfg-eth come per distro Red Hat based, non è un file interfaces come per distribuzioni Debian like, e allora cos’è? Una cosa nuova, ecco cosa, peraltro limitata al momento solo ad Ubuntu.

Il punto però non è netplan, ma networkd che conferma quanto abbiamo imparato: systemd vuole fare tutto. L’init, i log, le login… La rete! E sapete cosa vi dico?

(rullo di tamburi)

Tutto questo ha una sua perfetta logica.

Proprio così, la riflessione che metto sul piatto è: se fossimo partiti tutti dall’approccio systemd, qualcuno si sarebbe mai lamentato?

Systemd vuol dir polemica, si sa, ma facciamo uno sforzo di immaginazione: siamo sicuri che il problema sia questa componente che, peraltro, non ha mai fatto mistero di volersi occupare di tutto?

Il problema non saranno semmai le modalità con cui le varie distro interagiscono con systemd? Perché oggi se per Red Hat c’è Network Manager, per Ubuntu c’è netplan, quindi qual’è la differenza con gli antichi file ifcfg e interfaces? Secondo me nessuna.

Insomma, stiamo sbagliando il nemico da combattere. E forse lo abbiamo sempre sbagliato.

Systemd sembra un problema, invece è la più grande opportunità che Linux ha avuto per essere aperto, comprensibile e… facile.

Perché raccontare che systemd è il male quando c’è da sistemare l’ordine di boot dei vostri servizi custom è una bugia bella e buona: per la prima volta dalla nascita di Linux c’è finalmente un sistema standard, che funziona su tutte le distribuzioni, per determinare chi deve partire prima di chi.

Direi che per oggi ho finito…


(liberate i cani)

😉

Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.

5 risposte a “Saturday’s Talks: se systemd ci fosse stato dall’inizio, nessuno avrebbe avuto niente da dire”

  1. Avatar Maurizio Tosetti
    Maurizio Tosetti

    Sono questioni già’ note il fatto che SystemD sia uno standard. Nulla di nuovo e di particolarmente interessante Il problema e’che vuole gestire tutto a differenza dei precedenti Init dove esistevano piccoli programmi che facevano tutto e lavoravano indipendentemente senza dipendere da unica entità che governa e controlla ogni parte del sistema operativo. Cioè, la filosofia Kiss che e’ presente nei sistemi Unix

    Quindi Systemd no grazie se posso lo evito. Questo e’ il mio punto di vista.

  2. Avatar Kernelio Linusso
    Kernelio Linusso

    Il fatto che secondo te (e molti altri) systemd “vuole gestire tutto” dice molto. Quasi tutto.

  3. Avatar Bios
    Bios

    Se systemd gestisce tutto vuol dire che tutto dipende da systemd e quindi non si avrà la possibilità di ottenere sistemi diversi tra loro. La diversità è ciò che conferisce ai sistemi GNU/Linux la propria unicità e standardizzarli sarebbe un errore per via del fatto appunto che lo renderebbe un sistema adatto agli stolti purché possa essere utilizzato come un sistema analogo a Ubuntu o a MacOS e questi termini di paragone sono strettamente riguardanti il marciume che si sta celando dietro Canonical. Ma d’altronde non è il mondo di Ubik che volete?

  4. Avatar JustATiredMan
    JustATiredMan

    Allora è colpa di netplan/networkmanager o systemd ?
    Io penso che la colpa sia di entrambi, nel senso che la colpa è delle scelte di ubuntu/redhat
    Nel momento in cui, sai che c’è una roba che si chiama systemd, e sai che gestisce pure la rete, qualsiasi roba che gli metti in mezzo alle ruote, possono succedere questi problemi.
    La colpa è di ubuntu e redhat che sapendo questo, hanno deciso di usare strumenti diversi, appunto netplan e networkmanager, per gestire una cosa che fa già systemd.
    Hanno deciso di usare systemd ? dovrebbero lasciare gestire tutto a lui.
    Perchè allora usare netplan e netowrk manager ? bho !
    SystemD è una dittatura ? secondo me si lo è… qualsiasi tools diverso che vuole gestire un pezzo di ciò che dovrebbe (o vorrebbe) gestire systemd, al systemd non gli va bene. S’è visto anche in passato in altri casi.
    Il discorso di fondo è che SystemD si dovrebbe usare in toto, oppure in nessun caso.
    In questo caso, forse, Devuan avrebbe funzionato meglio.
    Le soluzione miste come stanno facendo ubuntu e redhat, secono me non sono l’ideale, e possono creare problemi in situazioni particolari.

  5. Avatar Francesco P.
    Francesco P.

    Io con systemd mi trovo bene. Lo uso da quando uso Linux come sistema operativo principale e di problemi di stabilità o di altro genere non ne ho mai avuti.

    Volendo posso sostituire i suoi moduli (journald, timesyncd, networkd) con altri software (rsyslog, chrony, NetworkManager per es.), quindi non è vero che “fa tutto lui” per forza, ma non ne sento l’esigenza. Volendo potrei anche eradicarlo dal mio sistema e usare un altro init, tipo OpenRC; o per semplicità usare una distro senza SysD di default, come Devuan, Void o Gentoo per esempio, ma non ne sento l’esigenza. Non c’è nessuna “dittatura”!

    Invece, i limiti oggettivi di System V sono svariati, tra qui l’impossibilità di controllare i demoni una volta avviati (cosa che ha portato blasonati Unix proprietari come Aix a sostituirlo già nel 1990).
    http://jdebp.eu./FGA/system-5-rc-problems.html

    Systemd è perfetto? NO! Ogni tanto vengono sistemati bug di sicurezza, il sistema di gestione dei coredump è migliorabile, il journal in formato binario si può corrompere… Ma detto ciò, nel complesso è *nettamente* MEGLIO di quello che c’era prima, FUNZIONA, semplifica la configurazione e/o gestione dei demoni, ed è per questo che *tutte* le principali distro l’hanno adottato.

    Su netplan ho poco da dire, nel senso che è una delle prime cose che levo quando installo una macchina ubuntu, in quando lo trovo inutile. Su un client uso NM, su un server SysD o ifupdown. È stato introdotto per unificare le configurazioni di rete, ma quello che fa mi sembra sia complicare ulteriormente le cose.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *