FS#13053 - Do not mount all filesystem while looking for the ArchISO image

Attached to Project: Release Engineering
Opened by Thomas Bächler (brain0) - Friday, 30 January 2009, 18:25 GMT
Last edited by Gerhard Brauer (GerBra) - Thursday, 30 July 2009, 06:03 GMT
Task Type Feature Request
Category ArchISO
Status Closed
Assigned To Aaron Griffin (phrakture)
Thomas Bächler (brain0)
Gerhard Brauer (GerBra)
Dieter Plaetinck (Dieter_be)
Architecture All
Severity Low
Priority Normal
Reported Version 2009.01-beta
Due in Version 2009.08-RC
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Right now, we mount each and every filesystem to find the ArchISO image. Then we look for a IMO too generic filename in the root directory.

We should have a way to detect the right filesystem with some "magic number" without mounting it. I don't know how that would be possible (maybe parse filesystem labels, or hack something into the UUID). Suggestions?
This task depends upon

Closed by  Gerhard Brauer (GerBra)
Thursday, 30 July 2009, 06:03 GMT
Reason for closing:  Implemented
Additional comments about closing:  2009.08-beta1 comes with a new method to detect and mount the boot devices on cd iso and usb images.
Comment by Aaron Griffin (phrakture) - Friday, 30 January 2009, 18:27 GMT
I agree that fixing this would be GREAT, and it would allow us the ability to not scan all devices...

How about using a label AND scanning for the filename, it would not only reduce the need to mount so much, but also still work if the user happens to have a partition labeled "archiso2009.01" or something :)
Comment by Dieter Plaetinck (Dieter_be) - Friday, 30 January 2009, 18:32 GMT
i'm clueless.. what is this about? building the iso? the unionfs on the iso? Can anyone explain more?
Comment by Aaron Griffin (phrakture) - Friday, 30 January 2009, 18:36 GMT
It's the archiso hook. It needs to detect the medium it booted from. The way it does this now is scan all cdrom and/or usb drives, and looks for the "isomounts" file that the archiso hook needs. If it finds it, it carries on.
Comment by Gerhard Brauer (GerBra) - Saturday, 11 July 2009, 15:07 GMT
Thomas and myself have tested this last week. IMHO we were on a good way to find the boot medium by label.
This could be implemented to 2009.08 release...
Comment by Thomas Bächler (brain0) - Saturday, 11 July 2009, 18:47 GMT
Yes, and if we are lucky, I can do it tomorrow. This needs to be done:

1) Change udev rules in klibc-udev not to ignore CD devices when detecting the label.
2) Append a generated label to the default cmdline in the grub configuration and at the same time, use that label for the ext2/isofs.
3) Change the mount code to do something like this:

TIMEOUT=60
DEVICE=/dev/disk/by-label/ARCH-ABC123
while ! poll_device ${DEVICE] ${TIMEOUT}; do
echo "The archiso image could not be found. Please fix the problem and log out to try again."
/bin/sh -i
done
mount ${DEVICE} /whereever

The poll_device function is part of mkinitcpio. If anyone can do this faster than me, feel free to do so.
Comment by Dieter Plaetinck (Dieter_be) - Sunday, 19 July 2009, 13:37 GMT
Hi Thomas, any news on this? is it possible to get this resolved on the short term or should we delay this for the next release?
Comment by Thomas Bächler (brain0) - Sunday, 19 July 2009, 14:12 GMT
Hmm, dunno when I can do it, maybe this evening. I'd like to have it in this release.
Comment by Dieter Plaetinck (Dieter_be) - Saturday, 25 July 2009, 10:49 GMT
isn't this ticket a dup of  FS#10831  ?
Comment by Gerhard Brauer (GerBra) - Saturday, 25 July 2009, 11:17 GMT
Yes it is. Of course it is related...
Comment by Thomas Bächler (brain0) - Saturday, 25 July 2009, 11:38 GMT
Doesn't look like it.  FS#10831  wants to put the files in a subdirectory on the stick.
Comment by Thomas Bächler (brain0) - Wednesday, 29 July 2009, 07:50 GMT
We need to build alpha3 with this code, so it can be tested.
Comment by Dieter Plaetinck (Dieter_be) - Wednesday, 29 July 2009, 07:58 GMT
fwiw: next iso will be called beta/rc. no more alpha's :)

Loading...