OVH Cloud OVH Cloud

[FreeBSD 5.3 amd64] Multiboot avec WinXp sur second disque

21 réponses
Avatar
Laurent
Bonjour,

Après plusieurs lectures de la page de Man de boot0cfg, des recherches
sur Google et un essai infructueux, je fait appel aux lumières des
gouroux qui passeraient par là.

Je suis sous FreeBSd 5.3 amd64, et j'ai dû installer un winXp sur un
deuxième disque pour des raisons indépendantes de ma volonté ;-) (le
port de qemu étant "broken" aussi).

FreeBSd est sur ad4 et XP sur ad1. Xp a été installé alors que ad4 était
débranché (pour éviter que cette daube ne casse ma MBR).

J'ai essayé ça :

# boot0cfg -s 5 ad1

mais j'ai eu le message suivant : boot0cfg: /dev/ad1: unknown or
incompatible boot code.

Je me suis résolu a installer Grub, mais le port est marqué "IGNORE"
parce que je suis en amd64.

Que faire ?

# boot0cfg -m 0x1 ad1 s'il fonctionne ne me permettrait de booter *que*
sur Xp ?

Peut-on passer deux disques en arguments à boot0cfg ?
du genre:

# boot0cfg -m 0x1 ad1,ad4

merci d'avance pour vos lumières


--
Laurent, newbie FreeBSD'iste ;-)

10 réponses

1 2 3
Avatar
Croco
Le 18-03-2005, Michel Talon a écrit :
Laurent wrote:

Certes mais comme je l'ai dit au début, Grub n'est pas encore porté sur
amd64.


Tu as vérifié que grub pour x86 ne marche pas? Sachant que amd64 est censé
être totalement compatible avec x86, c'est curieux. Ou alors il y a un
problème pour booter ensuite un ex&cutable 64 bits?


Le grub installé par un Linux 64 bits est effectivement une version
32bits. Par contre, je n'ai pas réussi à lui faire démarrer un FreeBSD
amd64 pour une raison que j'ignore encore (il n'arrive pas à lire la
partition pour passer la main).

Croco


Avatar
talon
Croco wrote:
Le 18-03-2005, Michel Talon a écrit :
Laurent wrote:

Certes mais comme je l'ai dit au début, Grub n'est pas encore porté sur
amd64.


Tu as vérifié que grub pour x86 ne marche pas? Sachant que amd64 est censé
être totalement compatible avec x86, c'est curieux. Ou alors il y a un
problème pour booter ensuite un ex&cutable 64 bits?


Le grub installé par un Linux 64 bits est effectivement une version
32bits. Par contre, je n'ai pas réussi à lui faire démarrer un FreeBSD
amd64 pour une raison que j'ignore encore (il n'arrive pas à lire la
partition pour passer la main).


C'est un grub patché avec le support ufs2 que tu as utilisé?



Croco


--

Michel TALON



Avatar
Laurent
Xavier HUMBERT wrote:
Marwan Burelle wrote:


J'ai perdu mon boot plusieurs fois à cause de w2k (et de l'installe de
3ds, va savoir pourquoi) et pouvoir réinstaller en 5 min avec juste
une disque de boot, c'est agréable.



Si tu gardes une copie de ton boot.ini et du bootsect FriBi, c'est pas
dur à réparer.

Je suis loin, très loin d'être fana MS, mais là, on tombe dans le
"pourquoi faire simple quand on peut faire compliqué"

XAv



Ben en fait après essai, le NT boot loader ne sait pas booter un
bootsector étranger situé sur un autre disque physique que celui ou il
est installé.

En gros NT loader est sur ad1 et FreeBSD sur ad4. Il faudrait à la
limite le mettre sur ad4 et dans le boot.ini lui dire que Windose est
sur le nième disque ATA du pc. Mais j'ai pas envie, je vais essayer grub
en faisant le bourrin :

# cd /usr/ports/sysutils/grub
# make MACHINE_ARCH=i386 install distclean

???


D'ailleurs j'essaie de m'en tirer comme ça (pas réussi encore) pour
faire fonctionner ma epson stylus cx3650 avec cups et le port du driver
pips-scx3500_3600 qu'a gentiment fait Hajimu UMEMOTO à ma demande (vive
le Japon).


--
Laurent, newbie FreeBSD'iste ;-)


Avatar
Laurent
Xavier wrote:
Laurent wrote:


Ben en fait après essai, le NT boot loader ne sait pas booter un
bootsector étranger situé sur un autre disque physique que celui ou il
est installé.



Ben oui. C'est esspliqué dans le handbook. Il faut recopier un fichier
-je sais plus lequel, la machine tourne sous XP, pour ma fille en ce
moment- sur la partition Windows, puis le désigner dans boot.ini

XAv


C'est exactement ce que je dis ;-)

En fait il faut copier le mbr avec dd dans un fichier bootsect.bsd p.ex.
Mettre ce fichier (de 512 octets) à la racine c: du windows et mettre
une entrée dans le boot.ini c:bootsect.bsd="FreeBSD". Mais ça ne
fonctionne pas si le bootsect.bsd à été copié d'un *autre* disque
physique (j'ai essayé).

Le contraire fonctionnerait paut-être (avoir le MBR de windows en début
du disque FreeBSD, et modifier boot.ini pour lui dire où se trouve
WinWin), mais j'en n'en ai pas envie et c'est à mon avis une méthode
barbare (et pourtant des fois des méthodes comme ça je ne m'en prive pas).

Merci quand même.

--
Laurent, newbie FreeBSD'iste ;-)


Avatar
Paul Gaborit
À (at) Thu, 24 Mar 2005 21:46:05 +0100,
Laurent écrivait (wrote):
En fait il faut copier le mbr avec dd dans un fichier bootsect.bsd
p.ex. Mettre ce fichier (de 512 octets) à la racine c: du windows et mettre
une entrée dans le boot.ini c:bootsect.bsd="FreeBSD". Mais ça ne fonctionne
pas si le bootsect.bsd à été copié d'un *autre* disque physique (j'ai
essayé).

Le contraire fonctionnerait paut-être (avoir le MBR de windows en début du
disque FreeBSD, et modifier boot.ini pour lui dire où se trouve WinWin),
mais j'en n'en ai pas envie et c'est à mon avis une méthode barbare (et
pourtant des fois des méthodes comme ça je ne m'en prive pas).


Juste une question : pourquoi n'utilisez-vous pas le bootloader de FreeBSD
(celui qui s'installe avec boot0cfg) ?

--
Paul Gaborit - <http://www.enstimac.fr/~gaborit/>

Avatar
xavier
Paul Gaborit wrote:

Juste une question : pourquoi n'utilisez-vous pas le bootloader de FreeBSD
(celui qui s'installe avec boot0cfg) ?


Finalement, j'ai trouvé mieux : celui de *Net*BSD 3 (qui vient de sortir
discrètement en beta) Lui, au moins, permet de mettre un label à chaque
entrée de MBR

XAv
--
Xavier HUMBERT
"Liberté, j'écris ton NON"
http://www.pourmoicestnon.com/ - http://www.non-2005.org/

Avatar
Paul Gaborit
À (at) Fri, 25 Mar 2005 12:20:37 +0100,
(Xavier HUMBERT) écrivait (wrote):
Paul Gaborit wrote:

Juste une question : pourquoi n'utilisez-vous pas le bootloader de FreeBSD
(celui qui s'installe avec boot0cfg) ?


Finalement, j'ai trouvé mieux : celui de *Net*BSD 3 (qui vient de sortir
discrètement en beta) Lui, au moins, permet de mettre un label à chaque
entrée de MBR


C'est un "plus" intéressant ! Permet-il aussi de basculer vers un autre disque
sans les passer tous dans l'ordre ce qui est (ou était) une limitation du
bootloader de FreeBSD ?

--
Paul Gaborit - <http://www.enstimac.fr/~gaborit/>


Avatar
Laurent
Paul Gaborit wrote:
À (at) Thu, 24 Mar 2005 21:46:05 +0100,
Laurent écrivait (wrote):

En fait il faut copier le mbr avec dd dans un fichier bootsect.bsd
p.ex. Mettre ce fichier (de 512 octets) à la racine c: du windows et mettre
une entrée dans le boot.ini c:bootsect.bsd="FreeBSD". Mais ça ne fonctionne
pas si le bootsect.bsd à été copié d'un *autre* disque physique (j'ai
essayé).

Le contraire fonctionnerait paut-être (avoir le MBR de windows en début du
disque FreeBSD, et modifier boot.ini pour lui dire où se trouve WinWin),
mais j'en n'en ai pas envie et c'est à mon avis une méthode barbare (et
pourtant des fois des méthodes comme ça je ne m'en prive pas).



Juste une question : pourquoi n'utilisez-vous pas le bootloader de FreeBSD
(celui qui s'installe avec boot0cfg) ?



Bon je veut bien être gentil mais il faudrait quand même lire la
totalité du tread. Ma question initiale était :

Comment faire (tout ce que j'ai expliqué) avec boot0cfg, car avec la
page de man je suis un peu perdu.

J'avais même proposé :

Que faire ?

# boot0cfg -m 0x1 ad1 s'il fonctionne ne me permettrait de booter *que* sur Xp ?

Peut-on passer deux disques en arguments à boot0cfg ?
du genre:

# boot0cfg -m 0x1 ad1,ad4


Comment faire pour booter sur deux disques différents avc boot0cfg tout
simplement.


--
Laurent, newbie FreeBSD'iste ;-)


Avatar
talon
Xavier wrote:
Laurent wrote:

Comment faire (tout ce que j'ai expliqué) avec boot0cfg, car avec la
page de man je suis un peu perdu.


J'ai même jamais essayé. Quand il faut trifouiller quelque chose dans le
bootloader, j'utilise sysinstall.


Et bien moi j'ai essayé :-(
Si tu as deux disques ad0 et ad1 par exemple, tu fais
boot0cfg -B ad0
boot0cfg -B ad1
Voilà. L'inconvénient est que c'est moche, il n'y a pas de sigle pour
WindowsXP, etc. il faut passer par le premier disque pour accéder au second,
...
Bref, la bonne solution c'est grub.


XAv


--

Michel TALON


Avatar
Laurent
Michel Talon wrote:
Xavier wrote:

Laurent wrote:


Comment faire (tout ce que j'ai expliqué) avec boot0cfg, car avec la
page de man je suis un peu perdu.


J'ai même jamais essayé. Quand il faut trifouiller quelque chose dans le
bootloader, j'utilise sysinstall.



Et bien moi j'ai essayé :-(
Si tu as deux disques ad0 et ad1 par exemple, tu fais
boot0cfg -B ad0
boot0cfg -B ad1
Voilà. L'inconvénient est que c'est moche, il n'y a pas de sigle pour
WindowsXP, etc. il faut passer par le premier disque pour accéder au second,
...
Bref, la bonne solution c'est grub.



En googlant j'ai vu dans les archives d'une mailing-list FreeBSD que
grub32 ne peut pas lancer de noyau 64. Tant pis.

Ma solution actuelle est la suivante, puisque j'ai un BIOS récent je
peux appuyer sur F11 au démarrage pour avoir le bootmenu du BIOS et
ainsi sélectionner mon disque ATA (avec win).

J'ai essayé GAG, mais celui-ci ne voyait pas mes interfaces SATA.


Je considère donc mon problème comme résolu (même si ce n'est pas
parfait), windaube ne méritant pas autant d'efforts de ma part.


Merci à tous.

--
Laurent, newbie FreeBSD'iste ;-)



1 2 3