I would like to install Debian Bookworm onto an old laptop (Compaq Evo N1020v).
The CD/DVD -drive of the laptop is unusable (as old laptop drives often are).
Unfortunately, the laptop, although it has two USB connectors, the BIOS is too old; it doesn't support booting from USB memory stick.
So the one option remains: somehow:
copy the ISO image onto the hard disk, as follows (hda7 as an example only)
dd if=DEBIAN_Bookworm_i386.iso of=/dev/hda7 bs=2048
extract the kernel file and the initrd file from the ISO image, and copy them separately, for example to
/dev/hda6
modify the existing GRUB (NOTE: GRUB legacy, NOT the newer GRUB2. I don't know how to install GRUB2 using only debian 3.1 Sarge as the tool) cobfiguration file by adding a new option: Install debian Bookworm and set the kernel name and the initrd name to their correct values
almost done: BUT there is a "hidden" kernel parameter, where I have not been able to find the proper documentation of it.
Think about this: The same ISO (a so-called hybrid iso, typically created using isohybrid, which is part of syslinux package) can be either written to a CD-R disc or it can be written to USB memory stick, and it should work both ways (that's why it is called hybrid).
If the PC has only one hard disk (called /dev/sda in newer debians) and the cd-rom drive is called /dev/hdc, but a possible USB stick is called /dev/sdb.
So this means it is impossible to directly put the device name where the ISO image will reside into some configuration file, since the name is not constant, but is to be determined at boot time.
I do no know how excactly ISOLINUX (when booted from CD/DVD) or SYSLINUX (when booted from USB stick) will pass the device name of the device where the ISO image is located to the linux kernel.
So: IF I first copy the ISO image onto the hard disk: /dev/hda7 (using the debian sarge already installed on that old laptop), which will be seen as /dev/sda7 when booted with the new kernel, then I need some way to tell the new kernel that the ISO (the install disk image) is on /dev/sda7
If I do not tell the kernel that information, then I would expect "Kernel Panic" as a result, since the kernel cannot find what it will need next.
Well... kernel - or some debian installation program started by the kernel...
BUT: from a bootloader's viewpoint: It is the kernel I need to pass that information, and even if the kernel passes on that information to an installation program, that is a detail that the bootloader does not need to know - from the bootloader's viewpoint, it is the same.
So: How can I pass the location of the ISO image to the kernel, so that the Debian Bookworm should then proceed ?
AND:
Is it OK to just use dd to copy the ISO image "as is" into a hard disk partition ?
Or should I instead extract the content of that ISO image, and put it instead as files on a filesystem - such as either FAT32 or ext3 ?
a side note: the plop boot manager claims that it can boot from USB memory stick even if the BIOS is too old to be able to directly boot from USB memory stick.
I tried that - using USB memory stick that can successfully boot KNOPPIX 9.3 on newer machines. Unfortunately, it seems that the plop boot manager cannot boot from USB memory stick.
Either the claim that it can is a lie, or then there are additional hardware requirements for that claim to be true - and if so, the old Compaq Evo N1020v does not fulfill such hardware requirements.
This whole thing should be a simple thing to solve - only add the correct kernel parameter to tell the kernel, where is the ISO that represents the debian Bookworm installation media.
So, what should I pass on to the installation media's kernel to make it behave correctly and install debian Bookworm ?