[Bug 365853] Re: casper-rw file not detected due to improper use of fstype

Brian Murray brian at ubuntu.com
Tue Oct 25 22:34:07 UTC 2011


** Changed in: casper (Ubuntu)
       Status: Incomplete => Invalid

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to casper in Ubuntu.
https://bugs.launchpad.net/bugs/365853

Title:
  casper-rw file not detected due to improper use of fstype

Status in “casper” package in Ubuntu:
  Invalid

Bug description:
  Binary package hint: casper

  ubuntu-9.04-rc-desktop-i386.iso

  Casper is unable to find the file casper-rw in the root directory of a
  FAT filesystem located on partition 1 of a USB drive (/dev/sdb1 on
  target system).   Kernel booted with the "persistence" option.

  Inside initrd.gz, the file scripts/casper has the persistence.   It
  looks for casper-rw for whole system persistence and home-rw for home
  directory persistence.  It uses a function find_cow_device() in
  scripts/casper-helpers.   This in turn makes use of
  /usr/lib/klibc/bin/fstype to report the filesystem type for each
  partition it finds.  Unfortunately, this program is returning UNKNOWN
  for the usb drive partition, among others.    find_cow_device expects
  this program to return "vfat".   This is impossible since fstype has
  no test for FAT filesystems, as verified by looking at the source for
  klibc-1.5 and by running strings on  it.

  This bug may have been introduced in a hurried attempt to prevent
  casper from mounting, and therefore replaying the journal file, on
  journaling filesystems on a system in hibernation.    Or perhaps a
  modified version of fstype.c was used which was then reverted.

  I am, incidentally, using a manually constructed USB image due to a failure of usb-creator to put the files on the filesystem in a sensible order that can be booted on systems with a BIOS 512MB (no LBA) limit on usb devices presented as floppies.    It has been carefully checked using diff and cmp to be identical to the image created by usb-creator except for a sensible file order, syslinux.cfg is in /syslinux/ where it belongs, and isolinux.cfg is still there.     The differences are not relevant to this bug.    The initrd.gz file on the original ISO image was checked to contain this bug.   /usr/lib/klibc/bin/fstype (on running system) and /casper/initrd.gz/bin/fstype (from ISO image) where both checked with "strings $filename | fgrep -i fat".   Neither is capable of detecting FAT filesystems and returning the string "vfat".
    http://www.freelabs.com/~whitis/linux/usb_ubuntu_9.04RC/index.xhtml

  The usb partition was formated using mkfs.msdos (on a debian system).
  But, again, not relevent since the bit pattern present is irrelevant
  to detection failure when there is no code to check for FAT in the
  first place.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/casper/+bug/365853/+subscriptions




More information about the foundations-bugs mailing list