Creare un installer personalizzato per Fuss/Soledad¶
Di seguito le istruzioni per modificare l'installer di fuss/soledad creando un cd bootabile con kernel 2.6.16 per il nuovo hardware non supportato dal kernel 2.6.8 debian.
I comandi elencati andranno lanciati con i privilegi dell'utente root.
Si assume che il nuovo kernel da installare (2.6.15) sia già stato preparato ed impacchettato in formato .deb
Inizialmente va estratta la iso originale di fuss in una directory di lavoro temporanea:
mount -o loop fuss.iso /mnt mkdir fuss-installer rsync -avH /mnt fuss-installer/ umount /mnt
L'immagine ISO con il nuovo kernel è prelevabile da qui.
Va quindi scaricata con il comando:
wget http://kmuto.jp/debian/d-i/2.6.16/sarge-custom-0801.iso
Una volta terminato il download, l'immafine ISO va montata in loop per procedere alla copia di alcuni file che andranno a sovrascrivere quelli vecchi, il primo passo è quello di montare su una directory opportuna, ad esempio /mnt
:
mount -o loop sarge-custom-0801.iso /mnt
A questo punto si potrà iniziare a copiare i vari file che servono, si iniza con l'immagine del kernel e del ramdisk per l'avvio:
cp -a /mnt/install/2.6/vmlinuz fuss-installer/install/2.6/vmlinuz cp -a /mnt/install/2.6/initrd.gz fuss-installer/install/2.6/initrd.gz rm -rf fuss-install/isolinux/boot.cat cd /mnt/pool/main
poi occorre copiare i pacchetti .udeb
necessari per l'installazione, con:
cp -a acpi-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ cdrom-core-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ cdrom-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ crc-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ crypto-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ ext3-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ fat-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ fb-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ firewire-core-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ firmware-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ floppy-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ ide-core-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ ide-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ input-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ ipv6-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ irda-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ jfs-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ libparted1.7-udeb_1.7.1-2.1mtu1_i386.udeb \ loop-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ md-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ mouse-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ nic-extra-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ nic-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ nic-pcmcia-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ nic-shared-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ nic-usb-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ ntfs-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ parport-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ partman-auto-lvm_13_all.udeb \ partman-auto_54_i386.udeb \ partman-base_92_i386.udeb \ partman-basicfilesystems_48_all.udeb \ partman-basicmethods_31_all.udeb \ partman-crypto_8_i386.udeb \ partman-ext3_41_all.udeb \ partman-jfs_17_all.udeb \ partman-lvm_45_all.udeb \ partman-md_29_all.udeb \ partman-partitioning_40_i386.udeb \ partman-reiserfs_31_all.udeb \ partman-target_43_all.udeb \ partman-xfs_29_all.udeb \ pcmcia-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ pcmcia-storage-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ plip-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ ppp-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ qnx4-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ reiserfs-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ sata-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ scsi-common-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ scsi-core-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ scsi-extra-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ scsi-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ serial-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ ufs-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ usb-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ usb-serial-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ usb-storage-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ xfs-modules-2.6.16-2-486-di_1.02.sarge.mtu2_i386.udeb \ /fuss-installer/pool/main
infine si può cancellare quanto non serve più ed installare il pacchetto del nuovo kernel:
cd - rm -rf fuss-installer/pool/main/l/linux-kernel-di-i386-2.6/* rm -rf fuss-installer/pool/main/k/kernel-image-2.6.8-i386/ cp kernel-image-2.6.15fuss2_26_i386.deb fuss-installer/pool/main/
A questo punto sono stati copiati i file necessari al boot con il nuovo kernel ed i relativi moduli, nonchè delle librerie aggiuntive necessarie al debian-installer per gestire il kernel 2.6.16, udev ed il partizionamento dei dischi; inoltre sono stati eliminati i file utilizzati dal kernel 2.6.8.
Il passo successivo è la generazione dei file Packages
e Release
per l'archivio Debian. Per tale scopo verranno usati i comandi apt-ftparchive
e dpkg-scanpackages
.
cd fuss-installer dpkg-scanpackages -u pool/main /dev/null > dists/soledad/main/debian-installer/binary-i386/Packages cat dists/soledad/main/debian-installer/binary-i386/Packages | gzip > dists/soledad/main/debian-installer/binary-i386/Packages.gz dpkg-scanpackages pool/main /dev/null > dists/soledad/main/binary-i386/Packages dpkg-scanpackages pool/main /dev/null | gzip > dists/soledad/main/binary-i386/Packages.gz cd dists/soledad apt-ftparchive release . > Release
L'ultimo passo prima della generazione della nuova iso è la modifica del file di configurazione di isolinux, quindi va aperto con un editor il file fuss-installer/isolinux/isolinux.cfg
che dovrà avere questa sintassi:
DEFAULT linux PROMPT 1 LABEL linux KERNEL /install/2.6/vmlinuz APPEND initrd=/install/2.6/initrd.gz ramdisk_size=16384 root=/dev/ram rw TIMEOUT 0 DISPLAY isolinux.txt F1 f1.txt F2 f2.txt F3 f3.txt F4 f4.txt F5 f5.txt F6 f6.txt F7 f7.txt F8 f8.txt F9 f9.txt F0 f10.txt
Va quindi generata la iso con il comando:
mkisofs -o fuss-2.6.16-new.iso -r -J -no-emul-boot -boot-load-size 4 -boot-info-table -b isolinux/isolinux.bin -c isolinux/boot.cat -V "Fuss Soledad" fuss-installer
Aggiornato da Simone Piccardi quasi 14 anni fa · 10 revisions