usb-creator silently ignores invalid ISO files without warning the user.

Bug #500526 reported by Giovanni Bajo
20
This bug affects 4 people
Affects Status Importance Assigned to Milestone
usb-creator (Ubuntu)
Confirmed
Low
Roderick B. Greening

Bug Description

The official Ubuntu Netbook Remix ISO image seems corrupted. It doesn't work with usb-creator (which is extremely annoying as it is supposed to be the official way to install it) bceause isoinfo says it is corrupted; file-roller cannot fully extract it as well.

Steps to reproduce:
1) Download official "ubuntu-9.10-netbook-remix-i386.iso" (md5: 7cc35e8388f8b17d3cc8628ab110aaf0)
2) Run usb-creator
3) Click on "other..."
4) Select iso image

The iso image is not added to the window. What happens is that the "isoinfo" utility says that the ISO is somewhat invalid, and usb-creator doesn't display the error message (there's another launchpad bug for this).

This is the problem:

$ isoinfo -J -i ubuntu-9.10-netbook-remix-i386.iso -x /.disk/info
isoinfo: Short read on old image

The above command line is what usb-creator is running (confirmed with strace).

If I open the iso file with file-roller and try to view the "/.disk/info" file, I get this error instead:

7-Zip 9.04 beta Copyright (c) 1999-2009 Igor Pavlov 2009-05-30
p7zip Version 9.04 (locale=it_IT.UTF-8,Utf16=on,HugeFiles=on,2 CPUs)

Processing archive: /home/rasky/Downloads/ubuntu-9.10-netbook-remix-i386.iso

Extracting .disk/info Data Error

Sub items Errors: 1

So basically at least two independent programs agree that the ISO file is "corrupted". The fact that the OFFICIAL usb-creator utility cannot read it is annoying and embarassing, since that is the official documented way to install UNR.

Description: Ubuntu 9.10
Release: 9.10

usb-creator:
  Installed: 0.2.12
  Candidate: 0.2.12
  Version table:
 *** 0.2.12 0
        500 http://it.archive.ubuntu.com karmic/main Packages
        100 /var/lib/dpkg/status

genisoimage:
  Installed: 9:1.1.9-1ubuntu2
  Candidate: 9:1.1.9-1ubuntu2
  Version table:
 *** 9:1.1.9-1ubuntu2 0
        500 http://it.archive.ubuntu.com karmic/main Packages
        100 /var/lib/dpkg/status

Revision history for this message
Monkey (monkey-libre) wrote :

I assign this bug to the usb-creator package. Have you checked the MD5 of the ISO image?

affects: ubuntu → usb-creator (Ubuntu)
Revision history for this message
Monkey (monkey-libre) wrote :

Thank You for making Ubuntu better.

Revision history for this message
Roderick B. Greening (roderick-greening) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better.

The issue here is in "usbcreator/backends/base/backend.py" beginning at line 42 and the subsequent if block that follows (label = self._is_casper_cd(filename))

In the current situation, the label is returned as 'None' and the if block that follows is never executed. It would be desirable to catch this exception and return a message to the user indicating that the selected ISO does not appear to be a valid ubuntu image.

Changed in usb-creator (Ubuntu):
assignee: nobody → Roderick B. Greening (roderick-greening)
importance: Undecided → Low
status: New → Confirmed
summary: - Official UNR (Ubuntu Netbook Remix) iso image is corrupted
+ usb-creator silently ignores invalid ido files without warning user.
summary: - usb-creator silently ignores invalid ido files without warning user.
+ usb-creator silently ignores invalid ISO files without warning the user.
Revision history for this message
skierpage (skierpage) wrote :

You get the same silent rejection if the ISO simply lacks /.disk/info , e.g. a Fedora 15 ISO or ReactOS ISO, see bug 705353 (which perhaps should be made a dupe of this).

To add to Mr. Greening's analysis, as I commented in bug 705353, there seems to be a logic error in 10.10's usbcreator/backends/udisks/backend.py . It doesn't test if the output of `isoinfo -J -i /path/to/Some.iso -x /.disk/info` is an empty string , so it doesn't realize it's failed, so its logging error 'Could not extract .disk/info.' is never reached! That code has a "# TODO evand 2009-07-26: Error dialog.", but maybe base/backend.py should trigger the error dialog.

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.