6. Problemi con il bootloader

6.1. Ripristino del bootloader

Può capitare di fare uno sbaglio e di cancellare il bootloader dal MBR (Master Boot Record) del disco fisso, oppure può venire cancellato da qualche programma difettoso, o da un virus attivato da Windows®, in caso lo abbiate ancora installato in parallelo a GNU/Linux. In un caso simile potreste quindi pensare di non essere più in grado di avviare il sistema, giusto? Sbagliato! Come vedremo, ci sono molti modi per ripristinare il bootloader.

Per effettuare questa operazione è necessario un disco di avvio. Senza un disco di avvio di qualsiasi genere non avreste speranze, a meno che abbiate fatto in precedenza un backup del vostro MBR (Sezione 6.2, «Backup e ripristino del MBR»).

Riavviate il computer con il disco di avvio. Il passo successivo dipende dal bootloader da voi utilizzato: LILO o GRUB. Qualunque sia il bootloader, comunque, tutti i comandi che dovrete eseguire vanno digitati come utente root.

6.1.1. Se si usa LILO

Se usate LILO è sufficiente digitare quanto segue dalla riga di comando: /sbin/lilo. In questo modo LILO verrà reinstallato nel settore di avvio del vostro disco rigido e il problema sarà risolto.

6.1.2. Se si usa GRUB

Se usate GRUB, le cose sono un po' diverse rispetto al caso di LILO.

[Nota]Nota

L'esempio che segue presuppone che voi abbiate installato GRUB nel MBR del primo disco IDE, e che il file stage1 si trovi nella directory /boot/grub/.

Per prima cosa, richiamate la shell di GRUB digitando grub. Quindi digitate questo comando: root (hd0,0); in questo modo comunicherete a GRUB che i file di cui ha bisogno si trovano nella prima partizione (il secondo 0) del primo disco rigido (hd0). Poi digitate quanto segue: setup (hd0); con questo comando installerete GRUB nel MBR del primo disco rigido. Ecco fatto!

Potete anche provare a usare il comando grub-install /dev/hda per installare GRUB sul MBR del primo disco rigido, ma il metodo descritto in precedenza è preferibile.

6.1.3. Alcune osservazioni riguardo i sistemi dual-boot

Aggiornamenti di Windows 9x, NT, 2000 e XP. Se il vostro sistema è di tipo dual-boot (a «doppio avvio», Windows® e GNU/Linux convivono sullo stesso computer e decidete all'avvio quale usare), dovreste sempre tenere a portata di mano un disco di avvio per GNU/Linux. Infatti Windows® (in tutte le versioni), quando viene aggiornato o reinstallato, sovrascrive il MBR senza alcun avvertimento, rendendo quindi per voi impossibile avviare GNU/Linux se non avete a disposizione un disco di avvio adatto.

6.2. Backup e ripristino del MBR

Per fare una copia di backup del Master Boot Record (MBR) del vostro disco rigido, inserite un floppy vuoto nel lettore e digitate il comando che segue:

# dd if=/dev/hda of=/dev/fd0/mbr.bin bs=512 count=1

Se volete effettuare il ripristino su disco rigido di una copia di backup del MBR precedentemente effettuata, inserite nel lettore il floppy che la contiene e digitate:

# dd if=/dev/fd0/mbr.bin of=/dev/hda bs=512
[Nota]Nota

Gli esempi che precedono presuppongono che il MBR del vostro primo disco rigido IDE (/dev/hda) sia salvato in un file di nome mbr.bin usando il primo lettore di floppy (/dev/fd0), e i relativi comandi devono essere eseguiti dall'utente root.