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

Re: Bug#759744: debian-cd: loopback.cfg support for booting ISOs from within GRUB



El 30/08/14 00:04, Michael Prokop escribió:
Hi,

Cc-ing also debian-live ML to make sure they are aware of the issue.

* Michael Prokop [Fri Aug 29, 2014 at 11:28:13PM +0200]:

I'm hereby following up our discussion we - Steve McIntyre, Colin
Watson and me - had at DebConf14.
Quoting from http://www.supergrubdisk.org/wiki/Loopback.cfg:
[...]

Adrian just pointed out to me that in #757883 he was working on this
feature for supporting it in debian-live, that might be useful for
further development and sharing this feature between debian-cd and
debian-live.

regards,
-mika-


This implementation is not easy as it might seem at first glance.

So, you know in Debian Live we have both fromiso and findiso boot parametres. You define them in Grub so that they Linux kernel gets them as a cmdline and then initrd detects fromiso or findiso and acts accordingly.

So fromiso needs the exact location of the iso (including its device) and, you might guess the Debian Live is loop mounted and then usual stuff ocurrs like trying to mount the squashfs big image and the boot of Debian Live continues.

Findiso does not need the exact location of the iso. The reason is that it loops all its devices and its partitions till it finds the iso. Then once it knows its device it acts as fromiso boot parametre does.

So, I will give three examples so that you get the point:

* fromiso=/dev/sda1/live/mydistro.iso
* fromiso=/dev/disk/by-uuid/c02dcbff-3222-4555-b333-c2351b73f88b/live/mydistro.iso

* findiso=/live/mydistro.iso

Basically if you want loopback.cfg to work you need a findiso alike option.

So, what you need in Debian-cd (or other packages) is a findiso alike option. This option is not currently available (please read on).

Support for a findiso alike option is already implemented in: #724931 . However the actual patch status for adding this functionality seems to affect many packages and I think it has been kind of put aside because of other higher priorities.

I plan myself on reviewing the patch and discovering why it affects so many packages ( 3 or 4 ) while Debian Live only needed live-boot to be modified (well, fromiso boot parametre had already implemented when I ported grml's findiso code, maybe that explains the reason why I find Debian Live much more simple).

So, that's it:
* Either someone implements a findiso alike option from scratch that affects as less packages as possible
* Either current patch is stripped down and fully tested

so that somehow less packages are affected than with the current patch.

* or current patch is fully tested

because, you know, it has some additional features like discovering new isos that are great. Additional features are, you know, more things to test, so it makes the patch less likely to be frozen or even considered so I suppose you have to weight it pros and cons.

By the way if Debian Live's findiso implementation is handy you can find its associated bug at: #656135.

Feel free to make depend this bug on #724931 if that it makes sense (not very experienced on BTS and Debian policies).

adrian15
--
Support free software. Donate to Super Grub Disk. Apoya el software libre. Dona a Super Grub Disk. http://www.supergrubdisk.org/donate/


Reply to: