Deprecated: Creation of dynamic property Timber\Site::$pingback is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Site.php on line 180

Deprecated: Creation of dynamic property Timber\User::$name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/User.php on line 118

Deprecated: Creation of dynamic property Timber\Post::$has_disclaimer is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_lock is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_last is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_meta_box_present is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_send_notification is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_modify_title_and_content is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_notification_custom_heading is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_notification_custom_content is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$fonte is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_fonte is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$fonte_url is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_fonte_url is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_category is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_blz_affiliation_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_content_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_speciali is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskw is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_metadesc is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_linkdex is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_content_score is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskeywords is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_keywordsynonyms is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_estimated-reading-time-minutes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_wordproof_timestamp is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_thumbnail_id is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$response_body is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_indexnow_last_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_date_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$ping_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_password is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$to_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$pinged is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_content_filtered is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$guid is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$menu_order is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_mime_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_count is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$filter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71
Linux potrebbe dire addio ai bootloader e a GRUB: ecco perché

Linux potrebbe dire addio ai bootloader e a GRUB: ecco perché

Un ingegnere Red Hat spiega che in futuro Linux potrebbe finalmente dire addio alla complessità dei bootloader tradizionali, a partire da GRUB. Il progetto nmblr (no more bootloader) è già piuttosto maturo. Cos'è, come funziona e a che cosa serve.
Linux potrebbe dire addio ai bootloader e a GRUB: ecco perché

Quando si avvia il computer, il bootloader è il primo software ad essere caricato dopo il firmware. Questo componente software si occupa di caricare in memoria il kernel del sistema operativo, qualunque esso sia, e preparare l’ambiente per la sua esecuzione. L’introduzione della funzionalità Secure Boot con il BIOS UEFI ha storicamente creato non pochi problemi alla comunità GNU/Linux e agli utenti del “pinguino”. Lo spieghiamo più avanti.

Marta Lewandowska, ingegnere della qualità presso Red Hat, ha recentemente presentato l’idea di nmbl, no more bootloader. Si tratta di un progetto che mira a semplificare il processo di avvio, migliorare la sicurezza e ridurre la complessità della manutenzione dei sistemi. Nella dimostrazione pubblicata su YouTube, si spiega che non c’è più bisogno di un bootloader come GRUB se le funzionalità di avvio del sistema operativo sono integrate a livello di kernel Linux.

Il ruolo di Secure Boot

Le specifiche di UEFI definiscono un protocollo noto come Secure Boot: garantisce che il sistema si avvii utilizzando solo software verificato e firmato digitalmente. Sui dispositivi UEFI, il processo inizia con una chiave certificata, spesso di Microsoft, che tra l’altro a breve cambierà. Sono in tanti infatti a prevedere un vero e proprio disastro Secure Boot, con tanti PC che entro ottobre 2024 non si avvieranno più.

Dicevamo che in passato tante distribuzioni Linux e molteplici strumenti di terze parti basati su kernel Linux non potevano avviarsi. L’unico modo per farlo era disattivare Secure Boot completamente. Con il tempo, le distro Linux e vari progetti hanno abbracciato il concetto di shim.

La chiave di Microsoft, una delle poche chiavi accettate di default da Secure Boot, è utilizzata per firmare lo shim. Questa pratica consente alle distribuzioni Linux di avviarsi su hardware che utilizza Secure Boot, senza richiedere all’utente di disabilitare la funzionalità di sicurezza. Una volta che shim è avviato, questo carica il bootloader principale, come GRUB, che poi avvia il kernel del sistema operativo. Una procedura cervellotica, lenta e non priva di potenziali problemi.

GRUB è uno dei bootloader più diffusi: è potente e versatile ma estremamente complesso. Deve gestire una molteplicità di file system, configurazioni di rete, linguaggi, e molto altro: tutto questo lo rende simile a un mini sistema operativo con i suoi bug e vulnerabilità di sicurezza.

Come sostituire GRUB e i bootloader in generale con nmbl

nmbl introduce l’idea di un’immagine kernel unificata che include il kernel stesso, la riga di comando del kernel, initramfs e uno stub UEFI. Questo insieme di componenti può essere firmato digitalmente, creando un bootloader sicuro e autosufficiente.

initramfs contiene driver essenziali e script necessari per montare il file system radice; uno stub UEFI è un piccolo programma o una porzione di codice che funge da intermediario tra il firmware UEFI e il kernel Linux.

Con nmbl, è possibile scegliere la modalità switch root che usa lo stesso kernel con cui nmbl è stato costruito, eliminando la necessità di caricare un altro kernel e avviando direttamente il cosiddetto userspace. In alternativa, la modalità Kexec permette di selezionare un kernel diverso tramite un menu simile a GRUB.

Modalità avvio Linux da kernel senza bootloader GRUB

In figura, le due modalità di avvio con nmbl, per superare l’uso dei bootloader tradizionali, a partire da GRUB (fonti: M.Lewandowska, R.Harwood).

I principali vantaggi di nmbl

Il nuovo approccio presentato dalla Lewandowska introduce in prospettiva notevoli miglioramenti sul piano della sicurezza. Tutto il sistema, inclusi kernel e initramfs, è firmato digitalmente.

Inoltre, nmbl riduce la complessità eliminando la necessità di duplicare funzionalità già presenti nel kernel. Con meno codice da gestire rispetto a un bootloader tradizionale, le vulnerabilità e i bug possono essere affrontati più rapidamente ed efficacemente.

Sebbene nmbl sia ancora in fase di sviluppo, Lewandowska conferma che è già in programma la sua integrazione nel processo di build del kernel di Fedora. I passaggi successivi includono il supporto per più architetture e miglioramenti relativi alla gestione della fase di boot.

Credit immagine in apertura: Copilot Designer

Ti consigliamo anche

Link copiato negli appunti