[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: réaliser un cdrom bootable avec grub et menu



Le Wed, 02 Nov 2005 15:54:47 +0100
Nicolas Roudninski <nroudninski@wanadoo.fr> a écrit:

> > ------------
> > umount /home/belleroot/
> > dd if=/dev/zero of=bootpt bs=1024 count=4096
> > mke2fs -F bootpt

fabrication d'une imlage disque ext2 de 4M

> > mount -o loop bootpt /home/belleroot/
> > cd /home/belleroot/
> > rm -R lost+found/

On la monte sur /home/belleroot et on vire le répertoire inutile

> > cp -dpRf /root/CDiso/bootpt.src/* /home/belleroot/

On copie tous les fichiers voulus

> > df
> > cd 
> > umount /home/belleroot/

On démonte le système de fichiers

> > cd /root/CDparted
> > gzip bootpt

On le comprime

> > mv bootpt.gz isolinux

On le met dans le répertoire isolinux

> > -----------
> Euh, j'ai répondu un peu trop vite. Désolé. Pourrais-tu expliquer 
> plusieurs choses :
> 1/ A quoi correspond ton /home/belleroot ?

Point de montage tout bête.


> 2/ Qu'y a-t-il dans /root/CDiso/bootpt.src/ ?
> 
> Serait-ce trop te demander de détailler pas à pas les manips décrites 
> plus haut ? (sauf la partie relative à la création du cd lui-même)
> 

C'est assez simple, tu as deux problèmes:
1) Le boot
2) Le CD bootable

Le boot se fait par l'utilisation d'isolinux. Le fichier se configure
via le fichier isolinux/isolinux.cfg

En gros, les noyaux se mettent dans le repertoire isolinux, un boot
sur /dev/hda1 sur le noyau vmlinuz correspond au paramétrage 

label a1
  kernel vmlinuz
  append root=/dev/hda1

Un boot NFS correspond à

label nfs
  kernel vmlin18
  append root=/dev/rootnfs nfsroot = 192.168.1.1:/SOS.root
nfsaddrs=192.168.1.25 4:192.168.1.1::255.255.255.0:::

(3 lignes, voir man lilo.conf)

Enfin, un boot sur ramdisque se fait via initrd par une entrée

label cd
  kernel vmlinuz
  append root=/dev/ram1 initrd=boot.gz

boot.gz (ici ce serait plutôt bootpt.gz) correspond à un système
minimal cherchant une racine sur le CD et la montant. Les sources de
cet initrd sont dans le répertoire bootpt.src. Il y a entre autres le
source de linuxrc.c qui recherche un fichier rootpt.gz sur un CDrom,
copie ce fichier sur /dev/ram1, établit correctement le lien /dev/cdrom
dans ce système de fichier, et enfin monte /dev/ram1 comme la racine.
C'est très utile pour faire un CD bootable. Le fichier rootpt.gz est
l'image de la racine bootée. Tu peux voire son contenu en faisant 
gunzip rootpt.gz
mount -o loop rootpt /mnt
cd /mnt
etc.

François Boisson



Reply to: