[PLUTO-help] CREARE UN CD BOOTABLE con LILO
Vittorio Barulli
barulli a gemrad.com
Lun 27 Set 2004 12:20:23 CEST
CI SONO RIUSCITO........
cercherò di spiegare quello che ho capito e come ho fatto:
* quando si avvia un cd quello che veramente viene eseguito è un
immagine che viene caricata in memoria
PREPARAZIONE IMMAGINE DI AVVIO:
Solitamente le immagini di avvio hanno una misura prefissata
(che è quella tipica dei dischetti) 740K, 1.44M oppure 2.88M
1)dd if=/dev/zero of=/isoboot.img bs=1k count=2880 (creazione
di un file di 2.88M riempito con tutti zeri)
2)mke2fs -F /isoboot.img (formatto l'immagine per contenere un
filesystem ext2)
3)mount -o loop /isoboot.img /mnt/floppy (monto questa
immagine appena creata come se fosse un floppy)
4) mkdir /mnt/floppy/boot/; mkdir /mnt/floppy/boot/grub
5)cp /usr/share/grub/i386-redhat/* /mnt/floppy/boot/grub
(copio tutto quello che mi serve dalla dir di installazione di grub, se
non sapete quale è la vostra potete digitare "rpm -q -l grub" e vedere
dove sono installati i file stage1, stage2, etc)
6)vi /mnt/boot/grub/grub.conf (bisogna editare il file di
configurazione di grub, in base alle proprie esigenze, se non sapete
come fare provate a scrivere "info grub" e ....... leggete, oppure
copiate il grub.conf che si trova in /etc e modificatelo)
7)umount /mnt/floppy (smontate il floppy)
L'IMMAGINE è PRONTA... se volete (ma soprattutto se c'e
spazio) si può inserire un kernel nell'immagine appena creata e farlo
bootare modificando il grub.conf!!!
* procedura di installazione di grub sull'immagine isoboot.img
1)digitare "grub" da riga di comando
2)apparirà una shell (che è proprio quella di grub) del tipo "grub>"
3)device (fd0) isoboot.img (così facendo diciamo a grub che il
device fd0 adesso linka direttamente la nostra immagine, cioè che
la nostra immagine viene considerata proprio come un dischetto)
4)root (fd0) (serve a dire che fd0 e quindi isoboot.img è una
partizione su cui fare il boot)
5)setup (fd0) (installa grub su isoboot, cioè dovrebbe
semplicemente spostare i file mettendoli all'inizio dell'immagine
in modo da farli bootare all'avvio)
* CREAZIONE IMMAGINE ISO PER CD
1)mkdir iso;mkdir /iso/boot;mkdir /iso/data
2)cp "tutto quello che puo servire" /iso/data ("tuttoquello che
puo servire" è tutto quello che vi può venire in mente di mettere
sul cd!!!)
3)cp /isoboot.img /iso/boot
4)cd /iso; mkisofs -o /bootcd.iso -b boot/isoboot.img -c
boot/boot.catalog -r ./
(mkisofs crea immagini iso9660 (standard) da copiare sul cd
l'opzione "-o" indica il file di uscita,
l'opzione "-b" indica che il file che contiene l'immagine da
bootare(secondo le specifiche el-torito)
l'opzione "-c" non 'ho ancora capita ma non fa male,
in fine "./" indica il nodo di partenza dal quale creare il
CD, ovviamente il file specificato in -b deve essere contenuto in
questo dir)
5)cdrecord dev=0,0,0 -eject -data -pad /bootcd.iso
VARIANTI NON PROVATE:
* L'immagine di boot mi sembra di aver capito che non deve essere
per forza di dimensione fissa(1.44M o le altre), ma nei tentativi
che ho fatto non sono riuscito a farlo avviare con una immagine
con misura diversa (forse è un problema del mio lettore cdrom),
comunque in quel caso bisogna specificare a mkisofs l'opzione
-no-emul-boot che evita di emulare un floppy all'avvio dell'immagine.
* Un'altra variante consiste nell'inserire un kernel che riconosca
la maggior parte delle periferiche nell'immagine isoboot e
inserire un entry in grub.conf che lo avvii
CIAOOOOO
> Sto cercando di capire come si può creare un cd bootable che avii
> lilo, ma ho difficoltà a capire come
> si fa. potete aiutarmi?
>
> Grazie
>
> _______________________________________________
> pluto-help mailing list
> pluto-help a lists.pluto.it
> http://lists.pluto.it/listinfo/pluto-help
>
--
Ing. Vittorio Barulli
Progettista Software
Ricerca e Sviluppo
tel. 0735 590585
barulli a gemrad.com
GEM elettronica
Via Amerigo Vespucci, 9
63039 San Benedetto del Tronto (AP) - ITALY
Tel. +39 0735 59051 - Telefax +39 0735 590540
info a gemrad.com
http://www.gemrad.com
More information about the pluto-help
mailing list