Bug 908120

Summary: Persistent storage on USB flash not mounted, changes don't persist
Product: [Fedora] Fedora Reporter: Pavel Roskin <plroskin>
Component: liveusb-creatorAssignee: Luke Macken <lmacken>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 18CC: bcl, erik, jjctw1969, lmacken, pfrields
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: liveusb-creator-3.12.0-1.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-10 07:10:51 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Pavel Roskin 2013-02-05 23:11:05 UTC
Description of problem:
Live USB flash made with liveusb-creator from Fedora-18-i686-Live-KDE.iso doesn't use persistent storage

Version-Release number of selected component (if applicable):
liveusb-creator-3.11.7-2.fc18

How reproducible:
I made the Live USB flash once.  The overlay is not mounted every time I boot from it.

Steps to Reproduce:
1. Download Fedora-18-i686-Live-KDE.iso
2. Clean a USB Flash drive
3. Make an MBR and an active FAT partition on it
4. Use liveusb-creator from Fedora 18 to make a Live USB on the partition, specify a large amount of persistent storage (3.3 Gb in my case).
  
Actual results:
No "overlay" in the output of mount or df.  Just 291 Mb free on the root filesystem.  Changes don't persist over the reboot.

Expected results:
The overlay file is mounted.  gigabytes of free space on the root filesystem.  Changes persist over the reboot.

Additional info:

[root@localhost liveuser]# df -h
Filesystem           Size  Used Avail Use% Mounted on                                   
rootfs               3.0G  2.7G  291M  91% /                                            
devtmpfs             1.6G     0  1.6G   0% /dev                                                          
tmpfs                1.7G   80K  1.7G   1% /dev/shm                                                      
tmpfs                1.7G  3.0M  1.7G   1% /run                                                          
tmpfs                1.7G     0  1.7G   0% /sys/fs/cgroup                                                
/dev/sdb1            7.5G  4.3G  3.3G  58% /run/initramfs/live                                                                                          
/dev/mapper/live-rw  3.0G  2.7G  291M  91% /                                                                                                            
tmpfs                1.7G   20K  1.7G   1% /tmp                                                                                                         
varcacheyum          1.7G  120M  1.5G   8% /var/cache/yum                                                                                               
vartmp               1.7G   99M  1.6G   7% /var/tmp                                                                                                     

[root@localhost liveuser]# mount                                                                                                                        
proc on /proc type proc (rw,relatime)                                                                                                                   
sysfs on /sys type sysfs (rw,relatime,seclabel)                                                                                                         
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=1668340k,nr_inodes=208600,mode=755)                                                             
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)                                                                    
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)                                                                                               
tmpfs on /dev/shm type tmpfs (rw,relatime,seclabel)                                                                                                     
devpts on /dev/pts type devpts (rw,relatime,seclabel,gid=5,mode=620,ptmxmode=000)                                                                       
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (rw,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
/dev/sdb1 on /run/initramfs/live type vfat (ro,relatime,fmask=0022,dmask=0022,codepage=cp437,iocharset=ascii,shortname=mixed,errors=remount-ro)
/dev/mapper/live-rw on / type ext4 (rw,noatime,seclabel,data=ordered)
rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
tmpfs on /tmp type tmpfs (rw,seclabel)
varcacheyum on /var/cache/yum type tmpfs (rw,relatime,seclabel,mode=755)
vartmp on /var/tmp type tmpfs (rw,relatime,seclabel)

[root@localhost liveuser]# ls -al /run/initramfs/live/LiveOS/
total 4440580
drwxr-xr-x. 2 root root       4096 Feb  5 11:57 .
drwxr-xr-x. 5 root root       4096 Dec 31  1969 ..
-rwxr-xr-x. 1 root root       8192 Feb  5 11:57 osmin.img
-rwxr-xr-x. 1 root root 3736076288 Feb  5 17:20 overlay-LIVE-E268-3051
-rwxr-xr-x. 1 root root  811061248 Feb  5 11:57 squashfs.img

[root@localhost liveuser]# blkid /dev/sdb1
/dev/sdb1: LABEL="LIVE" UUID="E268-3051" TYPE="vfat"

[root@localhost liveuser]# dmesg |egrep -i '(overlay|persistent|storage)'
[    1.773517] Initializing USB Mass Storage driver...
[    1.773686] scsi6 : usb-storage 1-1:1.0
[    1.773881] usbcore: registered new interface driver usb-storage
[    1.773946] USB Mass Storage support registered.

Comment 1 Erik del Toro Streb 2013-02-12 14:52:33 UTC
Same error here. This problem only occurs with the ISO images from Fedora 18. I can create USB live systems with persistant storage with liveusb-creator when using older Fedora releases (testet with Fedora 16 and 17 ISOs).

See discussions here http://forums.fedoraforum.org/showthread.php?p=1633925#post1633925 and here https://ask.fedoraproject.org/question/3884/persistant-storage-on-usb-stick-not-working-with

Comment 2 Luke Macken 2013-03-01 18:55:39 UTC
I fixed persistent overlays on F18 in https://github.com/lmacken/liveusb-creator/commit/4d6ff60d4dd03f298d2ecdee5cc8aa610e0299d0

Comment 3 Pavel Roskin 2013-03-01 20:22:00 UTC
I tried the git version by running "make rpm" and installing it with rpm.  It doesn't allow me to select any non-zero persistent storage.  The Fedora version (liveusb-creator-3.11.8-1.fc18.noarch.rpm) allows me to select persistent storage with the same flash drive.

Comment 4 Pavel Roskin 2013-03-01 20:31:39 UTC
The bad commit is 3081589a0356eb239892f8854bc0255d9a584db4 (Handle devices without any free space).  I have an empty 8 Gb USB flash with one partition formatted as vfat.

Comment 5 Luke Macken 2013-03-01 22:00:55 UTC
(In reply to comment #4)
> The bad commit is 3081589a0356eb239892f8854bc0255d9a584db4 (Handle devices
> without any free space).  I have an empty 8 Gb USB flash with one partition
> formatted as vfat.

Hmm, if you `git revert -n 3081589a0356eb239892f8854bc0255d9a584db4` and then `sudo ./liveusb-creator -v`, does that fix the problem? Either way, could you please post the verbose output as well? Thanks

Comment 6 Pavel Roskin 2013-03-01 22:12:27 UTC
Yes, I was able to make a bootable flash with persistent storage.

Here's the output for Fedora 18 i686 Desktop until it starts downloading.  Sorry, no time to wait until it finishes the download.  Please note a traceback.

# ./liveusb-creator -v
[creator:478] Skipping non-usb drive: /org/freedesktop/UDisks/devices/sda
[creator:516] {'bootable': False,
 'device': '/dev/sdb',
 'free': None,
 'fstype': 'vfat',
 'fsversion': 'FAT32',
 'is_optical': False,
 'label': u'Transcend',
 'mount': None,
 'parent': None,
 'size': 7902068224,
 'udi': '/org/freedesktop/UDisks/devices/sdb',
 'uuid': '1506-3730'}
[creator:478] Skipping non-usb drive: /org/freedesktop/UDisks/devices/dm_2d0
[creator:478] Skipping non-usb drive: /org/freedesktop/UDisks/devices/sr0
[creator:478] Skipping non-usb drive: /org/freedesktop/UDisks/devices/dm_2d1
[gui:407] Partition is FAT32; Restricting overlay size to 4G
[gui:418] Device is not yet mounted, so we cannot determine the amount of free space.
Traceback (most recent call last):
  File "/home/proski/src/liveusb-creator/liveusb/gui.py", line 390, in on_driveBox_currentIndexChanged
    self._refresh_overlay_slider(unicode(drive).split()[0])
  File "/home/proski/src/liveusb-creator/liveusb/gui.py", line 437, in _refresh_overlay_slider
    freespace -= 1 # Don't fill the device 100%
TypeError: unsupported operand type(s) for -=: 'NoneType' and 'int'
[creator:380] /dev/sdb selected: {'parent': None, 'free': None, 'fstype': 'vfat', 'fsversion': 'FAT32', 'device': '/dev/sdb', 'is_optical': False, 'size': 7902068224, 'udi': '/org/freedesktop/UDisks/devices/sdb', 'uuid': '1506-3730', 'bootable': False, 'mount': None, 'label': u'Transcend'}
[creator:858] Checking the MBR of /dev/sdb
[creator:862] mbr = 'EB5A'
[creator:858] Checking the MBR of /dev/sdb
[creator:862] mbr = 'EB5A'
[gui:506] Warning: The Master Boot Record on your device does not match your system's syslinux MBR.  If you have trouble booting this stick, try running the liveusb-creator with the --reset-mbr option.
[creator:580] Calling /org/freedesktop/UDisks/devices/sdb.Mount('', vfat, [], ...)
[creator:605] Mounted /dev/sdb to /media/Transcend 
[gui:407] Partition is FAT32; Restricting overlay size to 4G

Comment 7 Pavel Roskin 2013-03-01 22:23:39 UTC
The rest:

[creator:619] Verifying filesystem...
[creator:629] Setting /dev/sdb label to LIVE
[creator:183] /sbin/dosfslabel /dev/sdb LIVE
[creator:248] freebytes = 7886643200
[creator:249] isosize = 0
[creator:251] overlaysize = 2146435072
[creator:755] Verifying ISO MD5 checksum
[creator:183] checkisomd5 "Fedora-18-i686-Live-Desktop.iso"
[creator:762] ISO MD5 checksum passed
[creator:221] Verifying SHA256 checksum of LiveCD image...
[creator:646] Extracting live image to USB device...
[creator:183] mount -o loop,ro "Fedora-18-i686-Live-Desktop.iso" /tmp/tmpaT09h9
[creator:183] cp /tmp/tmpaT09h9/LiveOS/squashfs.img '/media/Transcend/LiveOS/squashfs.img'
[creator:183] cp /tmp/tmpaT09h9/LiveOS/osmin.img '/media/Transcend/LiveOS/osmin.img'
[creator:183] cp /tmp/tmpaT09h9/isolinux/* '/media/Transcend/isolinux'
[creator:183] umount /tmp/tmpaT09h9
[creator:262] Creating 2047MB persistent overlay
[creator:183] dd if=/dev/zero of="/media/Transcend/LiveOS/overlay-LIVE-1506-3730" count=2047 bs=1M
[creator:139] Setting up OLPC boot file...
[creator:146] Wrote /media/Transcend/boot/olpc.fth
[creator:692] Installing bootloader...
[creator:703] Copying /usr/share/syslinux/vesamenu.c32 on to stick
[creator:713] Looking for /media/Transcend/syslinux/ldlinux.sys
[creator:713] Looking for /media/Transcend/ldlinux.sys
[creator:183] syslinux -d syslinux /dev/sdb
[creator:796] No partitions on device; not attempting to mark any paritions as bootable
[creator:183] sync
[creator:611] Unmounting /media/Transcend
[creator:183] umount /dev/sdb

Comment 8 Luke Macken 2013-03-01 22:35:24 UTC
(In reply to comment #7)

Thanks! I just pushed another commit that should /hopefully/ fix things. Can you try again with the latest code from master and make sure it still works as expected? Thanks!

Comment 9 Pavel Roskin 2013-03-05 23:55:36 UTC
Everything is OK now.  There are no error messages.  A USB bootable flash drive is created.  The changes persist over reboots.  I think this bug can be closed now.

Comment 10 George 2013-03-20 08:43:27 UTC
I got the same problem. I see all the comments, but cannot know how to fix.
I use Fedora 18 live stick. Can anyone show me the detail to fix it ? please......

Comment 11 Pavel Roskin 2013-03-20 14:10:16 UTC
A new package needs to be made for Fedora.  Until then, use the version from git.  You can make a package from the git repository it and install it:

git clone https://github.com/lmacken/liveusb-creator.git
cd liveusb-creator
make srpm
rpmbuild --rebuild *.rpm
sudo rpm -U ~/rpmbuild/RPMS/noarch/liveusb-creator*.rpm

Comment 12 George 2013-03-21 02:39:58 UTC
Thank for your reply,but when I open https://github.com/lmacken/liveusb-reator.git
There is a list of files with source code.then I click liveusb-creater,source code display.
I am a fedora beginner. I do not know what's the next step to do.
I key in below command at fedora terminal , but fail.

# rpmbuild --rebuild *.rpm
# sudo rpm -U ~/rpmbuild/RPMS/noarch/liveusb-creator*.rpm

Can you teach me more ?

Comment 13 Pavel Roskin 2013-03-21 02:49:53 UTC
I gave the commands that need to be run, not a URL to follow.  But I'm afraid you'll have many more questions.  The bug tracking system is a wrong place for teaching.  Every comment is sent to multiple people, so it would distract them from other things, such as fixing bugs and making new packages.  Please look for a forum for Linux beginners.  I'll ignore further questions.

Comment 14 Fedora Update System 2013-04-22 21:11:05 UTC
liveusb-creator-3.11.8-1.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/liveusb-creator-3.11.8-1.fc18

Comment 15 Fedora Update System 2013-04-22 21:11:44 UTC
liveusb-creator-3.11.8-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/liveusb-creator-3.11.8-1.fc19

Comment 16 Fedora Update System 2013-04-23 02:59:46 UTC
Package liveusb-creator-3.11.8-1.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing liveusb-creator-3.11.8-1.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-6337/liveusb-creator-3.11.8-1.fc19
then log in and leave karma (feedback).

Comment 17 Fedora Update System 2013-04-26 15:04:26 UTC
liveusb-creator-3.11.8-2.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/liveusb-creator-3.11.8-2.fc19

Comment 18 Fedora Update System 2013-05-01 04:28:24 UTC
liveusb-creator-3.11.8-2.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 19 Fedora Update System 2013-05-02 03:55:01 UTC
liveusb-creator-3.11.8-1.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 20 Fedora Update System 2013-10-17 22:58:33 UTC
liveusb-creator-3.12.0-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/liveusb-creator-3.12.0-1.fc19

Comment 21 Fedora Update System 2013-10-17 22:59:33 UTC
liveusb-creator-3.12.0-1.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/liveusb-creator-3.12.0-1.fc18

Comment 22 Fedora Update System 2013-10-17 23:00:23 UTC
liveusb-creator-3.12.0-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/liveusb-creator-3.12.0-1.fc20

Comment 23 Fedora Update System 2013-10-19 00:09:56 UTC
Package liveusb-creator-3.12.0-1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing liveusb-creator-3.12.0-1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-19384/liveusb-creator-3.12.0-1.fc20
then log in and leave karma (feedback).

Comment 24 Fedora Update System 2013-11-10 07:10:51 UTC
liveusb-creator-3.12.0-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 25 Fedora Update System 2013-12-12 02:56:13 UTC
liveusb-creator-3.12.0-1.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 26 Fedora Update System 2013-12-12 02:57:31 UTC
liveusb-creator-3.12.0-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.