OVH Cloud OVH Cloud

chtite question sur lilo

15 réponses
Avatar
Zigomaths
Bonjour,

J'ai deux disques /dev/hda et /dev/hdc. les données sur /dev/hdc sont
le mêmes que sur /dev/hda.

Je veux que la MBR de /dev/hdc soit une copie exacte de la MBR de
/dev/hda (pour pouvoir échanger physiquement les deux disques en cas
de crash de /dev/hda).

Comment puis-je faire ?

--
Philippe Monroux
Ile de la Reunion
E 55.3 S 21.5

5 réponses

1 2
Avatar
Zigomaths
Le Sat, 17 Jan 2004 12:04:14 GMT,
Dans le forum fr.comp.os.linux.configuration,

Cette taille est du a la structure du mbr: (passage tiré de je ne sais
plus ou)

"La structure du MBR est définie par une convention qui s'applique à
tous les systèmes d'exploitation. Les 446 premiers octets sont
réservés au code du programme (1). Les 64 octets suivants offrent
la place nécessaire à une table des partitions qui peut contenir
jusqu'à quatre entrées (voir...) (2). Les 2 derniers octets doivent
contenir un "nombre magique" (AA56): un MBR contenant autre chose à
cet emplacement est considéré par le BIOS et tous les systèmes
d'exploitation du PC comme n'étant pas valide.


Alors il suffirait de faire :

dd if=/dev/hda of=/tmp/MBR bsD6 count=1 puis
dd if=/tmp/MBR of=/dev/hdc bsD6 count=1

puisqu'il ne faut pas toucher aux 64+2f octets suivants

(ou alors un dd if=/dev/hda of=/dev/hdc bsD6 count=1)

n'est-il pas ?
--
Philippe Monroux
Ile de la Reunion
E 55.3 S 21.5

Avatar
Zigomaths
Le Sat, 17 Jan 2004 12:56:05 +0100,
Dans le forum fr.comp.os.linux.configuration,

et ajoute:
disk=/dev/hdc
bios=0x80


j'ai fait ça aussi : je crois que ça fait comprendre au bios que
hdc est le premier disque. Mais ce que je ne comprend ps c'est
pourquoi il faut rajouter disk=/dev/hdc bios=0x80 à boot=/dev/hdc
(n'est-ce pas redondant ?)


Ce n'est pas redondant:
lilo "marque" dans le MBR de hdc qu'il doit booter dessus. Pour
celà, il doit garder l'ID du disque pour charger les secteurs dont
il a besoin via le BIOS. Pour hdc, cet ID est 0x82. Donc, si tu
échange hda et hdc, lilo essaiera de booter sur ce qui était hdc
auparavant, mais ira lire les secteurs dont il a besoin sur le
disque d'ID 0x82, c.a.d. celui qui était auparavant hda ! La ligne
bios=0x80 prévient lilo qu'il ne doit pas se préocuper du nom du
disque et qu'il doit utiliser l'ID BIOS 0x80. Ainsi, lorsque tu
échangeras tes disques, il trouvera les secteurs dont il a besoin au
bon endroit.


OK. Merci
--
Philippe Monroux
Ile de la Reunion
E 55.3 S 21.5



Avatar
Zigomaths
Le Sat, 17 Jan 2004 12:56:05 +0100,
Dans le forum fr.comp.os.linux.configuration,

et ajoute:
disk=/dev/hdc
bios=0x80


j'ai fait ça aussi : je crois que ça fait comprendre au bios que
hdc est le premier disque. Mais ce que je ne comprend ps c'est
pourquoi il faut rajouter disk=/dev/hdc bios=0x80 à boot=/dev/hdc
(n'est-ce pas redondant ?)


Ce n'est pas redondant:
lilo "marque" dans le MBR de hdc qu'il doit booter dessus. Pour
celà, il doit garder l'ID du disque pour charger les secteurs dont
il a besoin via le BIOS. Pour hdc, cet ID est 0x82. Donc, si tu
échange hda et hdc, lilo essaiera de booter sur ce qui était hdc
auparavant, mais ira lire les secteurs dont il a besoin sur le
disque d'ID 0x82, c.a.d. celui qui était auparavant hda ! La ligne
bios=0x80 prévient lilo qu'il ne doit pas se préocuper du nom du
disque et qu'il doit utiliser l'ID BIOS 0x80. Ainsi, lorsque tu
échangeras tes disques, il trouvera les secteurs dont il a besoin au
bon endroit.


OK. Merci
donc finalement il faut :

disk=/dev/hdc
bios=0x80
boot=/dev/hdc

root=/dev/hda3 # là je ne suis pas sur

--
Philippe Monroux
Ile de la Reunion
E 55.3 S 21.5



Avatar
Zigomaths
Le Sat, 17 Jan 2004 12:56:05 +0100,
Dans le forum fr.comp.os.linux.configuration,

et ajoute:
disk=/dev/hdc
bios=0x80


j'ai fait ça aussi : je crois que ça fait comprendre au bios que
hdc est le premier disque. Mais ce que je ne comprend ps c'est
pourquoi il faut rajouter disk=/dev/hdc bios=0x80 à boot=/dev/hdc
(n'est-ce pas redondant ?)


Ce n'est pas redondant:
lilo "marque" dans le MBR de hdc qu'il doit booter dessus. Pour
celà, il doit garder l'ID du disque pour charger les secteurs dont
il a besoin via le BIOS. Pour hdc, cet ID est 0x82. Donc, si tu
échange hda et hdc, lilo essaiera de booter sur ce qui était hdc
auparavant, mais ira lire les secteurs dont il a besoin sur le
disque d'ID 0x82, c.a.d. celui qui était auparavant hda ! La ligne
bios=0x80 prévient lilo qu'il ne doit pas se préocuper du nom du
disque et qu'il doit utiliser l'ID BIOS 0x80. Ainsi, lorsque tu
échangeras tes disques, il trouvera les secteurs dont il a besoin au
bon endroit.


OK. Merci
donc finalement il faut :

disk=/dev/hdc
bios=0x80
boot=/dev/hdc

et, en supposant que je doive monter la 3 ieme partition du premier
disque sur la racine :

root=/dev/hda3

là je ne suis pas sur du "a" mais je suppose que c'est cela car hdc
sera devenu hda après l'échange
--
Philippe Monroux
Ile de la Reunion
E 55.3 S 21.5



Avatar
no_spam
On Sun, 18 Jan 2004 04:01:45 +0000, Zigomaths wrote:

Le Sat, 17 Jan 2004 12:56:05 +0100,
Dans le forum fr.comp.os.linux.configuration,

et ajoute:
disk=/dev/hdc
bios=0x80


j'ai fait ça aussi : je crois que ça fait comprendre au bios que
hdc est le premier disque. Mais ce que je ne comprend ps c'est
pourquoi il faut rajouter disk=/dev/hdc bios=0x80 à boot=/dev/hdc
(n'est-ce pas redondant ?)


Ce n'est pas redondant:
lilo "marque" dans le MBR de hdc qu'il doit booter dessus. Pour
celà, il doit garder l'ID du disque pour charger les secteurs dont
il a besoin via le BIOS. Pour hdc, cet ID est 0x82. Donc, si tu
échange hda et hdc, lilo essaiera de booter sur ce qui était hdc
auparavant, mais ira lire les secteurs dont il a besoin sur le
disque d'ID 0x82, c.a.d. celui qui était auparavant hda ! La ligne
bios=0x80 prévient lilo qu'il ne doit pas se préocuper du nom du
disque et qu'il doit utiliser l'ID BIOS 0x80. Ainsi, lorsque tu
échangeras tes disques, il trouvera les secteurs dont il a besoin au
bon endroit.


OK. Merci
donc finalement il faut :

disk=/dev/hdc
bios=0x80
boot=/dev/hdc

et, en supposant que je doive monter la 3 ieme partition du premier
disque sur la racine :

root=/dev/hda3

là je ne suis pas sur du "a" mais je suppose que c'est cela car hdc
sera devenu hda après l'échange


Exactement.




1 2