Newsgroup: it.comp.os.linux.iniziare
Titolo: Chainloading da lilo a grub

Ho installato ubuntu sulla partizione sda18 e gli ho fatto mettere il
boot loader lì, avevo già lilo nell'MBR. 
Ora devo fare chainloading di grub su sda18 da lilo, e non ricordo come
fare.
Il problema è che lilo vuole che specifichi un kernel, ma quale gli
specifico??
Ho fatto per ora quanto segue, copiando kernel e initrd dalla partizione
di ubuntu, ma non va.
Ho cercato ma non sono riuscito a trovare la soluzione.
----
image=/boot/ubuntu/vmlinuz-2.6.35-22-generic
initrd=/boot/ubuntu/initrd.img-2.6.35-22-generic
label="ubuntu"
read-only
root=/dev/sda18
-- 
Herbie


Facebook: Massimo Bacilieri

Il 22-11-2010, Herbie dice:

Mi sembra che l'errore sia qui, tu devi semplicemente
aggiungere SOLO queste due righe in lilo.conf e poi
ovviamente dare lilo:
other=/dev/sda18
label=ubuntu
-- 
Saluti, Dalet

 label=ubuntu
in effetti all'inizio avevo fatto questo, ma quando lancio lilo mi dice,
riguardo quel blocco:
Fatal: Sorry, don't know how to handle device 0x10302
Che vuol dire???
-- 
Herbie

Che vuol dire???
Ok e' quel che temevo/pensavo.. mi spiego.
Anch'io ho fatto partizioni oltre la 15 e ho avuto lo stesso
problema. Ma guarda che non c'entra lilo o grub.
Ora ho ridotto il numero e inoltre ho spostato i SO nelle
prime 15 e i dati nelle successive.
Pero' ero riuscito ad avviare ugualmente, solo che non te lo
consiglio, infatti io ho rifatto tutto.
Se vuoi di dico ora in breve, nel caso chiedimi chiarimenti.
Ti serve:
1. montare la ubuntu diciamo in /mnt/ubuntu
2. copiare /mnt/ubuntu/boot dove vuoi, ma che la partizione
sia entro le prime 15, esempio:
#: cp -a /mnt/ubuntu/boot /root/u18boot
3. rinominare /mnt/ubuntu/boot in /mnt/ubuntu/boot-originale
3. creare la dir /mnt/ubuntu/boot e linkarla a /root/u18boot
4. adesso dare lilo con le due righe che t'ho detto prima.
Occhio alla storia della ext3 journalizzata che io non so
niente perche' ho tutte ext2, inoltre bada anche che i link
di /mnt/ubuntu/ siano corretti (attento che e' facile che
possano essere in equivoco.. con la deb io ce li ho Ok
perche' puntano a boot e NON a /boot!!), e occhio anche
ai permessi, controllali!
N.B. Nell'ubuntu c'hai grub quindi forse e' gia' auto-OK,
ma se tu avessi avuto lilo, allora avresti dovuto ridarlo
dalla ubuntu (per avviare solo se stessa) perche' il kernel
della ubuntu ora sta altrove.
Come vedi: casini a non finire, mi sa che ti conviene
reinstallare entro le prime 15.
-- 
Saluti, Dalet

 di fare root=/dev/sda18, metti:
ok, l'append ha funzionato. Poi pero', da ubuntu, ho dato l'ok
all'update manager per aggiornare i pacchetti, mi ha deto che doveva
restartare tutto, e al riavvio non e' piu' partito. 
Ho pensato che avesse aggiornato il kernel, ma anche ricopiandolo sulla
partizione della distro che uso (gentoo) - come avevo fatto - non va.
Al boot mi dice
----
No filesystem could mount root: tried ext3 ext2 ext4 fuseblk
Pid: 1, comm: swapper Not tainted 2.6.35-22-generic #35-Ubuntu
Call trace... blabla
---
l'fs ubuntu e' ext4
Adesso non so che fare, se non provare a usare grub come primo boot
loader e lanciare in chain quello ubuntu, ma volevo evitare
-- 
Herbie

 loader e lanciare in chain quello ubuntu, ma volevo evitare
Ma non ho capito che **zzo vuoi fare, metti *un* dannato bootloader
nell'MBR del disco primario e fagli vedere *tutti* i sistemi installati da
cui avviarli direttamente invocando l'opportuno /boot/vmlinuz...


 cui avviarli direttamente invocando l'opportuno /boot/vmlinuz...
be', tu un po' hai ragione, e mi hai fatto pensare che mentre lilo vuole
vedere i kernel quando lo installi, grub no, o meglio con grub posso
specificare le partizioni e non i mount point.
Alla fine ho installato grub, che, piu' chiaramente, mi ha detto che il
cilindro (o quacosa di simile) che voglio caricare e' oltre quelli
supportati dal bios. Va bene, spostero' il SO, pero' vorrei sapere come
calcolare la massima posizione dove metterlo.
Da notare comunque che ubuntu potrebbe dirmi, in installazione, che
quella installazione non si carichera' mai... (a meno, in effetti, di
fare chain loading con altro boot loader installato in posizione piu'
vicina all'inizio del disco)
-- 
Herbie

 calcolare la massima posizione dove metterlo.
Allora, ho risolto così: copiato vmlinuz e initrd su partizione boot di
altra distro (o meglio, in realtà la boot è neutrale), installato grub e
detto a grub di lanciare kernel da partizione x e distro da partizione y
(non consideravo che le direttive root di grub e root del parametro
passato al kernel possono ovviamente essere diverse).
Tutto ok.
L'unica cosa è ricordarsi di aggiornare il kernel quando si upgrada.
Penso di potermi accontentare.
-- 
Herbie

 Penso di potermi accontentare.
uhm, non è che GAG ti eviterebbe 'sti casini?
r
-- 
uso Slackware perché non sono sufficientemente abile e intelligente per 
sfidare la complessità di una distro facile [Kojak]
tutto sui Pentangle: 
http://umpf.net/