[gull] debian, toshiba, fai et kernel

Marc SCHAEFER schaefer at alphanet.ch
Wed Sep 21 19:57:32 CEST 2005


On Wed, Sep 21, 2005 at 05:04:58PM +0200, Cedric BRINER wrote:
> de toute facon, si je comprends bien le initrd n'est pas obligatoire si on fait un kernel qui a les drivers en builtins ??

Il se pourrait que ce pilote n'est pas utilisable compilé dans le
kernel.  La seule raison qui me vient immédiatement à l'esprit est la
licence non-libre. Les pilotes non libres ne peuvent pas être compilés
dans le kernel. Mais dans ce cas, je serais étonné que Debian livre ce
driver dans le kernel. Il serait probablement livré à part et compilé
comme un sous-système (make-kpkg modules_image).

Mais supposons que ce n'est pas le cas.

Ce que je fais dans le cas de systèmes récalcitrants (p.ex. vieux laptop
avec 5 MB de mémoire, machine Dell, etc) c'est que j'ai un CD de
disaster-recovery avec pas mal de pilotes. La génération de ce CD est à
peu près automatisée et chargée en RAM.

Une fois que ce CD est démarré et les pilotes installés, on peut
transmettre une archive tar du système (p.ex. installé sur un autre
système dans le swap p.ex. ou l'idée de Martial via debbootstrap)
via SSH p.ex.

On pourrait aussi imaginer prendre le CD net-install de Debian, changer
le kernel et l'initrd sur le CD par celui que tu as compilé.

Exemple avec un CD netinstall amd64 (le seul sous la main):

   mount /cdrom
   cp -r /cdrom/. /tmp/CDROM
   umount /cdrom

   cd /tmp/CDROM

   cat isolinux/*.cfg
   # on voit que le kernel est install/vmlinuz, et que
   # l'initrd est install/initrd.gz. Remplacer vmlinuz,
   # et ensuite faire:
   gzip -d < install/initrd.gz > /tmp/a1
   su -
   mount /tmp/a1 -o loop /mnt
      # remplacer lib/modules/*
   umount /mnt
   exit
   gzip -9 < /tmp/a1 > install/initrd.gz

   mkisofs -r -J -o /tmp/image.iso -b isolinux/isolinux.bin .

Graver ensuite /tmp/image.iso

PS: n'ai pas essayé.

PS/2: il y a aussi la possbilité de compiler les drivers kernel
      nécessaires avec la *même config* (/boot/config-*) que le netinstall et
      de les insérer ensuite, p.ex. via floppy ou réseau.

> c'est ce que j'avais (a la hauteur de ma comprehension) fait:
> api_piix depend de libata

Si SATA est implémenté sur SCSI, il faut scsi_mod (dépendance
implicite), mais également sd_mod (si tu veux accéder à un disque),
sr_mod (ditto pour CD-ROM), etc.




More information about the gull mailing list