PDA

View Full Version : bootloader per Fedora 9 su 2° hd


patel45
16-05-2008, 07:30
Ho installato fedora sulla partizione hdd7 del 2° hd ide e per non inquinare il menu.lst principale ho fatto installare grub nel 2° hd riservandomi poi di copiare le voci relative sul menu.lst del hd n. 1.
Il menu.lst del 2° hd è questo:
title Fedora (2.6.25-14.fc9.i686)
root (hd0,6)
kernel /boot/vmlinuz-2.6.25-14.fc9.i686 ro root=UUID=05c447a3-5b3a-4c20-b784-b7696cceb6a4 rhgb quiet
initrd /boot/initrd-2.6.25-14.fc9.i686.img
L'ho ricopiato sul menu.lst del hd n. 1 modificando root (hd0,6) in root (hd1,6), ma non funziona.
Questa procedura l'ho attuata fino ad ora con successo con varie distro e non capisco perché con fedora9 non funziona. Ho provato a sostituire UUID con hdd7, ma l'errore non cambia.

arara
16-05-2008, 07:49
Ho installato fedora sulla partizione hdd7 del 2° hd ide e per non inquinare il menu.lst principale ho fatto installare grub nel 2° hd riservandomi poi di copiare le voci relative sul menu.lst del hd n. 1.
Il menu.lst del 2° hd è questo:
title Fedora (2.6.25-14.fc9.i686)
root (hd0,6)
kernel /boot/vmlinuz-2.6.25-14.fc9.i686 ro root=UUID=05c447a3-5b3a-4c20-b784-b7696cceb6a4 rhgb quiet
initrd /boot/initrd-2.6.25-14.fc9.i686.img
L'ho ricopiato sul menu.lst del hd n. 1 modificando root (hd0,6) in root (hd1,6), ma non funziona.
Questa procedura l'ho attuata fino ad ora con successo con varie distro e non capisco perché con fedora9 non funziona. Ho provato a sostituire UUID con hdd7, ma l'errore non cambia.

Hai provato a cambiare cosi:
root (hd1,6)
kernel /boot/vmlinuz.... root=/dev/sda7


Comunque quel metodo imho è scomodo perche quando aggiorni il kernel di fedora ti tocca andare a modificare a mano il boot loader della distro principale.
Io piuttosto preferisco installare il boot loader delle distro secondarie nel primo settore della loro partizione root, e poi dal boot loader principale richiamo quello delle altre, cosi:

title Distro 2
root (hd0,5)
chaniloader +1

title Distro 3
root (hd0,7)
chaniloader +1

in questo modo quando aggiorno il kernel non devo aggiornare a mano il file menu.lst della distro principale.

patel45
16-05-2008, 11:30
Hai provato a cambiare cosi:
root (hd1,6)
kernel /boot/vmlinuz.... root=/dev/sda7
Ho provato ma non funziona. Ho anche provato con
title Distro
root (hd1,6)
chainloader +1
e non va. Se invece seleziono da bios il 2° hd tutto funziona.

arara
16-05-2008, 12:00
Ho provato ma non funziona. Ho anche provato con
title Distro
root (hd1,6)
chainloader +1
e non va. Se invece seleziono da bios il 2° hd tutto funziona.

Se i nomi sono giusti dovrebbe avviarsi, prova ad avviare il PC, entra su GRUB della distro principale, premi C per entrare nella shell di grub ed esegui il comando:

geometry (hd0)
geometry (hd1)

per stampare la tabella delel partizioni, cosi controlli se i nomi vanno bene.

Perche funzioni il metodo con chainloader devi prima installare Grub sull'MBR della partizione di fedora. Lo si puo fare direttamente durante l'installazione oppure dopo col comando:
grub-install /dev/sda7
(dove sda7 è la partizione di fedora)

Se adesso non puoi avviare fedora puoi fare cosi da un'altra distro:

mount /dev/sda7 fedora
chroot fedora
grub
geometry (hd0) (serve per controllare i nomi se sono giusti)
root (hd1,6)
setup (hd1,7)
exit

in modo da installare Grub sulla partizione di fedora, poi riavvia e riprova col chainloader.

patel45
16-05-2008, 13:09
Non ci capisco più nulla, ecco i risultati dei comandi geometry dati dalla shell di Pclos (distro principale):
grub> geometry (hd1)
drive 0x81: C/H/S = 25841/240/63, The number of sectors = 390721968, /dev/sda
Partition num: 0, Filesystem type unknown, partition type 0x7
Partition num: 4, Filesystem type is ext2fs, partition type 0x83
Partition num: 5, Filesystem type is ext2fs, partition type 0x83
Partition num: 6, Filesystem type unknown, partition type 0x82
Partition num: 7, Filesystem type is ext2fs, partition type 0x83
Partition num: 8, Filesystem type is ext2fs, partition type 0x83

grub> geometry (hd0)
drive 0x80: C/H/S = 77557/16/63, The number of sectors = 78177792, /dev/hdd
Partition num: 0, Filesystem type unknown, partition type 0x7 (vista)
Partition num: 4, Filesystem type unknown, partition type 0x82 (vuota)
Partition num: 5, Filesystem type is ext2fs, partition type 0x83 (ubuntu)
Partition num: 6, Filesystem type is ext2fs, partition type 0x83 (fedora)


e quelli di fdisk -l
fdisk -l

Disk /dev/hdd: 40.0 GB, 40027029504 bytes
16 heads, 63 sectors/track, 77557 cylinders
Units = cilindri of 1008 * 512 = 516096 bytes

Dispositivo Boot Start End Blocks Id System
/dev/hdd1 * 3 40103 20210688 7 HPFS/NTFS
/dev/hdd2 40104 65055 12575808 5 Esteso
/dev/hdd5 40104 42144 1028632+ 82 Linux swap / Solaris
/dev/hdd6 42145 52928 5435104+ 83 Linux
/dev/hdd7 52929 65055 6111976+ 83 Linux

Disk /dev/sda: 200.0 GB, 200049647616 bytes
240 heads, 63 sectors/track, 25841 cylinders
Units = cilindri of 15120 * 512 = 7741440 bytes

Dispositivo Boot Start End Blocks Id System
/dev/sda1 * 1 2709 20480008+ 7 HPFS/NTFS
/dev/sda2 2710 25842 174880913 f W95 Ext'd (LBA)
/dev/sda5 2710 3522 6146248+ 83 Linux
/dev/sda6 3523 4471 7174408+ 83 Linux
/dev/sda7 4472 4593 922288+ 82 Linux swap / Solaris
/dev/sda8 4594 25008 154337368+ 83 Linux
/dev/sda9 * 25009 25842 6300472+ 83 Linux
+
il disco sda è quello di boot, ed è sempre stato hd0, ora sembra hd1
se invece il comando geometry lo do direttamente da grub allora l'output va d'accordo con fdisk -l.

arara
16-05-2008, 16:30
stando cosi dovresti da PClinuxOS eseguire:

mkdir fedora
mount /dev/hdd7 fedora
chroot fedora
grub
root (hd0,6)
setup (hd0,6)
exit

per installare il boot loader di fedora sulla sua partizione.

poi sul file menu.lst sempre di PCLinuxOS aggiungere:
title fedora
root (hd0,6)
chainloader +1

oppure direttamente dalla shell di grub scrivi a mano i comandi
root (hdX,Y)
chaniloader +1
boot

cambiando il numero finche non trovi quello giusto.

patel45
16-05-2008, 20:03
stando cosi dovresti da PClinuxOS eseguire:

mkdir fedora
mount /dev/hdd7 fedora
chroot fedora
grub
root (hd0,6)
setup (hd0,6)
exit

per installare il boot loader di fedora sulla sua partizione.

poi sul file menu.lst sempre di PCLinuxOS aggiungere:
title fedora
root (hd0,6)
chainloader +1
Ma perché Ubuntu, installata sullo stesso disco di Fedora viene avviata da
title Ubuntu 7.10
root (hd1,5)
kernel /boot/vmlinuz-2.6.22-14-generic root=/dev/hdd6 ro quiet splash locale=it_IT
initrd /boot/initrd.img-2.6.22-14-generic
quiet

arara
17-05-2008, 11:06
Ma perché Ubuntu, installata sullo stesso disco di Fedora viene avviata da
title Ubuntu 7.10
root (hd1,5)
kernel /boot/vmlinuz-2.6.22-14-generic root=/dev/hdd6 ro quiet splash locale=it_IT
initrd /boot/initrd.img-2.6.22-14-generic
quiet

se ti sembra piu semplice cosi prova direttamente dalla shell di grub (appena avviato il PC, non da PClinuxOS) a scrivere a mano i comandi partendo da questo:

root (hd1,6)
kernel /boot/vmlinuz....(premi TAB per completare) root=/dev/hdd7
initrd /boot/initrd.img....(premi TAB per completare)
boot

e se non va torni indietro e riprovi, finche trovi la combinazione giusta. quando l'hai trovata, la salvi sul menu.lst di pclinux os

patel45
17-05-2008, 12:59
Ho provato, il primo comando root (hd1,6) funziona ed anche se lo completo col tab mi da le partizioni disponibili.
il secondo comando kernel /boot/ mi da errore e non completa niente.
Se invece parto con root (hd0, e lo completo con il tab e scelgo una partizione valida allora posso anche dare kernel /boot/ e il tab mi da le scelte. Quindi sembra che questo metodo funzioni solo sul disco di boot.

patel45
17-05-2008, 18:24
Perche funzioni il metodo con chainloader devi prima installare Grub sull'MBR della partizione di fedora. Lo si puo fare direttamente durante l'installazione oppure dopo col comando:
grub-install /dev/sda7
(dove sda7 è la partizione di fedora).Ho staccato il disco di boot, ho fatto partire fedora ed ho dato il comando dopo essermi accertato con fdisk di dare il sda giusto ed ho installato Grub sull'MBR della partizione di fedora.
Quindi ho riattaccato il disco di boot e sul menu.lst di pclos ho inserito
title fedora
root (hd1,6)
chainloader +1
Ora il boot funziona. Grazie arara

MrAsd
20-05-2008, 00:50
Vedo che hai già risolto: meglio così.

Comunque il problema deriva dal fatto che Fedora 9 formatta le partizioni ext usando inodes da 256bit (per semplificare la conversione ad ext4) causando incompatibilità con alcune versioni di grub (ossia tutte tranne quelle appositamente patchate per Fedora 9).

patel45
20-05-2008, 06:23
Vedo che hai già risolto: meglio così.

Comunque il problema deriva dal fatto che Fedora 9 formatta le partizioni ext usando inodes da 256bit (per semplificare la conversione ad ext4) causando incompatibilità con alcune versioni di grub (ossia tutte tranne quelle appositamente patchate per Fedora 9).
Ora capisco, non mi era mai successo prima di non riuscire ad avviare una distro editando il menu.lst principale. Dopo Fedora ho installalo Opensuse e non ho avuto problemi.