venerdì, Marzo 29, 2024

Le migliori distribuzioni Linux senza systemd

Quando le distribuzioni Linux dominanti hanno adottato systemd , i dissidenti hanno biforcato le distribuzioni e hanno avviato nuovi progetti. Quindi quali sono le tue opzioni se stai cercando una distribuzione non di sistema? Diamo un’occhiata.

Storicamente, la sequenza di avvio in un sistema Linux era una replica del sistema di inizializzazione introdotto con  System V Unix  (SysV). Il sistema SysV init aderiva alla  filosofia Unix . Quando le persone si riferiscono alla filosofia Unix, di solito la riducono al noto morso “Fai una cosa e fallo bene”. E quella cosa era iniziare come primo processo e poi avviare altri processi. Di tanto in tanto eliminava anche gli zombi .

SysV init ha svolto il suo lavoro abbastanza bene, ma non lo ha fatto in modo troppo efficiente. Ha avviato processi in serie, uno dopo l’altro. Non c’era parallelismo. Il design ha messo a dura prova la produttività. Ciò era più o meno mascherato dai guadagni di velocità dell’hardware moderno, e non è come se l’avvio di un computer Linux richiedesse un’età interminabile. Ma sì, tecnicamente, avrebbe potuto essere reso più efficiente.

Come per tutto il resto in Linux, gli utenti avevano una scelta. Erano disponibili alternative. Gli utenti competenti potevano configurare il proprio computer Linux per utilizzare un diverso sistema di inizializzazione, che avviava i processi in parallelo e funzionava nel modo che preferivano.

Alcune delle opzioni erano:

  • Upstart : questa era un’iniziativa sviluppata da  Canonical  che è stata adottata dalla   famiglia di distribuzioni Red Hat , tra cui  Centos  e  Fedora . Upstart non è più in fase di sviluppo.
  • runit : Questo è un progetto indipendente e multipiattaforma che gira su  FreeBSD  e altri derivati ​​BSD, nonché su sistemi  macOS ,  Solaris e Linux. È stato adottato come sistema di inizializzazione predefinito o come una delle opzioni del momento dell’installazione su diverse distribuzioni Linux.
  • s6-Linux-init : s6 è un sostituto di SysV init che cerca di affrontare la natura seriale di SysV init e rimane fedele alla filosofia Unix.

systemd è un altro sostituto di SysV init, ma include molto di più. Dispone di moduli che gestiscono dispositivi fisici, accessi utente, risoluzione dei nomi di rete e molto altro ancora: è composto da oltre 70 file binari e oltre 1,4 milioni di righe di codice. In confronto, SysV init per  Arch  Linux ammonta a meno di 2.000 righe di codice. Chiaramente, systemd ha davvero abbandonato la filosofia Unix. E non solo, commette l’ulteriore eresia di ignorare completamente lo   standard POSIX ( Portable Operating System Interface ).

Gli argomenti di systemd sono tra i più accesi a cui abbia mai assistito in una comunità open source. (E questo sta dicendo qualcosa.) Gli altrettanto rumorosi campi pro-sistema e non-sistema non sono le uniche persone coinvolte, ovviamente. Parlo con molte persone che non sanno nemmeno che systemd è una cosa così come molti altri che ne hanno sentito parlare ma non conoscono abbastanza dettagli per formarsi un’opinione in un modo o nell’altro. Francamente, a loro non importa. Vogliono solo che le cose funzionino.

Se non sei sicuro di essere su una distribuzione basata su systemd, esegui il ps comando sull’ID processo 1.

ps -p 1

Se vedi “systemd” nella risposta, allora chiaramente stai usando systemd. Se dice qualcos’altro, tipicamente “init”, allora non lo sei.

Filosofia, architettura e qualità ingegneristica

Persone diverse si oppongono a systemd per motivi diversi. Per alcuni, è il disprezzo per la filosofia Unix tradizionale. Anche se non è un dogma obbligatorio, è il “modo Unix”. Ed è un modo che ha resistito alla prova del tempo: piccole utilità che possono essere collegate insieme in modo che il loro output diventi l’input del processo successivo nella pipeline è una parte fondamentale di ciò che dà a Linux la sua sensazione e il suo carattere. È ciò che lo rende particolarmente adatto per mettere insieme rapidamente soluzioni creative per esigenze una tantum o di breve durata.

Altri hanno interrogato le decisioni di progettazione alla base di systemd, l ‘”architettura software”. Perché includere tutte quelle funzionalità che non hanno nulla a che fare con l’avvio di un sistema? Se questi altri elementi hanno bisogno di essere aggiornati o migliorati, fallo. Ma perché integrare l’intero lotto in un’unica massiccia suite di applicazioni interconnesse?

Sono state sollevate preoccupazioni circa l’ atteggiamento sprezzante degli sviluppatori di systemd  verso le correzioni di bug  in generale e verso le  vulnerabilità e le esposizioni comuni  in particolare. Più righe di codice hai, più bug devi affrontare. Quando questi bug sono legati alla sicurezza e hanno il loro numero CVE assegnato, allora dovevi occupartene ieri.

Qualunque sia la ragione o le ragioni alla base del tuo desiderio di lasciare una distribuzione Linux basata su systemd, la domanda è: dove vai dopo? Forse vuoi provare qualcosa di completamente nuovo. Potresti non vedere l’ora di imparare i dettagli di una nuova distribuzione. D’altra parte, potresti non avere né il tempo né l’appetito per un’altra curva di apprendimento. Vuoi tornare attivo e funzionante il più velocemente possibile su un sistema che ti sembra il più familiare possibile.

La famiglia Debian: Devuan

Se usi Debian o una delle miriadi di derivati ​​di Debian come Ubuntu e la sua intera tribù di parenti, ha senso per te dare un’occhiata a  Devuan . Devuan è un fork di Debian, quindi quasi tutto risulterà familiare. La shell predefinita è Bash e il gestore dei pacchetti è apt. Devuan è stato biforcato da Debian nel 2014. È solido e stabile e ha una fiorente comunità.

Se preferisci  GNOME  come  ambiente desktop,  dovrai fare un po ‘di lavoro extra. GNOME non viene offerto come scelta desktop durante l’installazione. MATE ,  Cinnamon ,  XFCE e altri sono disponibili, ma GNOME dovrà essere installato manualmente una volta che il sistema è attivo e funzionante.

Desktop Devuan Linux con una finestra di terminale aperta

GNOME ha alcune dipendenze dai componenti systemd, vale a dire, il   gestore dei dispositivi hardware udev e il gestore degli  accessi logind  . I sostituti per questi sono stati creati dagli   sviluppatori di Gentoo Linux .

eudev  ed  elogind  consentono alle applicazioni con forti dipendenze da systemd di funzionare come se systemd fosse installato. Anche i puristi anti-systemd si oppongono a questo, sostenendo che assecondare il software che codifica in forti dipendenze da systemd è quasi dannoso quanto eseguire systemd.

Le scelte del sistema init su Devuan sono SysV init o  OpenRC .

La famiglia Arch: Artix Linux

Gli  utenti di Arch  e  Manjaro potrebbero voler prendere  Artix  Linux per un giro. Artix è un fork di Arch che si basa sul progetto Arch-OpenRC. La sua prima versione è stata rilasciata nel 2017.

Arch Wiki contiene istruzioni su come sostituire systemd con OpenRC , ma non è ufficialmente supportato. Allo stesso modo, poiché il supporto OpenRC è stato  abbandonato da Manjaro , non esiste una distribuzione derivata da Manjaro che sia priva di sistema.

Quindi, se vuoi rimanere nell’universo Arch, devi scegliere un fork basato su Arch come Artix che utilizza un diverso sistema di inizializzazione. Artix offre certamente su questo fronte. Durante il processo di installazione, scegli uno dei tre diversi sistemi di inizializzazione. Le scelte sono OpenRC, runit e s6.

Desktop Artix Linux con una finestra di terminale aperta

Sono disponibili tutti i gusti desktop previsti, come Cinnamon, MATE, XFCE e altri. Ci sono anche  versioni in testing  che supportano GNOME e il  window manager i3 .

Il gestore di pacchetti è pacman. Naturalmente, è possibile utilizzare tale da installare pamacyayo uno qualsiasi degli altri  Arch User Repository  aiutanti (AUR). La shell predefinita è Bash.

È tutto ciò che ti piace di Arch senza systemd.

Red Hat e Fedora: PCLinuxOS

Il progetto systemd è un’iniziativa di Red Hat. I principali sviluppatori di systemd sono i dipendenti di Red Hat. Sembra che per molti nel mondo Linux, tutto ciò che proviene dai campi Linux “aziendali” – Red Hat,  Oracle ,  Intel ,  Canonical , per esempio – debba essere automaticamente diffidato.

systemd è stato descritto, tra le altre cose, nient’altro che un complotto di Red Hat per modellare Linux in qualcosa che si adatta alle esigenze del loro sistema operativo integrato. Se Red Hat avesse bisogno di una distribuzione su misura per i sistemi embedded, sarebbe di gran lunga più facile crearne una. Non è necessario convincere Arch, Ubuntu e  OpenSUSE  a seguire l’esempio.

Ovviamente, essendo Red Hat la ragione per cui esiste systemd, non troverai un derivato di Red Hat senza systemd. Quindi qualunque cosa ti sposti ti sembrerà nuova e diversa. Ma se almeno vuoi restare con una distribuzione che utilizza  Red Hat Package Manager  (RPM), dovresti rivedere PCLinuxOS.

Il progetto PCLinuxOS è iniziato nel 2003 come fork dell’ormai defunta Mandrake Linux appena prima che Mandrake diventasse Mandriva . La prima versione di PCLinuxOS è apparsa nel 2007, quindi precede di molto systemd.

Desktop PCLinuxOS con una finestra di terminale aperta

Mentre PCLinuxOS fa uso di file “.rpm”, si manipola utilizzando il proprio software di gestione dei pacchetti, apt-rpm. Questo è modellato sul apt-getcomando dal mondo Debian. Viene synapticfornita anche una versione modificata di che funziona con i file “.rpm” invece che con i file “.deb”.

PCLinuxOS utilizza SysV init e fornisce una scelta di  ambienti desktop Plasma , MATE e XFCE durante l’installazione. Esistono alcune edizioni “community remaster” che forniscono altri ambienti desktop, incluso GNOME. La shell predefinita è Bash.

Avvia alcune VM

Il migliore – e l’unico modo, davvero – per vedere se andrai d’accordo con una distribuzione Linux è provarlo. Il modo più semplice per farlo è in una macchina virtuale. Lascia la tua attuale installazione di Linux intatta. Puoi installare e provare tutte le distribuzioni Linux che desideri finché non trovi quella che pensi di voler provare. VirtualBox è perfetto per questo.

Quando sei pronto per installare la tua nuova distribuzione, esegui  diversi backup dell’installazione corrente e poi, e solo allora, installa il tuo nuovo Linux.

 

ARTICOLI COLLEGATI:

ULTIMI ARTICOLI: