Dopo aver sistemato WiFi, keyring e hibernazione sul mio ThinkPad, l’ultima cosa che mi dava fastidio era puramente estetica ma mi irritava a ogni accensione: all’avvio scorrevano tutti i classici messaggi del kernel, e in particolare uno si ripeteva per tre quarti di schermo prima che GRUB e poi il sistema partissero davvero. Funzionalmente non cambiava nulla, ma è molto più piacevole vedere il logo Lenovo al boot invece di un muro di testo tecnico che nessuno legge davvero ogni giorno.
La soluzione tocca due strumenti diversi che lavorano insieme: GRUB (che decide cosa mostrare prima che parta il kernel) e Plymouth (che gestisce la schermata grafica durante il caricamento del sistema). Ecco esattamente cosa ho configurato.
Questa guida fa parte del percorso completo su Debian 13 Trixie su ThinkPad.
Cosa serve prima di iniziare
- Un sistema Debian (o derivata) con GRUB come bootloader — è il caso standard di quasi tutte le installazioni
- Plymouth non ancora installato o configurato con un tema
Passo 1: installa Plymouth
sudo apt update
sudo apt install plymouth plymouth-themes
Il pacchetto plymouth-themes include diversi temi già pronti, incluso quello che ho usato io.
Passo 2: scegli il tema BGRT (mostra il logo del produttore)
Se hai un PC con un logo firmware ben visibile all’avvio (come capita spesso sui Lenovo, ma anche su altri brand), il tema che fa al caso tuo si chiama BGRT (Boot Graphics Resource Table). La particolarità di questo tema è che legge il logo direttamente dal firmware UEFI del tuo PC, invece di usare un’illustrazione generica — è il motivo per cui, una volta attivato, vedi proprio il logo Lenovo (o quello del tuo produttore) invece di un’animazione Plymouth standard.
Puoi vedere i temi disponibili con:
plymouth-set-default-theme --list
Per impostare BGRT e rigenerare subito l’initramfs (necessario perché il tema venga effettivamente usato al prossimo boot):
sudo plymouth-set-default-theme -R bgrt
Il flag -R fa entrambe le cose in un solo comando: imposta il tema e rigenera l’initramfs. Senza questo flag il tema risulterebbe “impostato” ma non verrebbe realmente incluso nell’immagine di avvio, e al riavvio vedresti ancora quello vecchio.
Passo 3: nascondi i messaggi del kernel con i parametri GRUB
Apri la configurazione di GRUB:
sudo nano /etc/default/grub
Modifica la riga GRUB_CMDLINE_LINUX_DEFAULT aggiungendo quiet splash:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
quietsopprime la maggior parte dei messaggi di log del kernel durante il bootsplashattiva la schermata grafica di Plymouth al posto del testo
Se hai altri parametri già presenti su quella riga (ad esempio resume=UUID=... se hai configurato l’hibernazione come ho fatto io), aggiungi semplicemente quiet splash agli altri valori esistenti, senza cancellarli.
Passo 4: nascondi anche il menu di GRUB
Qui c’è il punto su cui mi sono bloccato più a lungo. Volevo che GRUB non mostrasse affatto il suo menu (visto che uso un solo sistema operativo all’avvio), quindi avevo aggiunto:
GRUB_TIMEOUT_STYLE=hidden
Ma il menu continuava a comparire lo stesso, con tanto di colori di default di Debian. Il problema, che ho scoperto solo dopo aver riletto con attenzione l’intero file riga per riga, è che nello stesso /etc/default/grub era già presente un’altra riga:
GRUB_TIMEOUT_STYLE=menu
Con due righe che impostano la stessa variabile, vince l’ultima che compare nel file — quindi la mia riga hidden, se scritta prima di quella menu preesistente, veniva sistematicamente ignorata. La soluzione è stata semplicemente eliminare (o commentare con #) la riga menu duplicata, lasciando solo:
GRUB_TIMEOUT_STYLE=hidden
Se ti ritrovi nella stessa situazione — hai impostato hidden ma il menu compare comunque — cerca nel file altre occorrenze della stessa variabile prima di pensare a qualsiasi altra causa. È un errore facile da fare, specialmente se il file è stato modificato più volte nel tempo (ad esempio da script di setup automatici, come nel mio caso).
Passo 5: applica le modifiche a GRUB
sudo update-grub
Questo comando rigenera la configurazione effettiva di GRUB (/boot/grub/grub.cfg) a partire dai parametri che hai appena modificato.
Passo 6: verifica la schermata splash senza riavviare
Prima di riavviare per vedere il risultato definitivo, puoi controllare che Plymouth mostri effettivamente la schermata giusta con un piccolo test diretto da terminale. Ho creato uno script con i comandi necessari invece di lanciarli uno per uno:
nano thtest
Contenuto dello script:
sudo plymouthd --no-daemon &
sudo plymouth --show-splash
sleep 5
sudo plymouth quit
Rendilo eseguibile e lancialo:
chmod +x thtest
./thtest
Questo avvia manualmente il demone di Plymouth, mostra la schermata splash per 5 secondi, e poi la chiude — utile per controllare rapidamente l’aspetto del tema senza dover riavviare tutto il PC ogni volta che cambi qualcosa.
Passo 7: riavvia e verifica il risultato reale
Il test da terminale dà un’idea, ma la verifica vera arriva solo con un riavvio completo. Nel mio caso, dopo aver sistemato la questione del GRUB_TIMEOUT_STYLE duplicato, il risultato è stato esattamente quello che cercavo: nessun menu GRUB visibile, nessun messaggio di log del kernel, solo il logo Lenovo che sfuma direttamente nella sessione di login.
Conclusione
La parte tecnicamente più delicata di tutta questa configurazione non è stata Plymouth in sé, ma un dettaglio facile da sottovalutare: righe duplicate nello stesso file di configurazione di GRUB, dove l’ultima vince silenziosamente senza nessun errore a segnalarlo. Se hai già modificato /etc/default/grub altre volte in passato (per l’hibernazione, per altri parametri), è il primo posto dove guardare se qualcosa non si comporta come i comandi ufficiali promettono.
Se stai sistemando lo stesso ThinkPad (o un notebook equivalente) passo dopo passo, questa configurazione si aggiunge bene alle altre che ho documentato: dal WiFi Intel AX201 che si disconnette all’hibernazione con swapfile su Debian 13, fino al GNOME Keyring che chiede sempre la password.
Articoli correlati:


