L'azienda Canonical ha presentato il rilascio di Ubuntu Core 24, una versione compatta della distribuzione Ubuntu, adattata per l'uso su dispositivi IoT, in contenitori, attrezzature di consumo e industriali. Ubuntu Core viene fornito come un'immagine monolitica indivisibile del sistema base, senza suddivisione in singoli pacchetti deb. Le immagini di Ubuntu Core 24, il cui contenuto è sincronizzato con la base dei pacchetti di Ubuntu 24.04, sono pronte per i sistemi x86_64 e ARM64 (nel comunicato è stata annunciata anche la compatibilità con RISC-V, ma le build non sono ancora disponibili). Il periodo di supporto per il rilascio sarà di 12 anni.
Ubuntu Core serve da base per l'esecuzione di componenti aggiuntivi e applicazioni, che vengono presentati come estensioni autosufficienti nel formato snap. I componenti di Ubuntu Core, inclusi il sistema base, il kernel Linux e le estensioni di sistema, sono anch'essi forniti in formato snap e gestiti dallo strumento snapd. La tecnologia Snappy consente di formare l'immagine del sistema come un'unica entità, senza la suddivisione in singoli pacchetti. Invece dell'aggiornamento graduale a livello di singoli pacchetti deb, Ubuntu Core utilizza un meccanismo di aggiornamento atomico dei pacchetti snap e del sistema base, simile a Fedora Atomic, ChromeOS, Endless e openSUSE Leap Micro. Durante l'aggiornamento dell'ambiente base e dei pacchetti snap è possibile ripristinare lo stato a una versione precedente in caso di problemi rilevati dopo l'aggiornamento.
Per garantire la sicurezza, ogni componente del sistema viene verificato tramite firma digitale, il che contribuisce a proteggere la distribuzione da modifiche nascoste o dall'installazione di pacchetti snap non verificati. I componenti forniti in formato Snap vengono isolati tramite AppArmor e Seccomp, creando un'ulteriore barriera di protezione del sistema in caso di compromissione di singole applicazioni. Il sistema base include solo il set minimo necessario di applicazioni, riducendo così non solo la dimensione dell'ambiente di sistema, ma contribuendo anche a migliorare la sicurezza riducendo i vettori possibili per attacchi.
Il filesystem di base è montato in modalità sola lettura. È possibile utilizzare di dati sul dispositivo di archiviazione utilizzando il TPM. Gli aggiornamenti vengono rilasciati regolarmente, forniti in modalità OTA (over-the-air) e sincronizzati con la distribuzione di Ubuntu 24.04. Per ridurre il traffico, gli aggiornamenti vengono forniti in formato compresso e includono solo le modifiche rispetto all'aggiornamento precedente (aggiornamenti delta). L'automazione dell'installazione degli aggiornamenti risolve i problemi di sicurezza del sistema quando è utilizzato su dispositivi embedded.
Grazie alla separazione logica del sistema di base dalle applicazioni, gli sviluppatori di Ubuntu si occupano dell'aggiornamento della base di codice di Ubuntu Core, mentre la responsabilità per la pertinenza delle applicazioni aggiuntive ricade sui loro sviluppatori. Questo approccio consente di ridurre i costi di manutenzione dei prodotti il cui ambiente software è basato su Ubuntu Core, poiché ai loro produttori non è richiesto di occuparsi del rilascio e della distribuzione degli aggiornamenti di sistema e possono concentrarsi solo sui propri componenti specifici.
Novità principali:
- È stata aggiunta la supporto per le liste verificate (Validation set), che definiscono quali applicazioni e quali delle loro versioni possono essere installate insieme, creando una combinazione di versioni software verificata. Le liste sono sigillate con una firma digitale e distribuite con la fornitura degli aggiornamenti.
- Per i dispositivi di particolare importanza, come le attrezzature mediche, è prevista la possibilità di disabilitare qualsiasi richiesta di rete automatica durante l'inizializzazione del dispositivo.
- È stata aggiunta la possibilità di installare aggiornamenti in modalità offline su dispositivi isolati da Internet.
- Sono state implementate funzionalità per supportare la modalità grafica e l'uso della GPU, che può essere utilizzata sia per accelerare l'elaborazione grafica sia per i calcoli nella risoluzione di problemi di apprendimento automatico. Sono inclusi gli ultimi driver grafici.
- È stata aggiunta la supporto per l'interfaccia grafica Ubuntu Frame, progettata per la creazione di chioschi internet, terminali self-service, bacheche informative, insegne digitali, specchi intelligenti, schermi industriali e altre applicazioni simili. Ubuntu Frame può essere utilizzato per eseguire applicazioni basate su GTK, Qt, Flutter e SDL2, oltre a programmi basati su Java, HTML5 ed Electron. È possibile avviare sia applicazioni compilate con supporto Wayland sia programmi basati sul protocollo X11 (utilizza Xwayland).
- È stata implementata l'integrazione con il servizio Landscape, che fornisce un'interfaccia web per la gestione di grandi gruppi di workstation, server e di ambienti cloud. Con Landscape è possibile automatizzare l'esecuzione di operazioni tipiche di amministrazione del sistema, relative a un gruppo di macchine, come monitoraggio, audit, gestione centralizzata degli aggiornamenti OTA, fornitura di un unico punto di autenticazione (SSO) e gestione degli accessi.
- Sono stati aggiunti pacchetti snap per integrare dispositivi basati su Ubuntu Core con i servizi Microsoft Azure IoT Edge.
- Sono stati aggiunti pacchetti snap con diverse utility e librerie dal progetto ROS (Robot Operating System), che sviluppa strumenti per la creazione di robot.
- È stato aggiunto il supporto per la modifica dinamica dei parametri della riga di comando del kernel.
- È stata fornita la possibilità di sostituire lo splash screen visualizzato durante il boot.
- È stato aggiunto un'interfaccia console opzionale console-conf per la configurazione dei parametri di connessione di rete e degli account.
Fonte: opennet.ru
