Bug 976559 - rd.live.overlay cannot be used to specify a different device from root=live device
rd.live.overlay cannot be used to specify a different device from root=live d...
Status: CLOSED EOL
Product: Fedora
Classification: Fedora
Component: dracut (Show other bugs)
19
Unspecified Unspecified
unspecified Severity medium
: ---
: ---
Assigned To: dracut-maint
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-06-20 15:14 EDT by SteveSi
Modified: 2015-02-17 10:38 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-02-17 10:38:52 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description SteveSi 2013-06-20 15:14:18 EDT
Description of problem:
Cannot specify a different volume for overlay. This means booting from LiveCD or mapped ISO in memory with persistence is not possible.

If specify root=live:xxxxxx and rd.live.overlay=yyyyy (i.e different devices) then overlay is not found. The overlay is only found if device xxxxxx=yyyyy!

Version-Release number of selected component (if applicable):
LXDE x86_64-19 BEta-1

but same for Fed 17 and 18

How reproducible:

grub4dos - should be possible to boot from mapped ISO and specify USB drive as source of overlay file:

menu.lst
========
title Boot Fedora 19 from ISO
set ISO=Fedora-Live-LXDE-x86_64-19-Beta-1.iso
# change the line below to match the USB drive volume label
set VOL=E2B
echo Note: USB drive Volume Label must be %VOL%
debug 1
# make empty table entry in 4th position in ptn table
parttype (hd0,3) | set check=
debug off
set check=%check:~-5,4%
if not "%check%"=="0x00" echo WARNING: PTN TABLE 4 IS ALREADY IN USE! && pause && configfile /menu.lst
debug 1
uuid () > nul
set UUID=%?%
echo UUID=%UUID%
if not exist /LiveOS/overlay-%VOL%-%UUID% echo WARNING: Changes will not be remembered unless a /LiveOS/overlay-%VOL%-%UUID% ext2 file is created! && pause
partnew (hd0,3) 0x00 %MFOLDER%/Linux/%ISO%
map %MFOLDER%/Linux/%ISO% (0xff)
map --hook
root (0xff)
kernel /isolinux/vmlinuz0 root=live:LABEL=Fedora-Live-LXDE-x86_64-19-Beta- rd.live.overlay=UUID=%UUID% rootfstype=auto rw rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 
initrd /isolinux/initrd0.imgg

Steps to Reproduce:
1. Make grub4dos bootable FAT32 USB Flash or USB HDD drive
2. Add ISO to /_ISO/MAINMENU/Linux
3. Add ext2 file to /LiveOS/overlay-E2B-xxxx-yyyy  (where E2B is USB flash drive volume name and xxxx-yyyy is UUID of the flash drive)

Actual results:
Boots but no persistence

Expected results:
As UUID is specified for overlay, it should find overlay

Additional info:
The following menu.lst works IF /LiveOS/sqashfs.img is also extracted from the ISO and copied to USB drive:

set ISO=Fedora-Live-LXDE-x86_64-19-Beta-1.iso
# change the line below to match the USB drive volume label
set VOL=E2B
echo Note: USB drive Volume Label must be %VOL%
debug 1
# make empty table entry in 4th position in ptn table
parttype (hd0,3) | set check=
debug off
set check=%check:~-5,4%
if not "%check%"=="0x00" echo WARNING: PTN TABLE 4 IS ALREADY IN USE! && pause && configfile /menu.lst
debug 1
uuid () > nul
set UUID=%?%
echo UUID=%UUID%
if not exist /LiveOS/overlay-%VOL%-%UUID% echo WARNING: Changes will not be remembered unless a /LiveOS/overlay-%VOL%-%UUID% ext2 file is created! && pause
partnew (hd0,3) 0x00 %MFOLDER%/Linux/%ISO%
map %MFOLDER%/Linux/%ISO% (0xff)
map --hook
root (0xff)
kernel /isolinux/vmlinuz0 root=live:UUID=%UUID% rd.live.overlay=UUID=%UUID% rootfstype=auto rw rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 
initrd /isolinux/initrd0.img
Comment 1 SteveSi 2013-06-20 15:48:27 EDT
Last example menu does work if Fed 18 LXDE squashfs.img is used in \LiveOS, but not if Fed 19 squashfs.img is used. So is this another bug in Fed 19?
Comment 2 SteveSi 2013-06-20 22:08:59 EDT
Instead of
rd.live.overlay=UUID=%UUID% 
Found that fed 19 needs
rd.live.overlay=live:UUID=%UUID%  
or get stop at 'Entering emergency mode!'

but even with that change, still don't get persistence.
I also tried rd.live.overlay=live:auto
Comment 3 Harald Hoyer 2013-06-21 07:44:00 EDT
devspec=$( echo $overlay | sed -e 's/:.*$//' )
mount -n -t auto $devspec /run/initramfs/overlayfs

which means that:

rd.live.overlay=/dev/disk/by-uuid/0a5847a8-358d-454f-ab98-8592de5ca4ba:/path/to/overlay.img

might work. The problem might be, that the device is not yet discovered by the kernel/udev at that point of time and dmsquash-live-root does not wait for it.
Comment 4 SteveSi 2013-06-21 07:56:42 EDT
I cannot get F19 Beta to work with persistence at all at the moment even using the same device for the squashfs.img!
F18 works OK, but not F19.

i.e. USB has label E2B and UUID 12BC-AD85 and files:
/LiveOS/overlay-E2B-12BC-AD85
/LiveOS/squashfs.img
+ ISO which is mapped by grub4dos to (0xff)

This arrangement works for F18 but not F19.
Comment 5 SteveSi 2013-06-21 07:59:11 EDT
(In reply to Harald Hoyer from comment #3)
> devspec=$( echo $overlay | sed -e 's/:.*$//' )
> mount -n -t auto $devspec /run/initramfs/overlayfs
> 
> which means that:
> 
> rd.live.overlay=/dev/disk/by-uuid/0a5847a8-358d-454f-ab98-8592de5ca4ba:/path/
> to/overlay.img
> 
> might work. The problem might be, that the device is not yet discovered by
> the kernel/udev at that point of time and dmsquash-live-root does not wait
> for it.

blkid shows /dev/sda1 is mounted as /run/initramfs/overlayfs  but there is nothing under /run/initramfs/overlayfs  when I do an ls.
Comment 6 Fedora End Of Life 2015-01-09 13:29:32 EST
This message is a notice that Fedora 19 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 19. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained. Approximately 4 (four) weeks from now this bug will
be closed as EOL if it remains open with a Fedora 'version' of '19'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 19 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.
Comment 7 Fedora End Of Life 2015-02-17 10:38:52 EST
Fedora 19 changed to end-of-life (EOL) status on 2015-01-06. Fedora 19 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Note You need to log in before you can comment on or make changes to this bug.