Pagina 1 di 1

[GRUB2] Grub e Windows 7 Bootloader

MessaggioInviato: dom nov 15, 2009 1:25 am
da M@ttia
Nonostante ci abbia messo un po' ad abituarmi al nuovo Grub2 (menu.lst mi manca un po' [bleh]), ora mi trovo con un problema concettuale: sul mio PC ho 3 OS: Windows XP, Windows 7 e Kubuntu 9.10 (installati in quest'ordine). All'avvio mi si presenta Grub, il quale ha rilevato correttamente tutto e, dopo varie modifiche mie ai nomi e a quello che voglio far apparire, mi mostra le voci seguenti:

  • "Windows 7 (loader) (on /dev/sda1)"
  • "Kubuntu 9.10"

Cliccando su Kubuntu si avvia senza problemi, mentre cliccando su Win7 mi avvia il BOOTLOADER DI WINDOWS 7, che a sua volta mi chiede se desidera avviare XP o Seven (ed entrambi poi partono correttamente). Ciò che io desideravo era integrare le 3 voci

XP
Seven
Kubuntu


direttamente nel menu di Grub, così da non dover passare per il bootloader di 7.

Attualmente il mio menu di grub contiene le voci seguenti:
menuentry "Windows 7 (loader) (on /dev/sda1)" {
saved_entry=${chosen}
save_env saved_entry
insmod ntfs
set root=(hd0,1)
search --no-floppy --fs-uuid --set 9ab4fc1cb4fbf919
chainloader +1
}

menuentry "Kubuntu 9.10" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
saved_entry=${chosen}
save_env saved_entry
insmod ext2
set root=(hd0,6)
search --no-floppy --fs-uuid --set 93cae4cb-31aa-48fd-b6ae-4e7fc391919c
linux /boot/vmlinuz-2.6.31-15-generic-pae root=UUID=93cae4cb-31aa-48fd-b6ae-4e7fc391919c ro splash vga=789 quiet quiet splash
initrd /boot/initrd.img-2.6.31-15-generic-pae
}


Aggiungo che ho un solo HD SATA (/dev/sda), con le seguenti partizioni (interessanti):
/dev/sda1 Windows XP [la partizione ha il flag boot e UUID 9ab4fc1cb4fbf919)
/dev/sda2 Windows Seven [la partizione non ha flag e UUID B6F8E6FEF8E6BBAD)
/dev/sda6 Kubuntu
/dev/sda7 Swap di Linux


Quali 2 nuove voci menuentry devo inserire esattamente per poter avviare XP e Seven direttamente senza passare dal bootloader di Seven?
Gracias! [^]

Re: [GRUB2] Grub e Windows 7 Bootloader

MessaggioInviato: dom nov 15, 2009 2:42 am
da masterz3d
Qui qualcosa non quadra... hai detto di aver installato WXP su sda1, mentre grub2 in sda1 ha messo W7...

(hd0,1) è la prima partizione del disco 0 in grubese, ovvero sda1 in linuxese. E grub dice che in sda1 sta Windows 7. Ma tu hai detto che hai installato Windows XP in sda1. E il bello è che se fai chainloader+1, come hai correttamente messo, dovrebbe saltare al settore successivo, dove dovrebbe stare il boot sector di Windows XP, ma salta fuori il menu di Windows 7. Ho il sospetto che con la sequenza di installazione che hai fatto il bootloader di Windows 7 abbia "dominato" su quello di Windows XP, e grub2 ha dominato su quello di Windows 7. Solo che Windows non è "educato" e sovrascrive a caterpillar tutto quello su cui mette le mani, se stesso compreso.

Non mi stupisco che ti faccia una cosa simile. Non so, da quanto ho letto secondo me tramite grub2 non puoi fare molto. A quanto ne so penso che qui ci voglia un guru di Windows.

Fa' una cosa, forse potrebbe essere utile dare un'occhiata a boot.ini di Windows 7 e di Windows XP.

Normally, the boot loader is embedded in the boot sector of the partition on which the operating system is installed.

http://oss.sgi.com/LDP/HOWTO/Kernel-HOWTO/grubconf.html

Sicuro che il bootloader Windows che ti trovi davanti sia quello di Windows 7 e non quello di Windows XP?

Chissà se così funziona. Male che vada hai sempre il bootloader di Windows 7 con il nome sbagliato.
Codice: Seleziona tutto
menuentry "Windows XP" {
saved_entry=${chosen}
save_env saved_entry
insmod ntfs
set root=(hd0,1)
search --no-floppy --fs-uuid --set 9ab4fc1cb4fbf919
chainloader +1
}

menuentry "Windows 7" {
saved_entry=${chosen}
save_env saved_entry
insmod ntfs
set root=(hd0,2)
search --no-floppy --fs-uuid --set b6f8e6fef8e6bbad
chainloader +1
}

menuentry "Kubuntu 9.10" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
saved_entry=${chosen}
save_env saved_entry
insmod ext2
set root=(hd0,6)
search --no-floppy --fs-uuid --set 93cae4cb-31aa-48fd-b6ae-4e7fc391919c
linux /boot/vmlinuz-2.6.31-15-generic-pae root=UUID=93cae4cb-31aa-48fd-b6ae-4e7fc391919c ro splash vga=789 quiet quiet splash
initrd /boot/initrd.img-2.6.31-15-generic-pae
}


Ma dovrei vedere se hide, unhide e rootnoverify si applicano anche a grub2. Non ho mai usato grub2, dovrei provare... [uhm]

Anche SuperGrubDisk dovrebbe essere utile.

Re: [GRUB2] Grub e Windows 7 Bootloader

MessaggioInviato: dom nov 15, 2009 10:52 am
da Al3x
ho la stessa identica situazione di Mattia e purtroppo il boot loader di Seven, com'è sempre avvenuto in tutte le release di Windows NT, gestisce in toto anche quello della precedente versione.
Ci sarebbe da capire come creare un collegamento che faccia direttamente il "salto" ad XP ma proprio non saprei da dove cominciare. Forse esaminando un sistema in cui ci siano solo XP e Ubuntu si potrebbe risalire alla corretta sintassi da inserire in grub2.

(menu.lst mi manca un po' [bleh])

a chi lo dici [rolleyes]

Re: [GRUB2] Grub e Windows 7 Bootloader

MessaggioInviato: dom nov 15, 2009 12:36 pm
da M@ttia
masterz3d ha scritto:Qui qualcosa non quadra... hai detto di aver installato WXP su sda1, mentre grub2 in sda1 ha messo W7...
Sì esattamente, il Bootloader di Win7 si appropria di tutto, cosicché accedendo alla partizione di XP e/o 7, parte il bootloader di 7 che ti chiede quale dei due avviare, e io cercavo proprio i parametri per poterlo bypassare (e vedo che Al3x è messo come me)...

Il tuo codice sotto l'avevo già provato (assieme a 1000 altre possibilità), ma mi porta sempre al bootloader di 7...

Re: [GRUB2] Grub e Windows 7 Bootloader

MessaggioInviato: dom nov 15, 2009 12:40 pm
da masterz3d
Me stesso ha scritto:Fa' una cosa, forse potrebbe essere utile dare un'occhiata a boot.ini di Windows 7 e di Windows XP.

Postali. Intanto proverò a vedere se si può disinstallare il bootloader di Windows.

Re: [GRUB2] Grub e Windows 7 Bootloader

MessaggioInviato: dom nov 15, 2009 3:00 pm
da M@ttia
Beh ragazzi, poiché ci ho perso quasi una mattinata e non ho risolto con Grub e basta, ho risolto come segue:

-) Tramite EasyBCD ho modificato il Bootloader di Seven aggiungendo una voce per Kubuntu (anche lì all'inizio avevo problemi, ma alla fine quasi per miracolo va).

-) Sempre tramite EasyBCD ho impostato i nomi, timeout, ecc. di Seven come li volevo.

-) Ho impostato grub per caricarmi il Bootloader di Seven con un attesa di 0 sec. come OS predefinito.


Così facendo mi carica al volo subito il Bootloader di Seven che mi offre i 3 OS (avrei potuto eliminare Grub del tutto, ma preferisco avere anche lui che, nel caso di malfunzionamenti di Seven un giorno, mi lascerebbe comunque sempre bootare Kubuntu senza problemi, ed avendo un timeout di 0 sec. al momento grub è come se non esistesse "in pratica").

Mi spiace aver dovuto risolvere così perché stimo molto grub e lo uso da sempre (alla faccia di quella porcata prepotente di Seven Loader...), ma alla fin fine ottengo l'effetto desiderato ed evito di perdere altre 3 ore, magari senza risolvere [^]

Nel caso però qualcuno fosse interessato all'argomento (Al3x magari?), potete continuare a parlarne qui se volete [;)]

Re: [GRUB2] Grub e Windows 7 Bootloader

MessaggioInviato: dom nov 15, 2009 4:05 pm
da masterz3d
E' una soluzione come un'altra, ed è anche piuttosto ben fatta perché lasci spazio a grub. [;)]