Welcome to the Linux Foundation Forum!

How to customize a Debian ISO using a preseed file with or without Cubic.

Posts: 1
edited October 2022 in Debian

Hello.

I'm on Ubuntu 22.04 and I'm trying to extract all the files from a (bootable) Debian ISO,add some new files and then re-generate a bootable ISO image. I'm trying to accomplish this task using Cubic and without a graphical interface,but only giving the most appropriate commands on the terminal. Below you can see what I tried to do and the commands that I've issued. In both cases,for some unknown reasons,the preseed.cfg file that I have added does not stick. Can someone help me to understand why ? thanks.

1) Using Cubic. I've copied and pasted this preseed.cfg file :

  1. d-i debian-installer/add-kernel-opts string intel_iommu=on
  2. d-i mirror/http/hostname string http.us.debian.org
  3. d-i mirror/http/directory string /debian
  4. d-i passwd/root-password password marietto
  5. d-i passwd/user-fullname string marietto User
  6. d-i passwd/username string marietto
  7. d-i passwd/user-password password a
  8. d-i passwd/user-password-again password a
  9. d-i user-setup/allow-password-weak boolean true

inside the folder : /home/ziomario/Scrivania/PassT-Cubic/Debian-new/custom-disk/preseed/

and then I've checked if it has been recognized and yes,it has been,according with this picture :

https://ibb.co/JmT6G4V

I suspect that I should do something else,according to what I read on Cubic : "reference these files in the disk boot configurations by prefixing them with /cdrom" : what does it mean ? I don't understand what I should do. So,at the end,when I have generated the ISO image,the debian installer asks me every question as usual,ignoring the question that I want to skip,according to the preseed file.

2) manually,issuing the following commands on the terminal,like these ones :

  1. chmod +w -R /home/ziomario/Scrivania/PassT-Cubic/ISO/debian-live-11.5.0-amd64-xfce/d-i/
  2.  
  3. (I don't have a folder called install.386 or even install amd)gunzip debian-live-11.5.0-amd64-xfce/d-i/initrd.gz
  4.  
  5. echo preseed.cfg | cpio -H newc -o -A -F debian-live-11.5.0-amd64-xfce/d-i/initrd
  6.  
  7. gzip debian-live-11.5.0-amd64-xfce/d-i/initrd
  8.  
  9. chmod -w -R debian-live-11.5.0-amd64-xfce/d-i/
  10.  
  11. cd debian-live-11.5.0-amd64-xfce/
  12.  
  13.  

at this point,since I don't have any md5sum.txt inside the ISO image of the debian live,I have generated this file using this command :

  1. find -type f -exec md5sum "{}" + > md5sum.txt
  2.  
  3. find -follow -type f ! -name md5sum.txt -print0 | xargs -0 md5sum > md5sum.txt
  4.  
  5. chmod -w md5sum.txt
  6.  
  7. at this point I ran this script to generate the ISO image :
  8.  
  9. script.sh
  10.  
  11. orig_iso=debian-live-11.5.0-amd64-xfce.iso
  12. new_files=debian-live-11.5.0-amd64-xfce
  13. new_iso=debian-live-11.5.0-amd64-mod-xfce.iso
  14. mbr_template=isohdpfx.bin
  15.  
  16. # Extract MBR template file to disk
  17. dd if="$orig_iso" bs=1 count=432 of="$mbr_template"
  18.  
  19. xorriso -as mkisofs \
  20. -r -J --joliet-long \
  21. -V 'd-live 11.5.0 xf amd64' \
  22. -o "$new_iso" \
  23. -isohybrid-mbr "$mbr_template" \
  24. -partition_offset 16 \
  25. -c isolinux/boot.cat \
  26. -b isolinux/isolinux.bin \
  27. -no-emul-boot -boot-load-size 4 -boot-info-table \
  28. -eltorito-alt-boot \
  29. -e boot/grub/efi.img \
  30. -no-emul-boot -isohybrid-gpt-basdat -isohybrid-apm-hfsplus \
  31. "$new_files"

The ISO image has been generated and it is able to boot,the preseed file is in the right place

I've looked inside the initrd file and I saw that it is there,you can see by yourself :smile:

https://ibb.co/J2sQZ6K

and then I've tried to install Debian,but again,the preseed.cfg file is ignored.

Comments

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training