PDA

Visualizza versione completa : grub e triplo boot


Gergio
14-05-2003, 11.25.05
Ciao a tutti, vorrei sottoporvi un mio piccolo problema/dubbio.

Premessa: ho un pc con 2 hd, fino a 2 giorni fa avevo solo win xp home come s.o. Poi, siccome mi serviva un sistema più professionale, ho pensato di installare win 2000 su una partizione del secondo hd. Come per magia xp non partiva più. Ho provato con la console di ripristino a fare un fixmbr e fixboot, ma non funzionava. Allora ho pensato di installare Linux sulla seconda partizione del secondo hd, in modo che il suo boot loader mi risolvesse il problema.
Ho scelto grub, che si è configurato in automatico per il boot triplo con Linux, xp e 2000. Il problema è che se scelgo uno dei 2 sistemi microsoft mi porta al boot loader di windows, dal qle mi parte solo 2000.
Adesso sono riuscito a sistemare il boot loader di windows, ma mi rimane il grub che, se scelgo uno dei 2 sistemi win, mi porta al boot loader di win.
Volendo utilizzare un solo boot loader ho pensato di inserire la possibilità di bootare linux dal boot loader microsoft.
Da root di linux ho dato il comando:
dd if=/dev/hdc2 of=/linux.bin bs=512 count=1
Poi ho messo il file che mi ha creato nella root di c: e ho modificato il boot.ini di win. Però non funziona: linux non parte.

A qsto punto la mia domanda è: non parte perchè la procedura descritta funziona solo con lilo? Oppure è il boot loader di microsoft che si fa gli affari suoi? Riesco a configurare il grub in modo che mi faccia partire direttamente i miei 3 sistemi? Come?

Attendo fiducioso i vostri consigli...

Gergio
14-05-2003, 11.29.45
questo è il mio attuale grub.conf:

title Linux
root (hd1,1)
kernel /boot/wmlinuz-2.4.7-10 ro root=/dev/hdc2 hdd=ide-scsi
initrd /boot/initrd-2.4.7-10.img
title win XP
rootnoverify (hd0,0)
chainloader +1
title win 2000
rootnoverify (hd1,0)
chainloader +1

E' possibile modificarlo in modo che i 2 sistemi windows partano direttamente senza passare dal boot loader di windows?
Grazie a tutti

JMass
14-05-2003, 12.17.15
Originariamente inviato da gergio

Da root di linux ho dato il comando:
dd if=/dev/hdc2 of=/linux.bin bs=512 count=1
Poi ho messo il file che mi ha creato nella root di c: e ho modificato il boot.ini di win. Però non funziona: linux non parte.

A qsto punto la mia domanda è: non parte perchè la procedura descritta funziona solo con lilo? Oppure è il boot loader di microsoft che si fa gli affari suoi? Riesco a configurare il grub in modo che mi faccia partire direttamente i miei 3 sistemi? Come?

Attendo fiducioso i vostri consigli...

Non parte (ma non parte più niente?) forse perchè prima devi installare grub sul primo settore di /dev/hdc2
grub-install /dev/hdc2
mentre presumo sia ora installato sull'mbr. Fai attenzione perchè se sbagli qualcosa devi avere un bel floppy
d'avvio di Linux oppure bootare con il primo cd della distro per reinstallare grub.
" kernel /boot/wmlinuz-2.4.7-10" è un copia-incolla? dovrebbe essere vmlinuz.
Per bootare direttamente da grub xp o w2k non saprei, avevo fatto qualche esperimento
con w98 e w2k ma senza successo.

Marko
14-05-2003, 13.53.12
Allora, se ho ben capito tu avevi xp e dopo hai installato il 2k.
E' normale che non parta più perchè il 2k ha il bootloader più vecchio dell'xp e se installi prima 2k e poi xp tutto funge ma se fai il contrario ti si sp@@@@na tutto e parte solo più il 2k e non l'xp e neanche facendo fixboot e fixmbr non parte perchè i file del bootloader sono quelli vecchi del 2k che all'xp non piacciono.

La soluzione è questa: avvia windows 2000, metti il cd di windows xp e scegli nuova installazione.
Ti chiederà di riavviare ma tu non riavviare.
Apri il boot.ini, troverai le voci relative a w2k, wxp e poi installazione di windows xp.
Cancella la voce installazione di windows xp, riavvia e come per magia ti si avvieranno di nuovo sia w2k sia wxp.
Cancella poi la cartella $WNT o qualcosa del genere al prompt di C che contiene i file temporanei dell'installazione di windows xp.

Se non dovessi riuscirci, io sono qui ;)

Gergio
14-05-2003, 15.09.13
grazie a entrambi.
:)
Sono riuscito a far funzionare entrambi i sistemi windows, avevo descritto tutta la situazione per fare un qdro completo della situazione.
L'unica cosa che non mi piace è che all'avvio parte il grub, se scelgo linux, tutto ok, se scelgo uno dei 2 windows, mi manda al boot loader di windows, che mi fa scegliere tra xp e 2000.
Vorrei eliminare uno dei 2 boot loader, se possibile.
Dato che non ero riuscito con qllo di win, volevo sapere se era possibile farlo con grub.

Domanda: se reinstallo linux il grub è in grado di distinguere i 2 win e farli partire direttamente, oppure mi ritrovo la situazione attuale?

x Vito: "kernel /boot/wmlinuz-2.4.7-10" è qllo che c'è nel file di conf. Magari non è corretto, ma se funziona... ;)