Quando si decide di passare da Windows a Ubuntu, la procedura di installazione è in genere semplice e guidata. Tuttavia, può capitare che, dopo aver completato l’installazione e riavviato il computer, il sistema non parta come previsto.

Al posto della schermata iniziale di Ubuntu compare un messaggio d’errore:
“Gave up waiting for root device. ALERT! /dev/disk/by-uuid/… does not exist.”
Seguito da una serie di istruzioni tecniche e dalla riga di comando BusyBox (initramfs). A questo punto il sistema si blocca, e l’utente si trova davanti a un terminale testuale che sembra incomprensibile. Ma non è un guasto irreversibile: questo messaggio indica che Ubuntu non riesce a trovare il disco principale (root device) su cui dovrebbe avviarsi. Capire cosa significa e come intervenire è la chiave per riportare il sistema a funzionare normalmente.
Cosa significa “Gave up waiting for root device”
Questo errore appare quando, durante l’avvio, Ubuntu cerca il disco che contiene il sistema operativo e non riesce a trovarlo. Ogni disco fisico o partizione in Linux è identificato da un codice univoco, chiamato UUID (Universally Unique Identifier). Se l’UUID indicato nei file di configurazione non corrisponde più a un disco reale, oppure se il driver che gestisce quel disco non è caricato correttamente, il sistema non sa da dove partire.
Le cause più comuni sono diverse. A volte durante l’installazione si riformatta il disco e cambia l’UUID, ma il bootloader (GRUB) o il file /etc/fstab puntano ancora al vecchio identificatore. In altri casi, il BIOS o l’UEFI cambiano l’ordine dei dischi o la modalità di connessione (da AHCI a IDE, ad esempio), rendendo il disco invisibile al kernel di Linux. Più raramente, può trattarsi di un modulo mancante o di un errore nel caricamento dei driver del controller SATA o NVMe.
In sostanza, Ubuntu non trova il “root filesystem”, ovvero il cuore del sistema operativo, e quindi si ferma prima di completare l’avvio.
Come risolvere il problema passo dopo passo
La prima cosa da fare è verificare che il disco venga rilevato correttamente dal BIOS o UEFI. Riavviando il computer e accedendo alle impostazioni del firmware (di solito premendo F2, F10 o Canc), bisogna assicurarsi che l’hard disk o l’SSD su cui è installato Ubuntu sia visibile e impostato come primo dispositivo di avvio.
Se il disco è presente, si può procedere con un controllo dal Live CD o Live USB di Ubuntu. Avviando il sistema in modalità “Prova Ubuntu senza installarlo”, si può aprire un terminale e digitare il comando:
Questo mostrerà l’elenco dei dischi e delle partizioni, insieme ai relativi UUID. Bisogna confrontare questi valori con quelli presenti nel file di configurazione del sistema installato, in particolare in /etc/fstab e in /boot/grub/grub.cfg. Se l’UUID del disco indicato lì non corrisponde a quello reale, il sistema non riuscirà mai ad avviarsi.
Per correggere l’errore, è sufficiente montare la partizione principale del sistema dal Live CD, aprire il file /etc/fstab e sostituire il vecchio UUID con quello corretto. Dopo aver salvato le modifiche, si può rigenerare il bootloader con:
e reinstallare GRUB se necessario:
Dopodiché, riavviando, Ubuntu dovrebbe finalmente partire.
Un’altra soluzione possibile riguarda il parametro rootdelay, che indica per quanti secondi il kernel deve attendere prima di cercare il disco di root. Se il disco è lento a inizializzarsi, si può aggiungere nel file di configurazione del GRUB (solitamente in /etc/default/grub) la riga:
poi rigenerare il GRUB e riavviare. Questo piccolo ritardo può bastare a risolvere il problema in presenza di dischi più lenti o controller particolari.
Infine, se nessuno di questi metodi funziona, è utile eseguire un controllo fisico del disco con l’utility Dischi di Ubuntu o con fsck, poiché un file system danneggiato può impedire il riconoscimento del volume.
In conclusione, l’errore “Gave up waiting for root device” non indica un guasto grave, ma un disallineamento tra il sistema operativo e il disco da cui deve avviarsi. Con un po’ di pazienza e i comandi giusti, è possibile risolverlo in modo definitivo, riportando Ubuntu a funzionare regolarmente anche dopo un’installazione apparentemente fallita.