Ripristinare GRUB su Linux: guida completa al dual boot con Windows
Se GRUB è il primo software che gira quando accendi il PC. Prima del kernel, prima del desktop, prima di tutto. È lui che decide quale sistema operativo caricare, su quale disco cercarlo, con quali parametri avviarlo. Se hai Linux installato, GRUB c’è. Se hai Linux e Windows insieme, GRUB gestisce la scelta all’avvio. Se un giorno il PC non parte più e vedi solo una riga grub> su sfondo nero, stai guardando GRUB in modalità emergenza.
Questa guida copre tutto: come funziona, come configurarlo, come ripristinarlo quando si rompe, e cosa cambia su un mini PC con eMMC o NVMe rispetto a un desktop classico.
👉 Leggi qui: Linux Mint appena installato: prime cose da fare
- Cos'è GRUB e cosa fa
- UEFI o BIOS Legacy: la differenza che cambia i comandi
- Quando compare il menu GRUB (e quando resta nascosto)
- I comandi che usi il 90% delle volte
- Il file /etc/default/grub: tutte le opzioni che contano
- Impostare Windows (o un altro sistema) come predefinito
- Windows sparisce dal menu: il problema os-prober su Ubuntu 22.04+
- GRUB Rescue: quando il boot si rompe completamente
- GRUB su mini PC: le differenze pratiche che le guide non dicono
- GRUB e Batocera
- Problemi comuni e soluzioni dirette
- FAQ

Cos’è GRUB e cosa fa
GRUB sta per GRand Unified Bootloader. È il boot loader standard di quasi tutte le distribuzioni Linux, e il suo compito è preciso:
- avviare il kernel Linux;
- gestire il dual boot con Windows o altri sistemi;
- caricare la recovery mode;
- permettere di scegliere tra kernel diversi (utile dopo un aggiornamento problematico).
Tra il firmware del PC (BIOS o UEFI) e il sistema operativo c’è un vuoto: GRUB lo colma. Senza di lui, il PC non saprebbe dove cercare Linux né come caricarlo.
UEFI o BIOS Legacy: la differenza che cambia i comandi
Questa è la fonte principale di confusione nelle guide online, perché il comando per installare GRUB cambia completamente a seconda del firmware del PC.
Quasi tutti i PC moderni usano UEFI. Se il tuo PC è stato prodotto dopo il 2012, quasi certamente è UEFI. I mini PC come NiPoGi AM21, GMKtec, MINISFORUM: tutti UEFI.
Per verificare sul terminale:
[ -d /sys/firmware/efi ] && echo "UEFI" || echo "BIOS Legacy"
Su UEFI il disco viene partizionato in formato GPT e c’è sempre una partizione EFI (montata solitamente in /boot/efi) dove il firmware cerca i file di avvio. GRUB si installa lì, non all’inizio del disco come faceva su BIOS Legacy.
Su BIOS Legacy si usava un disco MBR e GRUB veniva scritto nel Master Boot Record, i primi 512 byte del disco. Ancora valido su hardware molto vecchio, ma sempre meno rilevante nel 2026.
[IMMAGINE: UEFI è il sistema di avvio moderno utilizzato dai PC recenti]
Quando compare il menu GRUB (e quando resta nascosto)
Se hai solo Linux installato, GRUB di solito non compare: conta fino a zero e avvia il sistema automaticamente. Comparirà in questi scenari:
- dual boot Linux + Windows
- dual boot Linux + Batocera
- più distribuzioni Linux sullo stesso PC
- più SSD o NVMe con sistemi diversi
- recovery mode da raggiungere manualmente
- più versioni del kernel installate
Per forzare la comparsa del menu anche con sistema singolo, agisci su /etc/default/grub (sezione dedicata più avanti).

I comandi che usi il 90% delle volte
sudo update-grub
sudo update-grub
Questo è il comando che userai più spesso. Rigenera il file di configurazione GRUB (/boot/grub/grub.cfg) scansionando tutti i dischi e i sistemi operativi rilevati. Va eseguito ogni volta che:
- installi o rimuovi un sistema operativo;
- aggiorni il kernel;
- modifichi
/etc/default/grub; - Windows sparisce dal menu (più su questo tra poco).
Non modifica nulla di permanente: legge le impostazioni da /etc/default/grub e le applica. Puoi eseguirlo quante volte vuoi senza rischi.
Su Fedora e derivate Red Hat il comando equivalente è sudo grub2-mkconfig -o /boot/grub2/grub.cfg.

sudo grub-install
Questo è il comando per installare fisicamente GRUB sul disco. Si usa quando:
- installi Linux da zero;
- GRUB è stato sovrascritto (succede spesso dopo Windows Update);
- hai sostituito il disco di avvio.
Su sistemi UEFI (il caso comune oggi):
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
sudo update-grub
--efi-directory=/boot/efi è il punto di mount della partizione EFI. Verifica con lsblk -f dove si trova la partizione di tipo vfat con l’etichetta EFI se hai dubbi.
Su sistemi BIOS Legacy:
sudo grub-install /dev/sda
sudo update-grub
Sostituisci /dev/sda con il disco corretto: usa lsblk per identificarlo prima di procedere.
Su mini PC con storage eMMC (NiPoGi E1, E3B e simili con storage saldato):
Il disco eMMC non si chiama /dev/sda ma /dev/mmcblk0. Le partizioni si chiamano /dev/mmcblk0p1, /dev/mmcblk0p2 e così via. Su BIOS Legacy:
sudo grub-install /dev/mmcblk0
Su UEFI con eMMC, il parametro --efi-directory resta /boot/efi: la partizione EFI è già montata lì normalmente, cambia solo il nome del dispositivo fisico sottostante.
Su mini PC con NVMe:
Il disco è /dev/nvme0n1, le partizioni /dev/nvme0n1p1, /dev/nvme0n1p2 ecc. Su UEFI il comando grub-install è identico a sopra: GRUB si installa sulla partizione EFI, non sul raw disk, quindi il nome del disco non entra nel comando.
⚠️ Attenzione: installare GRUB sul disco sbagliato può rendere il sistema non avviabile. Prima di eseguire grub-install su BIOS Legacy, verifica sempre con lsblk su quale disco è installato Linux.

Il file /etc/default/grub: tutte le opzioni che contano
Qui si configurano tutte le impostazioni di GRUB. Non modificare mai direttamente /boot/grub/grub.cfg: viene sovrascritto da update-grub ogni volta e perdi tutto.
sudo nano /etc/default/grub
GRUB_DEFAULT=0
Quale voce avviare di default. 0 è la prima voce, 1 la seconda, e così via. I numeri partono da zero. In alternativa usa saved per ricordare l’ultima scelta dell’utente (richiede anche GRUB_SAVEDEFAULT=true).
GRUB_TIMEOUT=5
Secondi di attesa prima dell’avvio automatico. 0 avvia subito senza mostrare il menu. -1 aspetta all’infinito (utile in test o su server). Se il menu non compare mai e vuoi vederlo, questo è il primo parametro da controllare.
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Parametri passati al kernel Linux. quiet sopprime i messaggi di boot, splash mostra il logo grafico. Per diagnosticare problemi di avvio, rimuovi entrambi: vedrai tutti i messaggi del kernel scorrere in chiaro e capirai dove si blocca.
GRUB_DISABLE_OS_PROBER=false
Da Ubuntu 22.04 in poi, os-prober è disabilitato di default. Questo significa che Windows non viene rilevato automaticamente. Se Windows non compare nel menu, questa riga è la soluzione nella maggior parte dei casi (sezione dedicata sotto).
GRUB_GFXMODE=1920x1080
Risoluzione del menu GRUB. Aggiungila se il menu compare con caratteri enormi o distorto su schermi ad alta risoluzione.
Dopo qualsiasi modifica a questo file:
sudo update-grub

Impostare Windows (o un altro sistema) come predefinito
GRUB numera le voci del menu partendo da zero. Per vedere l’ordine esatto nel tuo sistema:
grep -E "menuentry|submenu" /boot/grub/grub.cfg | head -20
Se Windows è la quarta voce (posizione 3):
GRUB_DEFAULT=3
Se vuoi che GRUB ricordi sempre l’ultima scelta dell’utente:
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
Poi:
sudo update-grub
Windows sparisce dal menu: il problema os-prober su Ubuntu 22.04+
Questo è il problema che confonde più utenti in assoluto sulle versioni recenti di Ubuntu e derivate.
Da Ubuntu 22.04, Canonical ha disabilitato os-prober di default: il tool che scansiona i dischi alla ricerca di altri sistemi operativi. Il risultato: installi Linux, esegui update-grub, e Windows non compare nel menu. GRUB non lo vede nemmeno, non è un problema di ordine di avvio.
La soluzione:
sudo nano /etc/default/grub
Aggiungi o modifica:
GRUB_DISABLE_OS_PROBER=false
Poi:
sudo apt install os-prober
sudo update-grub
Nell’output di update-grub dovresti vedere una riga tipo:
Found Windows Boot Manager on /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi
Se Windows non compare ancora, il problema è che la partizione EFI di Windows non è visibile. Su sistemi con due SSD separati (Linux su uno, Windows sull’altro), monta manualmente il secondo disco prima di eseguire update-grub:
sudo mkdir /mnt/windows-efi
sudo mount /dev/sdb1 /mnt/windows-efi
sudo update-grub
GRUB Rescue: quando il boot si rompe completamente
grub rescue> su schermo nero è lo scenario che spaventa di più. Quasi sempre si risolve.
Scenario 1: avvio manuale dal prompt grub rescue
Dal prompt puoi avviare manualmente il sistema se Linux è intatto ma GRUB non trova la configurazione. Prima individua la partizione root:
grub rescue> ls
(hd0) (hd0,gpt1) (hd0,gpt2) (hd0,gpt3)
grub rescue> ls (hd0,gpt2)/
Cerca la partizione che mostra /boot, /etc, /home. Quando la trovi (esempio: (hd0,gpt2)):
grub rescue> set prefix=(hd0,gpt2)/boot/grub
grub rescue> set root=(hd0,gpt2)
grub rescue> insmod normal
grub rescue> normal
Il menu GRUB normale dovrebbe comparire. Avvia Linux, poi reinstalla GRUB correttamente con i comandi della sezione grub-install sopra.
Scenario 2: ripristino completo da Live USB
Questo funziona sempre, anche se il primo metodo fallisce. Avvia da una Live USB della tua distribuzione, apri il terminale e:
1. Identifica le partizioni:
lsblk -f
Trova la partizione root (ext4, quella grande) e la partizione EFI (vfat, 300-500 MB).
2. Monta il sistema:
sudo mount /dev/sdX2 /mnt
sudo mount /dev/sdX1 /mnt/boot/efi
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
Sostituisci sdX2 e sdX1 con i tuoi dispositivi reali. Su eMMC usa mmcblk0p2 e mmcblk0p1. Su NVMe usa nvme0n1p2 e nvme0n1p1.
3. Entra nel sistema con chroot:
sudo chroot /mnt
4. Reinstalla GRUB:
Su UEFI:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
update-grub
Su BIOS Legacy:
grub-install /dev/sda
update-grub
5. Esci e riavvia:
exit
sudo reboot
Rimuovi la Live USB quando richiesto. Il sistema dovrebbe partire normalmente.

GRUB su mini PC: le differenze pratiche che le guide non dicono
I mini PC con storage eMMC e NVMe hanno alcune peculiarità che vale la pena conoscere prima di trovarsi in guai.
Storage eMMC: il dispositivo è /dev/mmcblk0, non /dev/sda. Le partizioni si chiamano /dev/mmcblk0p1, /dev/mmcblk0p2 ecc. Nel ripristino da chroot, monta di conseguenza.
Storage NVMe: il dispositivo è /dev/nvme0n1, le partizioni /dev/nvme0n1p1, /dev/nvme0n1p2 ecc.
Doppio storage eMMC + NVMe: configurazione comune su mini PC con slot M.2 aggiuntivo (come NiPoGi AM21). Quando installi Linux sull’NVMe con eMMC già presente, GRUB potrebbe installarsi nel posto sbagliato. Verifica sempre con lsblk -f dopo l’installazione che la partizione EFI attiva sia quella sul disco dove hai installato Linux, e controlla il boot order nel menu UEFI del mini PC.
Secure Boot: quasi tutti i mini PC moderni lo hanno attivo. Linux Mint, Ubuntu e le principali distribuzioni lo gestiscono automaticamente. Se hai problemi di avvio dopo l’installazione, il primo posto dove guardare è il menu UEFI del mini PC (tasto Del o F2 all’avvio): verifica che Secure Boot non stia bloccando il boot loader di GRUB.
GRUB e Batocera
Una configurazione che funziona particolarmente bene su mini PC è Windows + Batocera o Linux + Batocera, gestiti da GRUB all’avvio.
Batocera installato su un disco separato (secondo NVMe o chiavetta USB dedicata) viene rilevato automaticamente da update-grub quando os-prober è attivo. Per impostarlo come sistema predefinito, trova la sua posizione nel menu con:
grep "menuentry" /boot/grub/grub.cfg | head -10
E imposta il numero corrispondente in GRUB_DEFAULT.
👉 Leggi qui: Guida completa Batocera 2026: installazione, ROM, BIOS e addon

Problemi comuni e soluzioni dirette
Windows non compare nel menu GRUB
Causa quasi certa su Ubuntu 22.04+: os-prober disabilitato. Soluzione: GRUB_DISABLE_OS_PROBER=false in /etc/default/grub, poi sudo update-grub.
Il menu GRUB non compare, il PC avvia direttamente LinuxGRUB_TIMEOUT=0 nel file di configurazione. Cambia il valore a 5 o superiore, poi sudo update-grub.
GRUB è stato sovrascritto da Windows Update
Windows Update a volte sovrascrive il boot loader. Ripristino da Live USB con il metodo chroot descritto sopra.
Schermata nera dopo GRUB
Spesso un problema con i driver grafici. Aggiungi nomodeset in GRUB_CMDLINE_LINUX_DEFAULT, poi sudo update-grub. In alternativa, al menu GRUB premi E, trova la riga del kernel e aggiungi nomodeset temporaneamente prima di avviare (non è permanente, serve solo per diagnosticare).
Menu GRUB con caratteri enormi o risoluzione distorta
Aggiungi in /etc/default/grub:
GRUB_GFXMODE=1920x1080
GRUB_GFXPAYLOAD_LINUX=keep
Poi sudo update-grub.
grub-install restituisce “cannot find EFI directory”
La partizione EFI non è montata. Esegui lsblk -f per trovarla, montala su /boot/efi e ripeti il comando.

Raspberry Pi 4
Quad-Core Cortex A72 · 4 GB LPDDR4 · 64 GB
Scegli questo se ti serve un piccolo server sempre acceso per casa (Pi-hole, Home Assistant) o vuoi provare Batocera per il retrogaming fino a PS1/Dreamcast. Consumi minimi, sempre pronto.

MINISFORUM AI X1 Pro
HX370 · 32 GB DDR5 · 1 TB · Dual 2.5G LAN
Scegli questo se vuoi il massimo per lavoro e multitasking senza eccessi: il Ryzen AI 9 HX 370 a 12 core dà respiro vero su editing e virtualizzazione, la Radeon 890M gestisce gaming 1080p alto e qualche titolo in 1440p, e l'OCuLink a piena banda PCIe 4.0 x4 lascia la porta aperta a una eGPU futura.

MINISFORUM AI X1-255
AI X1-255 · 32 GB · 512 GB
Scegli questo se cerchi il miglior rapporto qualità prezzo del momento: CPU Zen 4 da 8 core, Radeon 780M che gioca bene anche titoli AAA a 1080p, 32GB di RAM e OCuLink per chi vuole spingersi oltre, tutto sotto i 700€.
FAQ
Devo eseguire update-grub dopo ogni aggiornamento del sistema?
No. Gli aggiornamenti del kernel su Ubuntu e derivate lo eseguono automaticamente. Intervieni manualmente solo se cambi impostazioni o hai problemi.
Esiste un’interfaccia grafica per configurare GRUB?
Esiste GRUB Customizer, ma non è raccomandato su Ubuntu 22.04+ e può creare conflitti con la configurazione automatica. Il file /etc/default/grub è semplice da modificare a mano: bastano le voci descritte in questa guida per il 99% dei casi.
GRUB funziona con Secure Boot attivo?
Sulle distribuzioni principali (Ubuntu, Mint, Fedora) il boot loader è già firmato digitalmente per Secure Boot. Se ti dà problemi, la prima verifica è che stai usando una distribuzione che lo supporta e che l’ISO era autentica.
Se installo un secondo Linux, devo reinstallare GRUB?
No. Il secondo Linux verrà rilevato automaticamente al prossimo sudo update-grub eseguito dalla distribuzione principale (quella dove GRUB è installato).
In dual boot Linux + Windows, su quale disco installo GRUB?
Su UEFI, installalo sulla partizione EFI esistente: quella di Windows va benissimo, GRUB non la sovrascrive, aggiunge solo i propri file nella cartella /EFI/GRUB/. Su BIOS Legacy, va installato sul disco da cui il BIOS fa il boot.
Su mini PC con eMMC e NVMe insieme, dove installo GRUB?
Sul disco da cui vuoi avviare. Se Linux è sull’NVMe, installa GRUB sulla partizione EFI dell’NVMe e imposta nel menu UEFI del mini PC il boot order con l’NVMe come primo disco.
Non perderti i prossimi consigli
Guide, recensioni e novità su Linux, Mini PC e open source, dritte sul tuo Telegram. Niente spam, solo quello che vale la pena leggere.
IncastroPC partecipa al Programma Affiliazione Amazon EU. Prezzi e disponibilità soggetti a variazione.
