LKN: Ricette per Configurare il Kernel: differenze tra le versioni

Pagine 1,2 di 22
m (aggiunto link pdf originale)
(Pagine 1,2 di 22)
Riga 1: Riga 1:
''Torna all'indice: [[Linux Kernel in a Nutshell]]''
[[Category:Glossario]]
== Definizione ==
Acronimo di '''Master Boot Record'''.


__TOC__
E' il primo settore (512 byte) di un disco (sia esso l'hard disk, il cdrom o il floppy) e viene usato dal [[BIOS]] per fare il boot del sistema.


Il [[LKN:_Personalizzare_un_Kernel|capitolo precedente]] ci ha insegnato i meccanismi per la riconfigurazione del kernel; in questo capitolo arriva la parte interessante, in cui si possono trovare tutte le modifiche più comuni che gli utenti hanno bisogno di apportare ai loro kernel, con le istruzioni specifiche per effettuarle.
Per fare avviare il sistema � necessario che nel MBR sia installato un [[boot manager]] oppure un [[boot loader]].


Il MBR composto da 512 byte che contengono sia il codice eseguito dal BIOS per il boot sia la tabella delle partizioni primarie. Ecco la suddivisione:


== '''Dischi''' ==
446 bytes : codice boot
  64 bytes : tabella partizioni
  2 bytes : "magic number 55AA"


Il kernel Linux supporta una grande varietà di differenti tipi di disco. Questa sezione mostra come configurare il kernel in modo tale che supporti la maggior parte dei modelli più comuni di controller di disco.
== Operazioni sul MBR ==
{{Warningbox| I comandi che seguono possono potenzialmente distruggere l'intero vostro hard disk. Non usateli se non sapete esattamente cosa state facendo!}}
=== Effettuare il backup del MBR ===


'''Periferiche USB'''
Per effettuare una copia di backup del [[MBR]] � sufficiente copiare i byte con <tt>dd</tt>.:


Per utilizzare una periferica di archiviazione USB (come quelle chiamate comunemente memorie "flash" USB, oppure dischi esterni USB) il supporto USB deve prima funzionare correttamente. Fare riferimento alla ricetta nella sezione chiamata [[USB]] per sapere come fare.
# dd if=/dev/hdX of=/path/MBR-backup bs=512 count=1


Una periferica di archiviazione USB può essere identificata utilizzando il programma ''lsusb''. Se la sequenza di comandi che segue produce i risultati mostrati, nel sistema è presente una periferica di archiviazione USB:
e per ripristinarlo il comando duale:


<pre>
# dd if=/path/MBR-backup of=/dev/hda bs=512 count=1
$ /usr/sbin/lsusb -v | grep Storage
bInterfaceClass 8 Mass Storage
</pre>


Abilitatelo nel modo seguente.
Se si vuole invece salvare solo il codice del [[boot loader]]:
1. A USB Storage device is in reality a USB SCSI device that talks over a USB
connection. Because of this, the SCSI subsystem must be enabled:


<pre>
# dd if=/dev/hdX of=/path/MBR-boot-code bs=466 count=1
Device Drivers
SCSI Device Support
[*] SCSI Device Support
</pre>


e per il ripristino:


----
# dd if=/path/MBR-boot-code of=/dev/hda bs=466 count=1
This is an indipendent translation of the book [http://www.kroah.com/lkn/ Linux Kernel in a Nutshell] by [http://www.kroah.com/log/ Greg Kroah-Hartman]. This translation (like the original work) is available under the terms of [http://creativecommons.org/licenses/by-sa/2.5/ Creative Commons Attribution-ShareAlike 2.5].
----


[http://www.kernel.org/pub/linux/kernel/people/gregkh/lkn/lkn_pdf/ch08.pdf ''Capitolo originale'']
Infine per salvare solo la tabella delle partizioni:
[[Categoria:Kernel]]
 
# dd if=/dev/hdX of=/path/backup-partition-table bs=1 count=66 skip 466
 
e per ripristinarla:
 
# dd if=/path/backup-partition-table of=/dev/hdX bs=1 count=66 skip 466
 
=== Azzerare il MBR ===
 
Analogamente � possibile cancellare selettivamente il codice del [[boot loader]]:
 
# dd if=/dev/zero of=/dev/hda bs=466 count=1
 
oppure la tabella delle partizioni:
 
# dd if=/dev/zero of=/dev/hdX bs=1 count=66 skip 466
 
oppure l'intero MBR:
 
# dd if=/dev/zero of=/dev/hda bs=512 count=1
 
== Voci correlate ==
 
* Glossario: [[boot loader]], [[boot manager]]
* Hardware: [[Gestire gli HD: stato di salute, badblocks e ripristino dati]]
 
== Approfondimenti ==
 
''Su Wikipedia it'':
* [http://it.wikipedia.org/wiki/Master_boot_record Master_boot_record]
 
''Su Wikipedia en (articolo molto pi� dettagliato):''  
* [http://en.wikipedia.org/wiki/Master_Boot_Record Master_Boot_Record]
9

contributi