Grub
Marco Bisetto
blug@lists.linux.it
Fri, 03 Jan 2003 11:17:38 +0000
>Ho intenzionalemente spazzolato Grub dal MBR perchè non
>capivo una situazione strana che si era verificata dopo
>la cancellazione di una partizione. Ora che ho capito,
>vorrei ripristinare la situazione iniziale, ma.....
>non so i comandi (tipo FIXMBR) per farlo.
Dipende da cosa intendi per spazzolato. Se il problema riguarda la
perdita di dati relativa al solo codice di avvio, allora basta
reinstallare grub o lilo da un rescue disk. Questo puo` essere fatto
usando i file di configurazione presenti nell'HD stesso, basta montare
temporaneamente la partizione root. Per esempio sul dischetto di
rescue della Debian e` presente una versione di lilo che legge il file
/target/etc/lilo.conf facendo un chroot su /target:
(si parte dal dischetto di rescue)
# mount /dev/hda? /target
(eventualmente editare /target/etc/lilo.conf)
# lilo
Se invece hai perso anche gli ultimi byte del settore, quelli che
contengono la partition table, e` necessario ricavare la geometria
dell'HD con molta pazienza e ricostruire la partition table a mano.
Sulla Debian per default quando si installa lilo per la prima volta
viene creato un file tipo: /boot/boot.0303 che contiene lo stato
originale del settore prima della sua sovrascrittura. Pero` e` chiaro
che se non si provvede a farne una copia su un altro disco, la perdita
dei dati del primo settore implica anche l'impossibilita` di conoscere
la posizione precisa del file.
Dato che cancellando i pochi byte della partition table tutto l'HD
diventa inutilizzabile, ho l'abitudine di farne una copia in un disco
backup le rare volte che la modifico.
Per esempio, il primo settore del mio HD e` qui sotto. La partition
table si trova da 0x1be alla fine del settore, escluso il magic number
finale 0xaa55. Tutto quello che viene prima e` il binario del mio boot
loader.
alnilam:~# dd if=/dev/hda count=1|hexdump -C
1+0 records in
1+0 records out
00000000 fc 31 c0 8e d0 31 e4 8e d8 8e c0 be 00 7c bf 00 |.1...1.......|..|
00000010 06 b9 00 01 f3 a5 be ee 07 b0 08 ea 20 06 00 00 |............ ...|
00000020 80 3e b5 07 ff 75 04 88 16 b5 07 80 3c 00 74 04 |.>...u......<.t.|
00000030 08 06 b2 07 83 ee 10 d0 e8 73 f0 e8 39 01 80 3e |.........s..9..>|
00000040 b4 07 ff 74 4f cd 1a 89 16 00 08 f6 06 b3 07 80 |...tO...........|
00000050 74 06 b4 01 cd 16 75 3c f6 06 b3 07 40 74 07 f6 |t.....u<....@t..|
00000060 06 17 04 0f 75 2e 31 c0 cd 1a 2b 16 00 08 2a 16 |....u.1...+...*.|
00000070 b4 07 80 de 00 72 d4 a0 b3 07 24 07 3c 07 75 0b |.....r....$.<.u.|
00000080 be be 07 b0 00 b9 04 00 80 3c 00 75 66 fe c0 83 |.........<.uf...|
00000090 c6 10 e2 f4 e8 e0 00 b4 0e be a0 07 8a 0e b2 07 |................|
000000a0 ac d0 e9 73 02 cd 10 08 c9 75 f5 b0 3a cd 10 31 |...s.....u..:..1|
000000b0 c0 cd 16 3c 00 74 f8 3c 0d 74 bc 3c 61 72 06 3c |...<.t.<.t.<ar.<|
000000c0 7a 77 02 2c 20 88 c3 be a0 07 8a 0e b2 07 ac d0 |zw., ...........|
000000d0 e9 73 04 38 c3 74 06 08 c9 75 f3 eb d2 b8 0d 0e |.s.8.t...u......|
000000e0 31 db cd 10 8d 84 5f 00 3c 07 75 07 b0 1f a2 b2 |1....._.<.u.....|
000000f0 07 eb a1 e8 81 00 31 d2 b9 01 00 3c 04 74 47 73 |......1....<.tGs|
00000100 f0 30 e4 b1 04 d2 e0 be be 07 01 c6 8a 16 b5 07 |.0..............|
00000110 f6 c2 80 74 2b b4 41 bb aa 55 56 52 cd 13 5a 5e |...t+.A..UVR..Z^|
00000120 72 1e 81 fb 55 aa 75 18 f6 c1 01 74 13 8b 44 08 |r...U.u....t..D.|
00000130 8b 5c 0a be 90 07 89 44 08 89 5c 0a b4 42 eb 0c |.\.....D..\..B..|
00000140 8a 74 01 8b 4c 02 b8 01 02 bb 00 7c bf 05 00 50 |.t..L......|...P|
00000150 c6 06 92 07 01 cd 13 58 73 05 4f 75 f2 eb 92 81 |.......Xs.Ou....|
00000160 3e fe 7d 55 aa 75 f6 31 db b8 0d 0e cd 10 b0 0a |>.}U.u.1........|
00000170 cd 10 ea 00 7c 00 00 50 b8 0d 0e 31 db cd 10 be |....|..P...1....|
00000180 8c 07 b9 04 00 ac cd 10 e2 fb 58 c3 4d 42 52 20 |..........X.MBR |
00000190 10 00 01 00 00 7c 00 00 00 00 00 00 00 00 00 00 |.....|..........|
000001a0 31 32 33 34 46 00 00 41 4e 44 54 6d 62 72 00 00 |1234F..ANDTmbr..|
000001b0 00 00 90 c7 12 80 00 00 00 00 00 00 a8 01 00 01 |................|
000001c0 01 00 82 fe 3f 0f 3f 00 00 00 d1 eb 03 00 00 00 |....?.?.........|
000001d0 01 10 83 fe 3f f5 10 ec 03 00 66 61 38 00 80 00 |....?.....fa8...|
000001e0 01 f6 83 fe 7f db 76 4d 3c 00 66 61 38 00 00 00 |......vM<.fa8...|
000001f0 41 dc 05 fe ff ff dc ae 74 00 c6 ed 4a 01 55 aa |A.......t...J.U.|
00000200
m