[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#724931: loop-mounted ISO images



[Now follows a somewhat lengthy text. If you are bored, jump directly to the conclusion.]
On 30.09.2013 01:58, wrote ian_bruce@fastmail.net:
you wrote:

Please include the kernel module loop.ko in all installation ISOs.

It would be awesome, if you could also add iso-scan to the install
ISOs, so that one can use the 'findiso=' boot option. This would make
it possible to install from the ISO without having to mount it
manually during the installation.

I refer you to my recent posts (including patch) on exactly this
subject:

http://lists.debian.org/debian-boot/2013/09/msg00292.html

http://lists.debian.org/debian-boot/2013/09/msg00509.html

-- which have so far been completely ignored.

As for the iso-scan package, if you search the source code for the
string "findiso", you will not find it.

http://packages.debian.org/wheezy/iso-scan

You can confirm this by looking through the "hd-media" images directly:

     $ zcat initrd.gz | strings | grep -i findiso
     $

http://ftp.us.debian.org/debian/dists/wheezy/main/installer-amd64/current/images/hd-media/

So if this functionality was present at one time, it is not now.

Here is some relevant prior discussion:

http://lists.debian.org/debian-boot/2009/10/threads.html#00064

An unnecessarily complex solution was eventually adopted:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=564441

You will note that my patch does exactly what was asked for then, and
what you are requesting now. I will post this information to bug
#724931; hopefully we can get my patch, or something like it, applied to
the standard installer ISOs, and not just the "hd-media" images, which
apparently are the only ones to include the iso-scan package, but do not
even allow specification of the ISO image file via a boot parameter.

When installing from the Debian netinstall ISO using Grub2's loopback
method, and manually mounting the ISO to /cdrom, the installation
process gets stuck at apt-setup

I suggest to you that if you copy the kernel and initrd files out of the
ISO image, into the USB flashdrive(?) filesystem, you do not have to use
GRUB, you can just use Syslinux, as the ISO usually does. This means
that you can potentially use the existing Syslinux menu system, if this
is also copied out of the ISO image.

Could you tell me what exactly is the significance of
"Grub2-Multiboot-ISO-USB"? Is there some package or utility by that
name?


-- Ian Bruce


Hi Ian,

thank you for this information on bug #724931. I read your posts and it seems that the developers are aware of the problem, but choose not to act:

On Thu, 5 Sep 2013 11:44:54 -0400
Joey Hess <joey@kitenet.net> wrote:
iso-scan is part of the Debian installer[1].

However, it is only included in the hd-media initrd. There is no
reason to include it on the regular CD initrd, because isohybrid
allows mounting the USB stick directly.

How can isohybrid replace the findiso option? At least for me it makes a huge difference, whether I can use my 32 GB stick for ONE netinst.iso or ONE HUNDRED. Aside from that it is an unnecessary complexity to download the hd-media initrd, which is why I never did that, but instead only downloaded the loop.ko. By the way, I think that it is reason enough to include findiso on the regular CD, when several persons request it. One always has to balance gain and cost and the only cost that I can see, is that the ISO will be larger. I don't know how big findiso is, but probably less then 100 kB. The loop.ko file is 37 kB, so together this gives 137 kB. Since the netinst.iso is about 270 MB, it would grow by about 0.05 %. Who will be hurt by that? On the other hand according to many post etc. on the subject, which I read in the course of the last two years or so, I imagine that a lot of people would like it. I certainly would have installed Debian earlier, if this option had been included on the netinst.iso.

On 30.09.2013 01:58, wrote ian_bruce@fastmail.net:
As for the iso-scan package, if you search the source code for the
string "findiso", you will not find it.

I don't know about the hd-media initrd, but there is a debian live ISO at:
http://live.debian.net/
There the option 'findiso=$iso' works as advertised and indeed:
$ zcat initrd.img | strings | grep -i findiso
	if [ -n "$FINDISO" ] && [ "${TORAM}" ]
		if is_mountpoint /root/lib/live/mount/findiso
			umount /root/lib/live/mount/findiso
			rmdir --ignore-fail-on-non-empty /root/lib/live/mount/findiso \
			findiso=*)
				FINDISO="${_PARAMETER#findiso=}"
				export FINDISO
		if [ -n "${FINDISO}" ]
			if [ -f ${mountpoint}/${FINDISO} ]
				mkdir -p /live/findiso
				mount -t ${fstype} -o ro,noatime "${devname}" /live/findiso
loopdevname=$(setup_loop "/live/findiso/${FINDISO}" "loop" "/sys/block/loop*" 0 "")


I suggest to you that if you copy the kernel and initrd files out of the
ISO image, into the USB flashdrive(?) filesystem, you do not have to use
GRUB, you can just use Syslinux, as the ISO usually does. This means
that you can potentially use the existing Syslinux menu system, if this
is also copied out of the ISO image.

The reason I use Grub2 is that updating an ISO is very easy: Just replace the old one with the new version (and eventually change the name in the grub.cfg). If I extracted the kernel and initrd, I would have to do this on every update as well. Luckily, most of the ISOs I use come with a grub.cfg, so I can copy the entries from there and adapt them, e.g. with a findiso option or options for my locales.

Could you tell me what exactly is the significance of
"Grub2-Multiboot-ISO-USB"? Is there some package or utility by that
name?
This should just be a compact description of what I did:
 - I installed Grub2 to the USB stick via grub-install.
 - Then I copied some ISOs to the $USB/ISO folder.
- After that I adapted $USB/boot/grub/grub.cfg to get a Multiboot USB stick, that boots directly from the ISOs.

I had tried various tools for this in the past (not yours, though) and was not quite satisfied with them. The above mentioned method seems to be the most efficient one for me.



Conclusion:
- I see no reason NOT to include findiso and loop.ko on every installer CD.
 - Hopefully Joey can give us an update of his thoughts on the matter.

Best regards,
Andreas


Reply to: