MBR

Da Wiki :: openmamba.
Jump to navigation Jump to search

Con il termine MBR (ossia Master Boot Record) ci si riferisce al primo settore del disco di avvio di un Personal Computer.

Un PC che utilizza l'MBR, dopo aver effettuato le operazioni iniziali di POST (Power On Self Test), lascia il controllo al BIOS. Quest'ultimo in base alla propria configurazione dei dischi carica ed esegue il codice che si trova nell'MBR.

Il codice dell'MBR è di dimensioni limitate poiché il master boot record è delle dimensioni di 512 bytes e normalmente si occupa di individuare la partizione di boot nella tabella delle partizioni primarie (anch'essa contenuta nell'MBR) e di far procedere a catena il meccanismo di avvio eseguendo il codice che si trova all'inizio della partizione di boot.

Lo standard della struttura dell'MBR prevede che sia possibile gestire al massimo 4 partizioni primarie. Ogni partizione primaria può far riferimento ad una tabella di partizioni estesa che contiene a sua volta fino a 4 partizioni.

Avvio non basato su BIOS/MBR

La maggior parte dei Personal Computer utilizza un meccanismo di avvio basato per tradizione su BIOS e MBR, ma esistono altri sistemi che cercano di superare i limiti dovuti ad un'architettura che risale ai primi anni 80.

Ad esempio i Mac basati su processore Intel utilizzano un meccanismo di avvio basato sullo standard EFI (Extendable Firmware Interface) che sostituisce il BIOS e fa uso di una tabella di partizioni denominata GPT.

Backup dell'MBR

Tra l'MBR ed il primo settore della prima partizione sono disponibili un certo numero di settori (fino a 64) in cui un boot manager può inserire del codice, può essere quindi opportuno (ma nella maggior parte dei casi non è necessario) effettuare il backup di un certo numero di blocchi di 512 bytes a partire dall'MBR.

dd if=/dev/hda of=mbr-backup bs=512 count=16

Il codice dell'MBR del disco /dev/hda viene salvato nel file mbr-backup.

Ripristino dell'MBR

Per effettuare il ripristino eseguire l'operazione opposta:

dd if=mbr-backup of=/dev/c bs=512 count=16