I have had to modify file /usr/share/genkernel/generic/initrd.scripts so that I could boot my home-made Live USB key. Line 75 contains code that results in mounting USB devices with mount argument -t iso9660 instead of -t auto. Because variable CDROOT_DEV can't be reasonnably set for Live USB, no attempt can be initially made to mount the detected USB key using -t auto. I've submitted a patch to show the issue. I've had to comment out the conditional mount to make my Live USB key work. I'm using sys-kernel/genkernel-3.4.1.
Created attachment 100881 [details, diff] Lines to remove from initrd.scripts to allow for booting Live USB There might be a better way, i.e. define an additional argument, say "usbroot" to distinguish between Live CD and Live USB. The conditional mount would then remain. I'm also working on it as a personal school case ;-) .
I don't see what are you trying to do here. Why don't you just change if [ -n "${CDROOT_DEV}" ] to if [ -z "${CDROOT_DEV}" ] ?
(In reply to comment #2) > I don't see what are you trying to do here. Why don't you just change if [ -n > "${CDROOT_DEV}" ] to if [ -z "${CDROOT_DEV}" ] ? > Because if I change these lines that way I expect the inird script not to work the same with an ordinary CD. I wanted permanent changes that do not require to edit the initrd script each time one makes a live CD or USB or whatever. I've seen from the file structure that the script covers many many cases; this is yet another one. Flipping the condition that way might have some side effects. OTOH introducing support for a new "liveusb" argument that wouldn't interfere with the existing code would be nice to have IMHO. In this case the patch roughly removes the condition since mounting a CDROM with -t auto should always produce the same result as with arguments -t iso9660, is that right?
(In reply to comment #2) > I don't see what are you trying to do here. Why don't you just change if [ -n > "${CDROOT_DEV}" ] to if [ -z "${CDROOT_DEV}" ] ? > Sorry I didn't catch your comment right... I thought the way the instructions are in the file were the actual intent. Sure, if the condition is reverted to a test with -z instead of -n it makes much more sense. Hence -n is the proper fix. Thanks for your lights.
(In reply to comment #4) > (In reply to comment #2) > ... Hence -n is the proper fix. -z not -n... tsss... Shame on me!
This will show up as fixed in 3.4.5's release.
Fixed in 3.4.5
(In reply to comment #7) > Fixed in 3.4.5 > Thanks a lot.