knightdogg
Bonjour !!!
Voici ma config: Window$ XP installé depuis trop longtemps dur mon disque SATA. mon système bootait dessus sans problème. Et je voulais conserver ce disque dédié à Win.
J'ai ajouté un disque IDE (en maître évidemment), et j'ai voulu installé Free BSD, et puis en fait j'ai fini par installer FC6: installation terminée avec succès.
Quand mon système a redémarré, il a lancé automatiquement Win XP, comme avant, sans me demander de choisir mon OS.
J'ai donc modifié l'ordre de prise en compte des disques dans le BIOS, et j'ai défini le disque IDE comme premier disque de boot. Le système démarre, puis écran noir ces infos:
F1: FreeBSD
F2: Linux
F3: ??
F4: rescue
Voilà, il me semble que c'était un truc du genre...
Et j'ai trouvé cette procédure:
http://doc.fedora-fr.org/Dual_boot_Windows_XP_-_Fedora#Seul_Windows_XP_se_lance
Je pense que je dois l'appliquer deux fois:
- une fois sur mon SATA qui contient Win XP (est-ce que vous pouvez m'assurer qu'en l'appliquant, je ne perdrai pas mes données sous Window$ ?),
- une fois sur mon IDE qui contient FC6 (Est-ce que ça suffira pour que le système me propose le choix de l'OS au démarrage ?).
j'espère avoir été clair. Merci d'avance pour vos réponses.
KnightDogg
Refuznik
J'ai donc modifié l'ordre de prise en compte des disques dans le BIOS, et j'ai défini le disque IDE comme premier disque de boot. Le système démarre, puis écran noir ces infos:
Jusque là impec. Après tu as gardé le lanceur de freebsd au lieu d'installer grub sur la partition d'amorçage (du ide).
Non tu ne l'applique 1 fois seulement et tu utilises ton disque ide. La commande fdisk -l en mode rescue te donneras les noms de tes disques. Avec un peu de chance à l'installation du grub celui-ci reconnaitra aussi window. Si ce n'est pas le cas, tu le rentreras simplement à la main une fois que tu auras constaté à partir du bios qu'en bootant sur ide il lance bien grub et propose fedora. Et en demarrant sur le sata il lance bien win.
knightdogg
OK. Merci Refuznik.
J'essaie ça ce soir. Et je dirai si c'est OK ou pas.
knightdogg
C'est un échec.
J'ai booté sur le CD1, j'ai sélectionné le mode rescue, j'ai tapé "lnux rescue" en ligne commande qunad j'ai eu la main, no problemo.
Le truc a bossé un peu, puis m'a redonné la main; j'ai tapé:
"chroot /mnt/sysimage"
puis "fdisk -l"
bon, là j'ai vu qu'il m'avait monté mon IDE sur /dev/hdc avec les partitions suivantes:
hdc1 => FreeBSD (décidément, je ne m'en débarraserai pas)
hdc2 => Linux
hdc3 => Linux LVM
donc moi, j'ai lancé la commande:
"grub-install /dev/hdc"
et là: message d'erreur:
/dev/hdc does not have any corresponding BIOS drive."
J'ai quand même rebooté sur l'IDE, mais ça fait pareil qu'avant...
🙁
Merci d'avance pour vos lumières... :-?
herrib
Il semble utile de procéder à une installation en utilisant la ligne de commande Grub et l'auto complétion (utilisation de la touche tabulation pour faire apparaître les choix possibles).
Ce qui est important n'est pas l'ordre des partitions retranscrit par fdisk mais l'ordre des partitions vu de Grub; Grub utilise directement la numérotation du BIOS et des divergences peuvent apparaître, comme indiqué dans ce
fil.
En mode rescue:
# grub
grub> root(hd[tab]
-> indication de tous les choix possibles
grub>root (hd0,[tab] (exemple: on choisit 0)
-> indication de toutes les partitions pour ce disque, repérer une partition en "Filesystem type is ext2fs, partition type 0x83"
grub>root (hd0,4) (exemple: on choisit 4)
grub>setup (hd0) pour positionner stage1 de Grub sur le MBR
grub>quit
#shutdown -r now
Je n'explique pas le détail des commandes et renvoie le lecteur sur le tutorial Grub (
http://doc.fedora-fr.org/GRUB_:_Les_bases_pour_Fedora) pour plus d'explications.
Pour lancer Windows ou FreeBSD, il suffira de modifier le /boot/grub/grub.conf (si nécessaire) en y introduisant deux sections pour Windows et FreeBSD, utilisant le mécanisme du chainloader +1 (voir le tutorial).
Refuznik
Bah non c'est pas un echec puisque l'on a des informations. Tu as du laisser faire fedora pour le partitionnement et tu n'as pas supprimé bsd.
Perso. si c'est ta première installation, ré-installe et au moment du partitionnement, tu vires les partitions BSD et autres pour installer ta fedora.
herrib
Mauvaise idée. Il faut laisser FreeBSD (excellent système!) et régler le pb sans réinstaller (tiens, c'est nouveau, on ré-installe en cas de pb?).
Par ailleurs, le pb me semble résider dans l'identification de l'ordre des disques par Grub et si tel est le cas, le contournement n'est pas compliqué ... (voir mon post).
knightdogg
Merci les p'tits gars pour tous vos conseils !!
Et pendant que vous rédigiez vos post, j'ai quand même bossé un peu 🙂
et j'ai fait cela (qui revient un peu au même je pense, que la suggestion de herrib:
J'ai refait les étapes précédentes, sauf que avant de lancer le "grub-instal", j'ai édité le fichier "/boot/grub/device.map", et effectivement, il ne contenait qu'une seule ligne, qui désignait mon SATA: du style:
"(hd1) /dev/sa1" (approximativement)
j'ai donc rajouté la ligne suivante:
"(hd2) /dev/hdc"
et du coup:
"grub-install hd2" a fonctionné, dixit le message
J'ai redémarré, et là: "Erreur 17".
Donc je vais creuser le lien de herrib (sans désinstaller pour l'instant).
Merci encore.
knightdogg
Me re-voilà, toujours sous Window$ :-x
j'ai modifié le grub.conf...
Tout me semblait bon pour FC, mais j'ai remplacé la directive "rhgb" par "acpi=off" sur les conseils de herrib.
la directive "root(hd1,1) me semble OK; la commande "mount" me dit bien que /boot est monté sur /dev/hdc2, donc (hd1,1)...
pour Windows c'était tout faux par contre (c'était une conf par défaut je pense pour n'importe quel OS); donc j'ai mis ça:
title Windows XP
# les deux lignes suivantes car Win et FC sont sur des disques différents;
# le n° au boot est celui de FC, donc quand Grub passe la main au bootloader de Win,
# il me semble qu'il faut que son disque passe de n°2 à n°1
map (hd1) (hd0)
map (hd0) (hd1)
rootnoverify (hd0,0)
makeactive
chainloader +1
Après reboot, ma nouvelle conf a bien été prise en compte.
démarrage de FC: Echec:
"root (hd1, 1)
Filesystem typeunknown, partition type 0xf
kernel /vmlinuz-2.6.10-1.770_FC3 ro root=/dev/VolGroup00/LogVol00 acpi=off quiet
Error 17: Cannot mount selected partition"
(fin de citation)
démarrage de Windows: Echec:
Démarrage complètement raté; il affiche les lignes correspondantes du grub.conf (les "map", le "chainloader",...) et puis une ligne de caractères spéciaux comme pour me dire qu'il s'arrête.
J'y croyais un peu mais là je sèche.
Refuznik
Mauvaise idée. Il faut laisser FreeBSD (excellent système!) et régler le pb sans réinstaller (tiens, c'est nouveau, on ré-installe en cas de pb?).
Bah je croyais qu'après l'avoir testé, il voulait passer à une autre distribution et ne l'avait pas écrasé.
herrib
Reprends la manip que je t'ai indiquée. Le pb réside dans le fait que la vision produite par fdisk ne correspond pas à l'ordre des disques tel qu'il est géré par le BIOS.
root (hd1,1) n'est pas correct. Utilise l'auto complétion comme je te l'ai indiqué (soit dit en passant, à ce stade, je ne t'ai pas indiqué le acpi=off ....).
knightdogg
OK, je re-essaierai avec ta manip', herrib: Merci encore (en fait c'est dans le tuto que tu as indiqué, et sur lequel j'étais tombé dans l'après-midi d'ailleurs, qu'il est conseillé de spécifié le "acpi=off" et de supprimer "rhgb").
PS: Sinon, si ça peut vous mettre d'accord, je connaissais déjà FC4, et donc je voulais tester une autre distribution; et j'ai donc essayé d'installer FreeBSD via le réseau avec les 3 disquettes de boot, mais comme je n'ai pas réussi, je suis repassé sur Fedora. Ceci dit, rien n'empêchera de rajouter FreeBSD à côté de FC6.
knightdogg
Les gars... c'est résolu.
Herrib, tu avais raison, il fallait vraiment passer par l'interpréteur de commandes "grub".. je pensais qu'il lisait les disques dasn device.map, mais en fait non.
Et effectivement, il n'identifie pas les disques de façon identique par rapport à ce fichier: le disque des Linux était en fait hd0...
(hd0,0) était la partition FreeBSD qui a subsisté, et le /boot de FC6 est bien sur (hd0,1). Donc j'ai suivi les étapes que tu indiquais dasn ton premier post, j'ai modifié le grub.conf, avec les infos que j'ai récupérées de ces manips, et voilà... Et là je poste alors que je suis connecté sous FC6. Bon, je vais quand même vérifier que mon autre OS se lance toujours, et ce sera bon.
En tout cas merci pour ces explications concises et efficaces.
knightdogg
Bon, Window$ ne démarre pas. :-?
Est-ce que quelqu'un aurait une idée SVP?
Voici le contenu de mon grub.conf relatif à Window$:
[q]title Windows XP
unhide(hd1,0)
rootnoverify (hd1,0)
makeactive
chainloader +1[/q]
J'ai ajouté le "unhide", car sans, ça ne marche pas non plus (en fait le résultat est identique, qu'il y soit ou pas).
Et si je suis la procédure de herrib, je vois bien que le boot Window$ est en (hd1,0)...
Merci d'avance. 😐
herrib
knightdogg wrote:Herrib, tu avais raison, il fallait vraiment passer par l'interpréteur de commandes "grub".. je pensais qu'il lisait les disques dasn device.map, mais en fait non.
Bien, qu'on se le dise (pas que j'avais raison mais qu'il peut y avoir un décalage entre la "vision fdisk" et la vision "Grub"). En fait, cette intuition vient d'un cas identifié voilà quelque temps et qui a donné lieu à bien des tâtonnements (merci à Tobi1canobe pour l'intuition dans le traitement du
cas du 23 mars 2007!).
knightdogg
OK. Bah en tout cas c'est super d'en faire profiter tout le monde (tu me diras, c'est un but entre autres des forum).
Sinon je poste alors que je suis connecté sous Windows 8-), donc je file la soluce, au cas où:
- les "hide/unhide" ne s'appliquent pas à mon cas, car mon OS Win est le seul OS sur un disque matériel (je n'ai pas 2 windows sur le même disque).
- en fait il fallait jouer avec les "map", et là, il y a eu tâtonnement aussi... c'est la config qui est donné dans ce tutohttp://doc.fedora-fr.org/Dual_boot_Windows_XP_-_Fedora#Seul_Windows_XP_se_lance qui fonctionne sur mon PC; et non pas celle donnée ici:
http://doc.fedora-fr.org/GRUB_:_Les_bases_pour_Fedora.
Dans les deux cas on fait:
map (hd1) (hd0)
map (hd0) (hd1)
Par contre, ensuite, dans le premier on fait:
rootnoverify (hd1,0)
et dans le deuxième:
rootnoverify (hd0,0)
Je pensais que le deuxièpme marcherait, en tout cas ça me paraissait logique, et en fait non (décidément).
Voilà. Merci encore Herrib.
:pint:
herrib
Aie aie. Je suis l'auteur des deux tutos et je n'avais pas vu la coquille, que je viens de corriger. J'explique:
* supposons que Windows réside sur (hd1,0). La partition n'est pas la première partition active du premier disque actif et dès lors, NTLDR, le lanceur de Windows, ne pourra démarrer quand il sera appelé par Grub (chainloader +1).
* on utilise map pour "permuter" symboliquement hd0 et hd1 du point de vue de Grub.
* mais pour autant, Windows réside toujours sur hd1.
Dès lors, l'écriture est:
title Windows
map (hd1) (hd0)
map (hd0) (hd1) => la permutation symbolique est réalisée
rootnoverify (hd1,0) => Grub prend (hd1,0) comme racine sans engager aucune vérification
makeactive => il la tient comme le point de démarrage
chainloader +1 => il va lire le premier octet de cette partition et "commuter le contexte" (céder la main au programme qui réside sur cette partition).
knightdogg
OKAY!!! voilà qui est plus clair
Désolé j'avais pas fait gaffe aux auteurs des tutos 🙂