Discussione Altro SystemD init: sta davvero cannibalizzando le funzionalità del kernel Linux?

nfvblog

Moderatore
9 Dicembre 2021
668
66
322
450
Ultima modifica:

SystemD init: sta davvero cannibalizzando le funzionalità del kernel Linux?​

1658134001666.png


1    Introduzione

Systemd è l'init system scritto da Lennart Poettering per la distribuzione RHEL di Red Hat, tanto che la prima distro ad utilizzarlo è stata proprio Fedora Linux, distribuzione abbastanza famosa per essere un po' il banco di test di tutte le future tecnologie che poi diventano standard sotto Linux.

Effettivamente, sul fronte prestazionale Systemd è sicuramente più veloce del vecchio e caro Sys-V init il vecchio init mutuato dalla omonima distro Unix e che alla fine è stato utilizzato a lungo termine anche su Linux, ma questo non poteva durare in eterno perché lo stesso stava iniziando a sentire i segni del tempo e quindi molti hanno iniziato a sviluppare un intero sottobosco di init alternativi più o meno riusciti, i più famosi sono Runit e OpenRC che comunque sono fatti abbastanza bene, il primo nasce sulla distro Void Linux, mentre, il secondo nasce da Gentoo Linux e imita l'init system RC presente sotto BSD.

Occhio queste soluzione alternative sono nate in modo autonomo e non dipendono dalla nascita di systemd, infatti, semplicemente systemd è una delle infinite soluzioni che gli utenti hanno creato per cercare di risolvere i problemi legati a SysV per il resto ognuno ha avuto le sue idee, chi ha fatto un init molto semplice come runit e chi invece ha creato un qualcosa di più complesse e articolate con s6.

1.1    Le critiche a Poettering

L'ingegnere del software in questione è stato criticato per tanti dei suoi progetti tra cui Pulseaudio che risolve alcune problematiche che alsa creava sul fronte della gestione del audio a lato desktop ma sul fronte della fedeltà è proprio il massimo.

Che poi molte volte lui è stato un capro espiatorio perfetto per giustificare tutte le pessime politiche che sono state portate su Linux negli anni, dimenticando il fatto che comunque se delle cose diventano standard in Fedora e RHEL Linux ci sono stati prima dei controlli, quindi sono stata approvati da terzi, ricordiamoci che un uomo non può essere responsabile di una scissione così grande all'interno della community.

1.1.1    Critiche a systemd

Systemd è un init che risolve alcuni problemi soprattutto a lato desktop, ma introduce alcuni altri dovuti al fatto che in primo luogo questo init funziona solo sotto Linux, mentre, il primo funzionava su tutti gli UNIX e anche il fatto che i moduli sono dipendenti tra loro, come mostrato nel grafico qui sopra, il fatto è che in caso un modulo non funzioni correttamente o semplicemente per un motivo X si voglia effettuare una sostituzione diventa difficile riuscire ad integrarne un altro. Un altro problema è dovuto al fatto che comunque su lanciato in stadio abbastanza acerbo anche su distribuzione Rock-solid come Debian, tanto che nello stesso anno nacque il progetto Devuan che opta invece per OpenRC.

Il problema è più grande di quello che sembra perché comunque l'implementazione di Systemd ha richiesto di adattare diversi pacchetti ad esso, per esempio il gestore dei log del sistema e anche di PHP si appoggiano strettamente a questo init, Gnome desktop è lo stesso dipendente e anche il nuovo Pipewire risulta comunque pensato per systemd, a detta degli sviluppatori di Devuan anche la stessa suite Linux utils non funzionava e ha richiesto di essere ricompilato perché si appoggiava ad una libreria di SystemD.

La cosa non va presa sotto gamba perché comunque il creare una dipendenza così grande all'interno di un prodotto open source potrebbe creare dei problemi, sia sul fronte ideologico perché comunque ognuno deve poter utilizzare il sistema con l'init che meglio crede e per di più Viola la filosofia UNIX per i motivi sopracitati.

Altro problema è che questo init sta integrando totalmente lo User space sotto il sistema operativo del Pinguino «tra cui sudo e su» e anche questo non è una cosa positiva.

1.1.2    Conferenza di Franco Lanza: uno dei fondatori di Devuan


Questa è una conferenza del 2 ottobre del 2015 in cui spiegano in modo pacato, e chiara le motivazioni che ha portato i VUA (Veteran Unix Admins) a creare un fork di Debian 8 Jessie per partire con una pulizia della stessa dal materiale di Poettering. Io personalmente appoggio le loro idee sul fronte server, perché comunque io sono abbastanza contrario alla chiusura degli standard per motivi ideologici, infatti, personalmente resto ancorato alla vecchia filosofia comprendendo comunque l'innovazione ma fatta nel giusto modo.

Devuan ha una dichiarazione più moderna e ha una definizione di non-free molto più rigida, quindi alcuni pacchetti che in Debian sono free qui potrebbero essere in non-free.

Un piccolo e grande problema sistemistico
Il passaggio a SystemD ha causato tanti problemi in un primo momento, costringendo le aziende a dover riscrivere parzialmente o alle volte totalmente le proprie soluzioni, per di più per restare in questo nuovo standard bisogna sottostare alle politiche di Red Hat che quando vuole può tagliare un qualche servizio e per mantenerlo devi rilasciare una tua versione non standard di SystemD con ancora il vecchio modulo al suo interno.

1.2    La mia opinione

Io negli anni ho usato Systemd, riconosco i suoi pregi e i suoi difetti, riconosco che sul fronte desktop sia perfetto, al momento sto utilizzando Void Linux e comunque continua a tenere una VM con systemd basata su Debian per poter fare i test vari e anche per creare i servizi per lo stesso.

Onestamente al momento funziona abbastanza bene, l'unica cosa che non ho mai sopportato è la chiusura nei confronti degli altri sistemi Unix e anche il distaccarsi dalla filosofia che ha reso funzionale quel modello, il fatto di dover essere scalabile e compatibile con tutti gli altri sistemi che rispettino quei canoni è un punto fondamentale che non può e non deve essere ignorato perché proprio quello ha consentito al modello di sopravvivere e diventare quello che è adesso.

Ovviamente questo è solo la prima discussione sul argomento, in futuro arriveranno delle altre che tratteranno nel dettaglio di altri init. Ovviamente anche di systemd sul fronte della gestione
 
  • Mi piace
Reazioni: Conti