On 8/21/2021 5:52 AM, Thomas Schmitt wrote:
Hi,
there might be an easier way (still depending on whether such simple
file replacements are tolerated by the booting system):
# Choose the desired new files
new_kernel=...path.to.desired.new.kernel.in.some.mounted.filesystem...
new_initrd=...path.to.desired.new.initrd.in.some.mounted.filesystem...
# Choose the files in the ISO to be replaced by the new files.
# The ISO needs not to be mounted. (Better it should not be mounted.)
# Naively, i assume that it's about these two:
old_kernel=/install.amd/xen/vmlinuz
old_initrd=/install.amd/xen/initrd.gz
# Copy netinst ISO to playground ISO
cp debian-11.0.0-amd64-netinst.iso test.iso
# Use xorriso multi-session to override the undesired files
xorriso -dev test.iso \
-boot_image any keep \
-map "$new_kernel" "$old_kernel" \
-map "$new_initrd" "$old_initrd"
This will result in a quite short run of xorriso, which will report
something like
ISO image produced: 8108 sectors
Written to medium : 8288 sectors at LBA 193024
Writing to 'test.iso' completed successfully.
(The numbers 8108 and 8288 are result of the sizes of the two dummy
files
which i used as $new_kernel #and new_initrd. Yours will be substantially
larger due to the typical size of an initrd.)
Inspection of the boot equipment of test.iso shows no differences,
except the new storage position of the El Torito boot catalog and the
enlarged ISO image size.
When mounted by Linux, the paths
/mnt/iso/install.amd/xen/vmlinuz
/mnt/iso/install.amd/xen/initrd.gz
lead to the content of $new_kernel and $new_initrd.
Then it depends on the inner doings of boot loader and starting system,
whether this perky change is tolerated.
Have a nice day :)
Thomas
Hi Thomas,
Thank you for these tips. I will use them to try to get a bullseye
Debian installer ISO working in a Xen HVM DomU next week
when I have some spare time and post the results here.
All the best,
Chuck