Home
Salvare e ripristinare l'MBR PDF Stampa E-mail
GNU/Linux - Tips 'n Tricks
Scritto da E. Mottola   
Giovedì 11 Settembre 2008 16:09

Se si reinstalla uindous su un sistema dual boot con Linux, al riavvio troviamo la spiacevole sorpresa di non trovare più il menù di avvio del boot-loader Grub. Linux però è sempre presente, si è solo sovrascritto l'MBR dell'Hard Disk.

Il Master Boot Record non è altro che i primi 512 byte del disco rigido, della pen-drive Usb o in generale di una memoria di massa.

Questo piccolo ma importante settore del disco è fondamentale in quanto contiene sia la tabella delle partizioni sia il riferimento al file di avvio, ossia a quale programma deve essere caricato in memoria quando il Bios, finite le operazioni di inizializzazione del sistema, deve passare il controllo al sistema operativo.

 

Nell'installazione dei sistemi microsoft l'MBR viene sempre sovrascritto per far si che si avvi direttamente il sistema microsoft. Ad essere precisi quello che viene sovrascritto sono i primi 446 byte dell'MBR. Per risolvere il problema sopra descritto si può procedere in 2 modi:

  1. Salvare l'MBR prima di [re]installare uindous per poi ripristinare il vecchio MBR
  2. Ricreare l'MBR usando la shell di GRUB

 

Per seguire la politica del Backup & Restore c'è un unico vincolo fondamentale: nell'installazione di uindous o comunque dopo aver salvato l'MBR non bisogna modificare le partizioni. Viceversa il disco dopo il ripristino in questo caso di un MBR sbagliato, poichè esso contiene anche la tabella delle partizioni, risulterà inusabile.

 

Detto questo dalla shell di linux basta un solo comando per salvare l'MBR:
# dd if=/dev/sda of=/percorso/sda.mbr bs=512 count=1

 

Dove:

  1. dd è il comando per la copia a basso livello, ossia byte per byte.
  2. if=/dev/sda indica che il device su cui leggere è /dev/sda, quindi potrebbe essere diverso nel vostro caso, forse /dev/hda, /devsdb ma in ogni caso senza numeri finali (es. no /dev/sda2) perchè questi indicano le singole partizioni, non l'intero disco.
  3. of=/percorso/sda.mbr è il percorso dove salvare il contenuto dell'MBR che il comando andrà a leggere, il nome del file sda.mbr è solo un esempio, non importa ne che abbia estensione ".mbr" ne che si chiami così, l'importante è che ricordate dove lo mettete, magari meglio su una pen-drive USB.
  4. bs=512 indica il numero di byte da copiare, ossia 512
  5. count=1 vuol dire che la lettura va ripetuta una sola volta.

Fatto questo si può riavviare il pc e ritrovare all'avvio il menù di Grub.

 

Si tenga presente che salvando tutto l'MBR si salva anche la tabella delle partizioni, quindi se questa viene modificata successivamente non si potrà più ripristinare l'MBR dal backup precedente, ma bisognerà farlo inserendo bs=446, ossia solo la parte relativa al settore d'avvio. 

Ultimo aggiornamento Lunedì 16 Febbraio 2009 15:30
 

Utenti connessi

 23 visitatori online



Creative Commons License

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