Home Developement
Facciamo la pace con GRUB in due soli comandi. PDF Stampa E-mail
GNU/Linux - Tips 'n Tricks
Scritto da E. Mottola   
Mercoledì 14 Gennaio 2009 00:00

Ci sono una marea di casi in cui si può "rompere" collegamento al bootloader nell'MBR con conseguenti errori di GRUB: error 15, error 17, error 21....e tanti altri. Questo può essere causato da una reinstallazione di windows, dall'installazione di una distribuzione automatizzata come Ubuntu, da un cambio di partizionamento, insomma, i casi sono molti ma la situazione finale non cambia: niente boot ed errore di GRUB.

La situazione è estremamente semplice da risolvere, dopo essersi accertati che:
  1. La partizione dove ci sono i file di grub esista da qualche parte
  2. Il relativo filesystem sia leggibile

Nel primo caso bisognerà reinstallare Grub oppure recuperare tali file e posizionarli nella partizione di boot, oppure reinstallare Grub.

Sia che la partizione di boot sia esterna, sia che GRUB sia installato nel filesystem principale di una qualsiasi ditribuzione, avviato il sistema con una live, o da un altro linux se presente, basta eseguire:

# grub

Avviata quindi la shell di GRUB ecco i due fatidici comandi pacificatori:

# grub> root (hdX,Y)

# grub> setup (hdX)

 

Ossia reinstalliamo semplicemente GRUB! Ovviamente in hdX,Y si dovrà indicare con X il disco e con Y la partizione dov'è presente GRUB, quindi quella di boot separata o il filesystem di root dell'installazione di linux.

Poi bisognerà installare grub nell'MBR del disco (hdX) così che all'avvio vi sia il corretto collegamento al GRUB appena indicato col comando precedente.

 

Tenendo a mente sempre due cose:

  1. GRUB comincia a contare da zero e non da uno, sia i dischi che le partizioni.
  2. Nella shell di grub esiste l'autocompletamento come nella shell bash, quindi scrivendo "root (hd" e poi premento il tasto TAB apparirà l'elenco dei dischi presenti, e ritabbando dopo aver aggiunto il numero del device, quindi es. su "hd0," verrà visualizzato l'elenco delle relative partizioni con un codice che ne specifica il tipo.

Ecco i più frequenti tipi di codice-partizione:

  • 82 Linux swap
  • 83 Linux
  • 8E Linux LVM 
  • FD Linux raid autodetec
  • 06  FAT16
  • 07 HPFS/NTFS
  • 0B W95 FAT32
  • 0C W95 FAT32 (LBA)
  • 0E W95 FAT16 (LBA)
  • 0F W95 Ext'd (LBA) 
Per un elenco completo si può utilizzare dal terminale cfdisk e poi scegliere type (tasto t), successivamente uscire senza modificare niente con CTRL + C.

In questo modo è molto semplice capire qual'é la partizione giusta anche solo dal numero di partizioni presenti in ciascun device che vede Grub, infatti se nel sistema sono inserite delle pendrive USB o delle memory card queste compariranno nell'elenco e anche dopo gli hard disk interni, ma sicuramente avranno un partizionamento diversoda questi e quindi anche solo dal numero di partizioni si può riconoscere quella giusta.

 

Con lo stesso identico metodo si può installare Grub in una scheda di memoria esterna, pendrive USB e via dicendo, potendo così effettuare il boot da li.

Il procedimento non cambia, bisogna prima copiare i file dalla cartella /boot della propria distribuzione al device scelto per il boot, poi eseguire i due comandi di prima scegliendo questa volta il device con il quale vogliamo effettuare l'avvio.

Happy booting!

Ultimo aggiornamento Domenica 05 Aprile 2009 21:22
 

Utenti connessi

 95 visitatori online



Creative Commons License

Questo sito è pubblicato sotto licenza Creative Commons
DeSfA - De Shell Facemmo Ali