linux-distro-immutabili

🧱 Distribuzioni Linux Immutabili — Guida Completa

Di cosa parla questa guida

Le distribuzioni Linux immutabili (o "atomiche") rappresentano il cambiamento architetturale più importante nel mondo Linux degli ultimi anni. Questa guida spiega cosa sono, come funzionano, perché esistono e quali sono le principali disponibili nel 2026 — dalle opzioni desktop alle soluzioni server e cloud.


Indice


1. Il problema che le distro immutabili risolvono

Il modello tradizionale — e i suoi limiti

Su una distribuzione Linux tradizionale come Ubuntu, Fedora o Arch, il sistema operativo e le applicazioni convivono nello stesso spazio modificabile. Quando installi un pacchetto, aggiorni il sistema o modifichi un file di configurazione, stai cambiando direttamente i file del sistema operativo in esecuzione.

Questo modello è flessibile e diretto, ma porta con sé problemi strutturali:

Aggiornamenti che rompono il sistema. Un aggiornamento interrotto a metà — per un blackout, un errore di rete, un conflitto di dipendenze — può lasciare il sistema in uno stato inconsistente e inutilizzabile. Il caso CrowdStrike del 2024, che ha reso inutilizzabili milioni di macchine Windows in tutto il mondo, è l'esempio più noto, ma situazioni analoghe accadono regolarmente anche su Linux tradizionale.

Deriva della configurazione (configuration drift). Nel tempo, ogni macchina accumula modifiche, pacchetti installati, file di configurazione tweakati, dipendenze aggiunte manualmente. Dopo mesi o anni, il sistema si trova in uno stato unico e irriproducibile. Se devi ricreare quella macchina, non puoi farlo esattamente com'era.

Il problema "sul mio sistema funziona". Lo sviluppatore testa su una macchina con librerie in una certa versione. La pipeline CI usa versioni diverse. Il server di produzione ha ancora qualcosa di diverso. Il risultato è software che si comporta in modo diverso nei diversi ambienti.

Difficoltà di rollback. Se dopo un aggiornamento qualcosa non funziona, tornare indietro richiede di sapere esattamente cosa è cambiato — informazione che spesso non è disponibile in modo preciso.

La risposta del mondo mobile e cloud

Il mondo dei telefoni e del cloud ha risolto questi problemi da tempo. Android e iOS non ti permettono di modificare liberamente il sistema operativo: ricevi aggiornamenti atomici, interi e verificati, e se qualcosa va storto puoi tornare alla versione precedente. I container in produzione funzionano allo stesso modo: si distribuisce un'immagine immutabile, non si modifica il container in esecuzione.

Le distribuzioni Linux immutabili portano questa filosofia sul desktop e sui server tradizionali.


2. Cos'è l'immutabilità — definizione precisa

Definizione

Una distribuzione Linux immutabile è una distribuzione in cui il filesystem del sistema operativo di base (/usr, /bin, /lib, /boot, /etc) è montato in sola lettura durante il normale funzionamento. Non puoi modificare i file di sistema mentre il sistema è in esecuzione — nemmeno come root.

Il termine "immutabile" viene spesso usato insieme ad "atomico":

Immutabile si riferisce alla caratteristica del filesystem: il sistema operativo non cambia durante l'uso normale.

Atomico si riferisce al meccanismo di aggiornamento: gli aggiornamenti vengono applicati come un'operazione "tutto o niente". O l'aggiornamento va a buon fine completamente, o il sistema rimane esattamente com'era prima. Non esiste uno stato intermedio corrotto.

Una precisazione importante

Non tutte le distro che vengono chiamate "immutabili" lo sono allo stesso modo. Il termine è usato in modo abbastanza ampio nel mondo Linux. NixOS, ad esempio, non è immutabile nel senso stretto del filesystem read-only, ma offre riproducibilità dichiarativa con rollback garantito. Vedremo le differenze nella sezione sulla tassonomia.


3. Come funziona tecnicamente

Il modello di aggiornamento atomico

SISTEMA TRADIZIONALE:
─────────────────────────────────────────────────────
 Sistema in uso ──► aggiornamento modifica i file ──► sistema aggiornato
                         (stato intermedio possibile)

SISTEMA IMMUTABILE/ATOMICO:
─────────────────────────────────────────────────────
 Deployment A          Deployment B (nuovo)
 [in uso]       ──►   [preparato in background]
                              │
                           reboot
                              │
                              ▼
                       Deployment B [ora in uso]
                       Deployment A [disponibile per rollback]

Il sistema corrente continua a funzionare normalmente mentre l'aggiornamento viene preparato in parallelo. Al riavvio, il sistema passa al nuovo deployment. Se qualcosa non va, si può avviare il deployment precedente con un comando o dal menu di boot.

Il filesystem stratificato

┌───────────────────────────────────────────────────┐
│              OVERLAY SUPERIORE (R/W)              │
│    Modifiche utente, configurazioni, /home        │
├───────────────────────────────────────────────────┤
│              IMMAGINE BASE (R/O)                  │
│    /usr  /bin  /lib  /etc  /boot  /sbin           │
│    Firmato crittograficamente — non modificabile  │
└───────────────────────────────────────────────────┘

Le applicazioni e i dati dell'utente vivono in uno strato separato, in lettura/scrittura, sopra il sistema operativo immutabile. Questo strato può essere modificato liberamente — è il sistema di base che non cambia.

Il verified boot

Molte distribuzioni immutabili supportano il verified boot: ogni componente del sistema (bootloader, kernel, filesystem) è firmato crittograficamente. All'avvio, ogni strato verifica la firma di quello successivo. Se qualcosa è stato manomesso, il sistema rifiuta di avviarsi. Questo è lo stesso meccanismo usato da Android e ChromeOS.


4. Vantaggi e svantaggi

✅ Vantaggi

Aggiornamenti sicuri e reversibili. Un aggiornamento non può mai rompere il sistema in modo permanente. Se l'aggiornamento crea problemi, un riavvio nel deployment precedente ripristina tutto. La curva di stress degli "update day" su Linux scompare.

Resistenza alla corruzione accidentale. Non puoi cancellare accidentalmente un file di sistema critico, sovrascriverlo con la versione sbagliata o corrompere il sistema durante un'installazione. Il filesystem di base è fisicamente non scrivibile.

Sicurezza migliorata. Un malware che riesce a entrare nel sistema non può modificare i binari di sistema. Al riavvio successivo, il sistema torna pulito. Il filesystem read-only riduce enormemente la superficie di attacco.

Riproducibilità garantita. Due macchine con la stessa versione del sistema sono identiche bit per bit. Non c'è deriva di configurazione. Il debug diventa più semplice perché l'ambiente è predicibile.

Manutenzione ridotta. Gli aggiornamenti sono automatici, silenziosi e sicuri. Non è necessario monitorare il sistema dopo ogni aggiornamento. Ideale per macchine gestite da remoto o di cui non si vuole occuparsi attivamente.

Isolamento delle applicazioni. Le applicazioni vengono installate tramite Flatpak, Snap, container o il gestore di pacchetti dichiarativo (Nix). Sono isolate dal sistema di base e tra loro, riducendo i conflitti di dipendenze.

❌ Svantaggi

Curva di apprendimento. Il modello è diverso da quello tradizionale. Installare software, modificare configurazioni di sistema, personalizzare profondamente il sistema richiedono di imparare nuovi strumenti e nuovi flussi di lavoro.

Personalizzazione limitata del sistema base. Non puoi installare liberamente pacchetti di sistema con apt o dnf. Le modifiche al sistema di base richiedono approcci specifici per ogni distribuzione (layering, rebasing, ricostruzione dell'immagine).

Dimensione degli aggiornamenti. Alcuni sistemi scaricano l'intera immagine del sistema a ogni aggiornamento, non solo le differenze. Questo può significare download più grandi rispetto agli aggiornamenti incrementali tradizionali (anche se molti sistemi hanno ottimizzato questo aspetto con la deduplicazione dei layer).

Ecosistema di applicazioni non sempre completo. Non tutto il software è disponibile come Flatpak o nei repository specifici della distribuzione. Alcune applicazioni di nicchia o enterprise potrebbero richiedere soluzioni alternative.

Riavvii necessari per gli aggiornamenti. A differenza dei sistemi tradizionali dove molti aggiornamenti non richiedono riavvio, i sistemi atomici richiedono un reboot per passare al nuovo deployment.


5. Le tecnologie sottostanti

OSTree / rpm-ostree

OSTree è essenzialmente "git per il tuo filesystem": traccia tutti i file del sistema operativo come commit, permettendo di passare da una versione all'altra e di tornare indietro in modo preciso. È la tecnologia alla base di Fedora Atomic, Silverblue, Kinoite, Bazzite, Bluefin e molte altre distribuzioni.

rpm-ostree combina OSTree con il gestore di pacchetti RPM di Fedora: il sistema base viene gestito con OSTree (atomicamente), ma è possibile "sovrapporre" pacchetti RPM aggiuntivi sopra l'immagine base quando necessario.

# Comandi rpm-ostree principali
rpm-ostree status              # mostra i deployment disponibili
rpm-ostree upgrade             # prepara l'aggiornamento (applicato al riavvio)
rpm-ostree rollback            # torna al deployment precedente
rpm-ostree install pacchetto   # installa un pacchetto RPM sopra l'immagine base
rpm-ostree override replace    # sostituisce un pacchetto dell'immagine base

Aggiornamenti basati su immagini OCI

Lo stesso modello OSTree esteso nella distribuzione di immagini OCI è una delle aree in più rapida crescita nel 2025-2026. Distribuzioni come Bazzite e l'intero ecosistema Universal Blue distribuiscono il sistema operativo come immagini OCI (lo stesso formato dei container Docker), permettendo di costruire immagini personalizzate sopra quelle ufficiali con strumenti familiari agli sviluppatori.

Btrfs + Snapshot + Transactional Updates

openSUSE MicroOS usa un approccio diverso: il filesystem Btrfs con i suoi snapshot nativi. Ogni aggiornamento crea uno snapshot del filesystem, che diventa il sistema attivo al riavvio. Se l'aggiornamento fallisce, si torna allo snapshot precedente. Il tool transactional-update gestisce questo processo.

# Comandi transactional-update (openSUSE MicroOS)
transactional-update                  # applica gli aggiornamenti disponibili
transactional-update shell            # shell nel nuovo snapshot (per modifiche)
transactional-update pkg install pkg  # installa un pacchetto nel nuovo snapshot
snapper list                          # elenca gli snapshot Btrfs

Nix e il Nix Store

NixOS usa un approccio radicalmente diverso. Il gestore di pacchetti Nix installa ogni pacchetto in un percorso unico e immutabile in /nix/store, calcolato dall'hash delle sue dipendenze esatte. Due versioni dello stesso pacchetto con dipendenze diverse coesistono senza conflitti. Il sistema è definito dichiarativamente in un file di configurazione, e ogni "generazione" del sistema è riproducibile esattamente.

# Comandi NixOS principali
nixos-rebuild switch        # applica la configurazione corrente
nixos-rebuild test          # applica senza renderla permanente
nixos-rebuild boot          # applica al prossimo riavvio
nixos-rebuild rollback      # torna alla generazione precedente
nix-env --list-generations  # elenca le generazioni disponibili

Flatpak

Flatpak è il sistema di distribuzione delle applicazioni standard per le distro immutabili desktop. Le applicazioni vengono eseguite in sandbox isolate, con le proprie dipendenze incluse, senza toccare il sistema di base. Funziona su qualsiasi distribuzione Linux indipendentemente dalla base.


6. Tassonomia — non tutte le distro immutabili sono uguali

Le distribuzioni immutabili si dividono in categorie con approcci molto diversi:

DISTRO IMMUTABILI
│
├── IMAGE-BASED (filesystem read-only vero)
│   ├── OSTree/rpm-ostree ── Fedora Silverblue, Kinoite, Bazzite, Bluefin
│   ├── Btrfs + Transactional ── openSUSE MicroOS, Aeon
│   ├── Snap-based ── Ubuntu Core
│   ├── SquashFS ── Talos Linux, SteamOS
│   └── OSTree + Debian ── Endless OS, VanillaOS 2
│
├── DICHIARATIVE/RIPRODUCIBILI (non image-based in senso stretto)
│   ├── Nix Store ── NixOS, GNU Guix
│   └── moss (nuovo) ── AerynOS
│
└── CONTAINER HOST (per eseguire container, non uso desktop)
    ├── Flatcar Container Linux
    ├── Bottlerocket (AWS)
    └── Talos Linux (Kubernetes)
La distinzione chiave

Le distro image-based hanno un filesystem di base fisicamente read-only: non puoi scrivere in /usr nemmeno come root. Le distro dichiarative come NixOS ti permettono di modificare il sistema, ma ogni modifica viene tracciata, versionata e può essere annullata. NixOS non è "immutabile" in senso stretto, ma offre garanzie di riproducibilità e rollback molto forti.


7. Distro Desktop

🥇 Fedora Silverblue

Base RPM · OSTree · Desktop GNOME · Sviluppatori e utenti avanzati

La più matura distro desktop immutabile. Usa rpm-ostree per aggiornamenti atomici e Toolbox per i container di sviluppo. Silverblue è la versione immutabile di Fedora Workstation: stessa interfaccia GNOME, stessa esperienza utente, ma con il sistema base completamente read-only.

Le applicazioni si installano tramite Flatpak. Per le esigenze di sviluppo si usano i Toolbox (o Distrobox): container basati su qualsiasi distribuzione Linux, integrati nel terminale, dove si può installare qualsiasi cosa senza toccare il sistema base.

# Aggiornamento del sistema base
rpm-ostree upgrade
systemctl reboot  # per applicare

# Installare un'applicazione
flatpak install flathub org.libreoffice.LibreOffice

# Creare un container di sviluppo (Toolbox)
toolbox create --distro fedora --release 42
toolbox enter
# dentro il toolbox: puoi installare qualsiasi pacchetto dnf

# Tornare alla versione precedente
rpm-ostree rollback
Caratteristica Dettaglio
Base Fedora
Tecnologia rpm-ostree + OSTree
Desktop GNOME
App Flatpak (principale) + rpm-ostree layering
Sviluppo Toolbox / Distrobox
Aggiornamento Automatico in background, attivo al reboot
Rollback Sì, al reboot precedente
Target Sviluppatori, utenti che vogliono stabilità

🎨 Fedora Kinoite

Base RPM · OSTree · Desktop KDE Plasma · Alternativa a Silverblue

La variante KDE Plasma di Fedora Atomic. Tecnicamente identica a Silverblue (stesso sistema OSTree, stesso rpm-ostree), ma con KDE Plasma invece di GNOME. Per chi preferisce l'ambiente KDE vuole comunque il modello immutabile di Fedora.


🌊 Fedora Atomic — Le altre varianti

Fedora Atomic ha diverse edizioni, ciascuna distinta per l'ambiente desktop o il window manager in uso: Fedora Budgie Atomic, Fedora COSMIC Atomic, Fedora Sway Atomic, oltre a Silverblue (GNOME) e Kinoite (KDE).

Tutte condividono la stessa base tecnica OSTree/rpm-ostree e differiscono solo per il desktop preinstallato:

Variante Desktop Note
Silverblue GNOME La più diffusa
Kinoite KDE Plasma Per gli amanti di KDE
Sericea Sway (tiling) Per utenti avanzati
Onyx Budgie Desktop elegante
COSMIC Atomic COSMIC Desktop scritto in Rust

🦋 Project Bluefin

Base Fedora Atomic · Universal Blue · Desktop GNOME · Sviluppatori

Bluefin è presentata come una "cloud-native developer workstation". Viene fornita con Docker, Podman, Tailscale e VS Code preinstallati. È costruita sopra Fedora Silverblue usando l'infrastruttura Universal Blue, che permette di distribuire immagini OCI personalizzate di Fedora Atomic con un set di strumenti e configurazioni predefinite.

Bluefin punta a essere la distribuzione perfetta per gli sviluppatori che vogliono un sistema che "non si rompe mai" con tutti gli strumenti di sviluppo già pronti. Gli aggiornamenti avvengono automaticamente in background, come un telefono: l'utente non deve preoccuparsi della manutenzione del sistema.

# Bluefin usa ujust per i comandi di gestione
ujust update           # aggiorna il sistema
ujust rollback         # rollback all'immagine precedente
ujust distrobox-setup  # configura Distrobox per lo sviluppo

# Rebase su una variante diversa (es. Bluefin DX con strumenti developer)
rpm-ostree rebase ostree-image-signed:docker.io/ublue-os/bluefin-dx:latest
Caratteristica Dettaglio
Base Fedora Atomic (Silverblue)
Progetto Universal Blue
Desktop GNOME
Preinstallato Docker, Podman, VS Code, Tailscale, 1Password
Aggiornamento Automatico e silenzioso
Target Sviluppatori che vogliono zero manutenzione

🌙 Aurora

Base Fedora Atomic · Universal Blue · Desktop KDE Plasma · Sviluppatori

Aurora è parte del progetto Universal Blue, costruita sulla tecnologia Fedora Atomic. Applica gli aggiornamenti come una singola immagine atomica. È la variante KDE Plasma di Bluefin: stessa filosofia, stesso progetto, ma con KDE invece di GNOME.


🍦 VanillaOS 2 "Orchid"

Base Debian · ABRoot2 · Desktop GNOME · Utenti generici

VanillaOS è una delle poche distribuzioni immutabili basate su Debian anziché Fedora. Usa una tecnologia proprietaria chiamata ABRoot2: mantiene due partizioni di sistema (A e B). Gli aggiornamenti vengono applicati alla partizione inattiva; al riavvio si passa alla nuova partizione. Se qualcosa va storto, si torna alla partizione precedente.

La versione 2 "Orchid" ha reescritto quasi tutto da zero rispetto alla v1, usando ABRoot2 (più stabile) e puntando a un'esperienza utente molto pulita e semplice.

# Gestione con ABRoot
abroot pkg add nome-pacchetto   # installa un pacchetto nella partizione di sistema
abroot pkg remove nome-pacchetto
abroot update                   # aggiorna il sistema

# Apx — strumento per ambienti container di sviluppo
apx install nome-pacchetto      # installa in un container integrato
apx run comando                 # esegui un comando nel container
Caratteristica Dettaglio
Base Debian
Tecnologia ABRoot2 (partizioni A/B)
Desktop GNOME
App Flatpak (principale) + Apx (container)
Target Utenti generici, chi arriva da Ubuntu

📖 Endless OS

Base Debian · OSTree · Desktop GNOME personalizzato · Utenti offline

Endless OS è una distribuzione Linux basata su Debian. A differenza di altre distro Debian-based, Endless OS presenta un design robusto con l'immutabilità al centro per garantire che l'aggiornamento di un pacchetto non rompa il sistema.

Endless OS è pensata soprattutto per mercati emergenti e per utenti con connessione internet limitata o assente. Include una vasta raccolta di contenuti offline (Wikipedia, enciclopedie, materiali educativi) e un'interfaccia GNOME semplificata. È una delle distro immutabili più adatte per utenti non tecnici o per scuole.


🐧 openSUSE Aeon (ex MicroOS Desktop)

Base openSUSE · Btrfs + Transactional · Desktop GNOME

Costruito su openSUSE Tumbleweed, MicroOS offre aggiornamenti transazionali e un filesystem radice immutabile basato su Btrfs. Aeon è la variante desktop di MicroOS: usa il rolling release di Tumbleweed come base, ma con aggiornamenti transazionali e rollback tramite snapshot Btrfs.

La filosofia di Aeon è minimalismo: fornisce un sistema base il più piccolo possibile (solo GNOME + Flatpak + strumenti essenziali), lasciando all'utente di installare quello che serve tramite Flatpak o container.


🔮 NixOS

Indipendente · Nix Store · Multi-desktop · Utenti avanzati

NixOS è la distribuzione più radicalmente diversa di questa lista. Non è "immutabile" nel senso del filesystem read-only, ma offre qualcosa di più potente: configurazione dichiarativa e riproducibile. L'intero sistema — pacchetti installati, configurazioni, servizi systemd, utenti, variabili d'ambiente — è definito in un unico file /etc/nixos/configuration.nix (o in una raccolta di file con i Flakes).

Nix non è immutabile, è riproducibile. Nix è il sistema più mutabile di questa lista. Tenta di rendere ogni mutazione sicura, tramite il packaging Nix, il che significa che tutti i cambiamenti sono isolati e versionati. Ciò che Nix offre è la garanzia che se dichiari qualcosa in un flake, puoi ricostruirlo ovunque, in qualsiasi momento, identicamente.

# /etc/nixos/configuration.nix — esempio
{ config, pkgs, ... }:
{
  # Il sistema operativo è completamente dichiarato qui
  boot.loader.grub.enable = true;
  networking.hostName = "mio-nixos";

  # Utenti
  users.users.mario = {
    isNormalUser = true;
    extraGroups = [ "wheel" "docker" ];
  };

  # Pacchetti di sistema
  environment.systemPackages = with pkgs; [
    vim git curl firefox neovim
  ];

  # Servizi
  services.openssh.enable = true;
  services.docker.enable = true;

  # Desktop
  services.xserver.enable = true;
  services.xserver.desktopManager.gnome.enable = true;
}
# Applica la configurazione
sudo nixos-rebuild switch

# Torna alla configurazione precedente
sudo nixos-rebuild rollback

# Lista delle generazioni
nix-env --list-generations --profile /nix/var/nix/profiles/system
Caratteristica Dettaglio
Base Indipendente
Tecnologia Nix Store, generazioni
Desktop Qualsiasi (configurabile)
Modello Dichiarativo, non image-based
Rollback Per generazione (non per immagine)
Target Utenti avanzati, DevOps, homelab
Difficoltà Alta — curva di apprendimento significativa

🐂 GNU Guix System

Indipendente · Guix Store · Multi-desktop · Utenti avanzati/libero software

GNU Guix è il "fratello spirituale" di NixOS nel mondo del software libero. Usa il gestore di pacchetti Guix (scritto in Guile Scheme) con la stessa filosofia dichiarativa e riproducibile di Nix. È l'unica distribuzione della lista che include solo software completamente libero per default ed è ufficialmente riconosciuta dalla Free Software Foundation.


8. Distro per Gaming

🎮 Bazzite

Base Fedora Atomic · Universal Blue · Gaming · Steam Deck e PC

Costruita sulla tecnologia Fedora Atomic, Bazzite fornisce un'esperienza simile a una console sul PC. Supporta HDR (un ostacolo superato alla fine del 2025). Viene fornita preconfigurata con EmuDeck, ProtonUp-Qt e driver proprietari.

Bazzite è diventata la distribuzione di riferimento per il gaming su Linux nel 2025-2026. È costruita sopra Fedora Atomic (come Bluefin) ma ottimizzata per il gaming: include Steam, Proton GE, Lutris, Heroic Launcher, driver NVIDIA e AMD preconfigurati, codec multimedia, e supporto nativo per l'hardware handheld (Steam Deck, ROG Ally, Legion Go).

Valve ha spedito 5,6 milioni di Steam Deck che eseguono SteamOS, un sistema immutabile dove il filesystem root è in sola lettura. Bazzite porta la stessa filosofia sui PC desktop e laptop.

# Bazzite usa ujust come Bluefin
ujust update           # aggiorna il sistema
ujust setup-gaming     # configura strumenti gaming aggiuntivi

# Rebase su varianti specifiche per hardware
rpm-ostree rebase ostree-image-signed:ghcr.io/ublue-os/bazzite:latest
rpm-ostree rebase ostree-image-signed:ghcr.io/ublue-os/bazzite-deck:latest  # Steam Deck
Caratteristica Dettaglio
Base Fedora Atomic (Universal Blue)
Desktop GNOME o KDE Plasma
Target Gamer, utenti Steam Deck, handheld PC
Preinstallato Steam, Proton GE, Lutris, EmuDeck, driver GPU
Aggiornamento Atomico, stesso modello di Silverblue

🕹️ SteamOS 3

Base Arch · SquashFS · Gaming · Steam Deck (ufficiale Valve)

SteamOS 3 è il sistema operativo ufficiale dello Steam Deck di Valve. Usa un approccio immutabile con partizioni A/B: il sistema di base è read-only, e gli aggiornamenti vengono applicati alla partizione inattiva. In modalità Desktop espone un Arch Linux con KDE Plasma; in modalità Gaming avvia direttamente Steam Big Picture.

Non è ufficialmente disponibile per hardware diverso dallo Steam Deck, ma il progetto Bazzite ne riprende la filosofia per hardware generico.


9. Distro per Server e Container

🦺 Fedora CoreOS (FCOS)

Base Fedora · OSTree · Server/Container · Kubernetes, container workloads

FCOS è l'implementazione server di ostree. Silverblue è quella desktop. Fedora CoreOS è progettata per eseguire container in produzione: è minimalista (nessun gestore di pacchetti per uso normale, solo i tool necessari per i container), aggiornata automaticamente, e configurata tramite file Ignition all'avvio.

# Esempio di configurazione Ignition (provision al primo avvio)
variant: fcos
version: 1.5.0
passwd:
  users:
    - name: core
      ssh_authorized_keys:
        - ssh-ed25519 AAAA... utente@host
systemd:
  units:
    - name: docker.service
      enabled: true

🐋 Flatcar Container Linux

Base CoreOS · Indipendente · Server/Container · AWS, GCP, Azure, bare metal

Adobe esegue 20.000+ nodi Flatcar in produzione su Kubernetes. Flatcar è il successore spirituale del defunto CoreOS (l'originale, prima di Red Hat). È pensata esclusivamente per eseguire container: nessun gestore di pacchetti, filesystem di sistema read-only, aggiornamenti automatici con A/B rollback.

Flatcar è molto diffusa in ambienti cloud enterprise come host Kubernetes su AWS, GCP e Azure. La configurazione avviene tramite Ignition o cloud-init al provisioning.


⚙️ Bottlerocket (AWS)

Base Fedora · Amazon · Server/Container · AWS nativo

Bottlerocket è la distribuzione Linux creata da Amazon Web Services per eseguire container in produzione su AWS (EKS, ECS). Come Flatcar, è minimale, immutabile e senza gestore di pacchetti tradizionale. È ottimizzata specificamente per l'infrastruttura AWS e non ha senso usarla fuori da quell'ecosistema.


🤖 Talos Linux

Indipendente · Kubernetes-only · SquashFS · Altamente sicuro

Talos Linux, che viene distribuito con meno di 50 binari e senza SSH, esegue l'edge computing in catene di vendita al dettaglio, casinò e fabbriche.

Talos è la distribuzione immutabile più radicale della lista: non ha shell, non ha SSH, non ha console di accesso. È un OS gestito esclusivamente tramite API con talosctl. Dopo il boot, solo etcd, kubelet e containerd sono in esecuzione. Gli altri processi sono isolati.

È progettata esclusivamente come nodo Kubernetes: non è un sistema operativo per uso generico, ma una piattaforma ottimizzata e ultra-sicura per eseguire cluster Kubernetes in produzione.

# Talos si gestisce completamente da remoto con talosctl
talosctl version --nodes 10.0.0.1
talosctl health --nodes 10.0.0.1
talosctl upgrade --nodes 10.0.0.1 --image ghcr.io/siderolabs/talos:v1.9.0
talosctl reboot --nodes 10.0.0.1

🔵 openSUSE MicroOS (Server)

Base openSUSE · Btrfs + Transactional · Server/Container/IoT

La variante server di openSUSE MicroOS è progettata per hosting di container e workload Kubernetes. Usa lo stesso modello Btrfs + transactional-update della versione desktop, ma con un profilo minimale orientato al server.


10. Distro Dichiarative e Riproducibili

🧊 NixOS (con Flakes)

Già trattato nella sezione desktop, NixOS merita un approfondimento in questo contesto. Con i Flakes (il sistema moderno di gestione delle dipendenze di Nix), si può definire l'intero sistema in un repository Git: versioni esatte di tutti i pacchetti, configurazioni, servizi. Due macchine configurate con lo stesso flake sono identiche bit per bit. Il sistema può essere ricostruito da zero in qualsiasi momento.

Questo lo rende molto popolare per:

🐃 GNU Guix System

Come NixOS ma nella tradizione GNU. Usa Guile Scheme come linguaggio di configurazione invece di una sintassi proprietaria. Offre garanzie ancora più forti di riproducibilità grazie alle build bootstrap verificabili dalla sorgente.


11. Distro per IoT, Edge e Embedded

🟠 Ubuntu Core

Base Ubuntu · Snap · IoT/Edge/Embedded · Canonical

Ubuntu Core è la versione di Canonical di un sistema operativo immutabile ottimizzato per IoT e applicazioni cloud. Usa pacchetti Snap per la gestione delle applicazioni, incoraggiando aggiornamenti sicuri e isolati.

Ubuntu Core usa i pacchetti Snap non solo per le applicazioni, ma anche per il kernel, il gadget e lo stesso sistema operativo. Ogni componente è aggiornabile indipendentemente e firmato crittograficamente. È la piattaforma scelta da Canonical per IoT industriale, dispositivi edge e kiosk.

🏭 Torizon OS

Base Debian · Toradex · Embedded/Industriale

Torizon OS è una distribuzione immutabile per dispositivi embedded industriali. Supporta architetture 32-bit ARM, 64-bit ARM, 64-bit Intel/AMD e RISC-V. È sviluppata da Toradex ed è pensata per prodotti industriali dove la stabilità e la predicibilità a lungo termine sono critiche.

⚡ Clear Linux

Base Intel · Indipendente · Server/Cloud · Ottimizzazione performance

Clear Linux è una distribuzione sviluppata da Intel con focus estremo sulle performance. Usa un sistema di aggiornamento atomico (bundle-based, non rpm/deb) ed è ottimizzata specificamente per hardware Intel. Spesso usata come riferimento per benchmark di performance.


12. Tabella comparativa generale

Distribuzione Base Tecnologia Target Desktop Difficoltà
Fedora Silverblue Fedora rpm-ostree Desktop dev GNOME Media
Fedora Kinoite Fedora rpm-ostree Desktop dev KDE Media
Bluefin Fedora Atomic OCI/Universal Blue Dev workstation GNOME Bassa
Aurora Fedora Atomic OCI/Universal Blue Dev workstation KDE Bassa
Bazzite Fedora Atomic OCI/Universal Blue Gaming GNOME/KDE Bassa
VanillaOS 2 Debian ABRoot2 Desktop generico GNOME Bassa
openSUSE Aeon Tumbleweed Btrfs+Transactional Desktop GNOME Media
Endless OS Debian OSTree Non tecnici/offline GNOME custom Bassissima
SteamOS 3 Arch A/B partitions Gaming/Steam Deck KDE/Steam Bassa
NixOS Indip. Nix Store Avanzati/homelab Qualsiasi Alta
GNU Guix Indip. Guix Store Avanzati/libero Qualsiasi Alta
Fedora CoreOS Fedora OSTree Container/server Nessuno Media
Flatcar CoreOS A/B read-only Container/cloud Nessuno Media
Bottlerocket Fedora A/B Container AWS Nessuno Media
Talos Linux Indip. SquashFS Kubernetes Nessuno Alta
openSUSE MicroOS Tumbleweed Btrfs+Transactional Container/IoT Nessuno/GNOME Media
Ubuntu Core Ubuntu Snap IoT/Edge Nessuno Media

13. Come si installano le applicazioni

Questa è la domanda più comune da chi si avvicina alle distro immutabili. La risposta dipende dalla distribuzione, ma il pattern generale è:

Flatpak — la risposta principale per il desktop

Flatpak è il metodo raccomandato per installare applicazioni grafiche su qualsiasi distro immutabile desktop. Le applicazioni sono sandboxate, indipendenti dal sistema di base, e disponibili per tutte le distribuzioni.

# Aggiunta del repository Flathub (se non già presente)
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

# Ricerca
flatpak search firefox

# Installazione
flatpak install flathub org.mozilla.firefox
flatpak install flathub com.spotify.Client
flatpak install flathub com.visualstudio.code

# Aggiornamento
flatpak update

# Rimozione
flatpak uninstall org.mozilla.firefox

Toolbox / Distrobox — per gli sviluppatori

Per installare strumenti di sviluppo, compilatori, librerie, o qualsiasi cosa non disponibile come Flatpak, si usano container integrati nel terminale.

# Toolbox (integrato in Fedora Atomic)
toolbox create --distro fedora --release 42
toolbox enter fedora-toolbox-42
# Dentro: dnf install gcc python3-devel nodejs ...

# Distrobox (più flessibile, disponibile su tutte le distro)
distrobox create --name ubuntu-dev --image ubuntu:24.04
distrobox enter ubuntu-dev
# Dentro: apt install build-essential python3 ...

# Esporta applicazioni installate nel container al desktop host
distrobox-export --app firefox
distrobox-export --bin /usr/bin/gcc

rpm-ostree layering (Fedora Atomic)

Per pacchetti di sistema non disponibili come Flatpak e non adatti a un container, si può "sovrapporre" un pacchetto RPM all'immagine base. Questa operazione richiede un riavvio e aumenta leggermente il tempo degli aggiornamenti.

# Installa un pacchetto sopra l'immagine base
rpm-ostree install htop vim-enhanced bash-completion

# Riavvia per applicare
systemctl reboot

# Rimuovi un pacchetto sovrapposto
rpm-ostree uninstall htop
Usare il layering con moderazione

Il layering è pensato per casi eccezionali (driver, firmware, strumenti di basso livello). Se lo usi troppo, perdi i benefici dell'immutabilità. Per la maggior parte delle esigenze usa Flatpak o container.

Nix (su NixOS e anche su altre distro)

# Installa un pacchetto (temporaneo nella sessione)
nix-shell -p python3 nodejs

# Installa permanentemente nel profilo utente
nix-env -iA nixpkgs.firefox

# Su NixOS: aggiungi alla configurazione dichiarativa
# In /etc/nixos/configuration.nix:
environment.systemPackages = with pkgs; [ firefox vim git ];
# Poi applica:
sudo nixos-rebuild switch

14. Per chi sono adatte

Scegli una distro immutabile se...

  • Vuoi un sistema che non si rompa mai dopo gli aggiornamenti
  • Usi il sistema per lavoro e non puoi permetterti downtime improvvisi
  • Vuoi zero manutenzione: aggiornamenti automatici e sicuri senza dover supervisionare
  • Il tuo flusso di lavoro è già basato su container (Docker, Podman, Kubernetes)
  • Gestisci macchine per altri (familiari, scuole) e non vuoi essere chiamato per riparare il sistema
  • Vuoi esplorare il futuro del Linux desktop

Evita le distro immutabili se...

  • Hai bisogno di installare molti software di sistema non disponibili come Flatpak
  • Lavori con software legacy che richiede modifiche profonde al sistema
  • Hai bisogno di configurazioni di sistema molto specifiche e non standard
  • Non vuoi imparare un nuovo modello di gestione del software
  • Il tuo hardware richiede driver molto specifici non inclusi nell'immagine base

Guida alla scelta rapida

Sei un developer che vuole zero manutenzione?
  └─► Bluefin (GNOME) o Aurora (KDE)

Sei un gamer?
  └─► Bazzite

Vuoi Fedora "classica" ma immutabile?
  └─► Silverblue (GNOME) o Kinoite (KDE)

Vieni da Ubuntu e vuoi qualcosa di familiare?
  └─► VanillaOS 2 o Endless OS

Vuoi massima riproducibilità e non ti spaventa la complessità?
  └─► NixOS

Devi eseguire container su server/cloud?
  └─► Fedora CoreOS, Flatcar, o Bottlerocket (AWS)

Devi gestire un cluster Kubernetes con massima sicurezza?
  └─► Talos Linux

Dispositivi IoT o embedded?
  └─► Ubuntu Core o Torizon OS

15. Il futuro delle distribuzioni immutabili

Uno dei più grandi cambiamenti nel 2026 è l'adozione mainstream delle distribuzioni immutabili (atomiche). Questa tecnologia, mutuata dall'infrastruttura server e dai telefoni cellulari (Android/iOS), sta rendendo il desktop Linux praticamente indistruttibile.

Il trend è chiaro e accelera:

OCI come formato di distribuzione. Il futuro degli aggiornamenti delle distro immutabili è distribuire il sistema operativo come immagini OCI (container), permettendo a chiunque di costruire varianti personalizzate con strumenti familiari. Bluefin, Aurora e Bazzite lo fanno già. Il progetto bootc (boot from container) di Red Hat sta standardizzando questo approccio.

Verified boot mainstream. Il supporto per il verified boot (catena di fiducia crittografica dal firmware al filesystem) sta diventando comune anche sulle distro desktop, non solo su ChromeOS e Android.

Convergenza desktop/server. I confini tra "distro per container" e "distro desktop" si assottigliano. Il modello immutabile funziona bene in entrambi i contesti, e le tecnologie convergono.

Adozione enterprise. Per il 99% degli utenti non tecnici, un OS immutabile è la scelta corretta nel 2026. Separa le applicazioni disordinate dell'utente dai file di sistema critici. Questo posizionamento sta portando le distro immutabili verso scenari aziendali dove la standardizzazione e la gestibilità remota sono priorità.


Nota finale

Il termine "immutabile" nel mondo Linux copre un ampio spettro di approcci tecnici diversi. Questa guida usa il termine nel suo senso ampio e comune, che include sia i sistemi con filesystem read-only vero (Silverblue, Flatcar, Ubuntu Core) sia i sistemi dichiarativi/riproducibili (NixOS, Guix). Per una distinzione tecnica precisa, la sezione Tassonomia chiarisce le differenze.

Guida aggiornata a luglio 2026.