Modifier un cd d’installation debian/gnu Linux
J’ai eu besoin d’installer une debian avec l’image "debian-testing-amd64-netinst.iso"
Mais il n’y avait pas les modules pilotes pour le wifi.
J’ai donc reconstruit l’image. Voila la suite de commandes.
apt install isolinux
apt install bsdtar
cd /tmp
mkdir iso
dd if=debian-testing-amd64-netinst.iso bs=1 count=432 of=isohdpfx.bin
bsdtar -C iso/ -xf debian-testing-amd64-netinst.iso
chmod -R +w iso
./firmware/iw* iso/firmware/
cd iso
md5sum <span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+ZmluZCAhIC1uYW1lICZxdW90O21kNXN1bS50eHQmcXVvdDsgISAtcGF0aCAmcXVvdDsuL2lzb2xpbnV4LyomcXVvdDsgLWZvbGxvdyAtdHlwZSBmPC9jb2RlPg=="></span> > md5sum.txt; chmod -R -w iso
xorriso -as mkisofs -o test.iso -isohybrid-mbr isohdpfx.bin -c isolinux/boot.cat -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table ./iso
Il ne reste plus qu’à graver la nouvelle image iso sur la clef usb (la mienne est /dev/sdd)
dd if=test.iso of=/dev/sdd
Si il y a besoin de modifier un livecd :
apt install isolinux
apt install bsdtar
cd /tmp
mkdir iso
dd if=debian-testing-amd64-netinst.iso bs=1 count=432 of=isohdpfx.bin
bsdtar -C iso/ -xf debian-testing-amd64-netinst.iso
mount -t squashfs -o loop iso/livecd/live.squashfs /mnt
cp -av /mnt/. squashfs
la, ça peut être long, en fonction de la taille du livecd
mount --bind /proc squashfs/proc
mount --bind /sys squashfs/sys
mount -t devpts none squashfs/dev/pts
Parfois, apt-get n’arrive pas à faire son travail, il peut être utile de mettre dev et dev/pts ainsi que resolv.conf :
mount --bind /dev squashfs/dev
mount --bind /dev/pts squashfs/dev/pts
cat /etc/resolv.conf > squashrf/etc/resolv.conf
Ensuite, on peut faire
chroot ./squashfs/
Une fois terminé vos modifications, ne pas oublier de "démounter" les systemes de fichiers monté plus haut !!!