casper 1.340.1 breaks previous persistency

Bug #1481117 reported by Adrien Beau
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
casper (Ubuntu)
Fix Released
Medium
Andy Whitcroft
Trusty
Fix Released
High
Andy Whitcroft
Vivid
Triaged
Medium
Andy Whitcroft
Wily
Fix Released
Medium
Andy Whitcroft

Bug Description

Likely scenario (unless I missed a crucial piece of information):

- User has a working persistency file (or partition), with an Ubuntu 14.04.2 ISO
- User upgrades to an Ubuntu 14.04.3 ISO, and boots it with the same persistency settings

Likely result:

- It appears to the user that the persistent data is lost

Cause:

- In casper 1.340, persistency data is stored in the root of the persistency partition
- In casper 1.340.1, persistency data is stored in the /upper directory of the persistency partition

Actual issue I faced:

- I maintain a personal, custom Kubuntu ISO. Nothing too fancy: it is just the regular Kubuntu ISO, with many additional packages (digikam, darktable, etc.; all from the official Ubuntu repository). I regularly update my ISO by chrooting in the uncompressed squashfs and running aptitude there. I have a script to rebuild the ISO afterwards.
- Today's update brought me casper 1.340.1, which broke my persistency as described above
- Additionally, since I'm still running Linux 3.16, casper.log also featured a magnificent red herring:

> mount: mounting /cow on /root failed: Invalid argument

It took me a while to understand that the mount was actually successful (the first mount with the workdir option fails and emits the message, the second mount succeeds silently).

My solution was quite simply:

- Boot without persistency
- Mount the persistent partition
- Empty the /upper directory that had been created when I first booted with casper 1.340.1
- Move data from the root of the persistent partition to the /upper directory
- Reboot with persistency

I'm not sure all users of the persistency feature will be as adept at fixing their persistency partition. It is surprising to see such an incompatible change introduced in a minor update of an LTS version.

Related branches

Revision history for this message
Adrien Beau (adrienbeau) wrote :

Adding tag "regression-update" as per comment #7 of bug #1401620

tags: added: regression-update
Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

Indeed we probably should try to support this. Marking Triaged / Medium, as I'm not sure whether this is a common use case. Handling the migration should be fairly straightforward, I'd think.

Changed in casper (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
Andy Whitcroft (apw)
Changed in casper (Ubuntu):
assignee: nobody → Andy Whitcroft (apw)
tags: added: trusty
Andy Whitcroft (apw)
Changed in casper (Ubuntu):
milestone: none → ubuntu-15.08
status: Triaged → In Progress
Revision history for this message
Adam Conrad (adconrad) wrote : Please test proposed package

Hello Adrien, or anyone else affected,

Accepted casper into trusty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/casper/1.340.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in casper (Ubuntu Trusty):
status: New → Fix Committed
tags: added: verification-needed
Changed in casper (Ubuntu Trusty):
assignee: nobody → Andy Whitcroft (apw)
Changed in casper (Ubuntu Vivid):
assignee: nobody → Andy Whitcroft (apw)
Andy Whitcroft (apw)
Changed in casper (Ubuntu Trusty):
milestone: none → ubuntu-14.04.3
Revision history for this message
Adam Conrad (adconrad) wrote :

Worth noting that, with this SRU, downgrading will still break, and there's pretty much nothing we can do about that. If you setup persistence on 14.04.3 or 15.10 or something and try to later boot it with <= 14.04.2, it's not going to work. I don't think that's a use-case we can even attempt to cater to, so we'll just have to accept that as a wart.

Revision history for this message
Andy Whitcroft (apw) wrote :

Ok tested with the bits in the package in -proposed. Tested create persistence from .2 and then boot against .2, invalid format specifier, and a clean create from the -proposed bits. Seems to work as expected.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of the Stable Release Update for casper has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package casper - 1.340.2

---------------
casper (1.340.2) trusty; urgency=low

  * scripts/casper: migrate existing persistent disk images to the
    updated upper/work form. Record the actual format used and
    ensure we use the existing format and abort if not possible.
    (LP: #1481117)

 -- Andy Whitcroft <email address hidden> Tue, 04 Aug 2015 21:31:29 +0100

Changed in casper (Ubuntu Trusty):
status: Fix Committed → Fix Released
Andy Whitcroft (apw)
Changed in casper (Ubuntu Trusty):
importance: Undecided → High
Changed in casper (Ubuntu Vivid):
status: New → Triaged
importance: Undecided → Medium
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package casper - 1.363

---------------
casper (1.363) wily; urgency=low

  * scripts/casper: migrate existing persistent disk images to the
    updated upper/work form. Record the actual format used and
    ensure we use the existing format and abort if not possible.
    (LP: #1481117)

 -- Andy Whitcroft <email address hidden> Mon, 10 Aug 2015 10:52:25 +0100

Changed in casper (Ubuntu Wily):
status: In Progress → Fix Released
Revision history for this message
OpenFOAM (c-greenshields) wrote :

With these "fixes", users are unable to boot a live USB with persistent partition:
https://bugs.launchpad.net/ubuntu/+source/casper/+bug/1489855
http://askubuntu.com/questions/664577/unable-to-boot-ubuntu-live-usb-flash-drive-with-casper-rw-persistent-partition

Is there any likelihood that the "fix" will be reverted, or otherwise modified, so that live USB with persistent partition will be possible in Ubuntu in the future?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.