Comment 5 for bug 143958

Revision history for this message
TJ (tj) wrote :

I've been digging into this error. I don't recommend diving into the deep-end of debian-installer (d-i) unless you have to! I present a simple 4-line modification to 'list-devices' that solves the problem.

The root cause is the way d-i's /bin/list-devices script detects a CD using udevinfo. the script iterates all the devices in /sys/block/

In the cases that are failing the drives are on the IEEE1394 bus:

udevinfo -q all -p /sys/block/sr0
P: /block/sr0
N: scd0
S: disk/by-id/ieee1394-xxxxxx...
S: disk/by-path/pci-xxxx....
E: DEVTYPE=disk
E: ID_SERIAL=xxxxx...
E: ID_BUS =ieeee1394
E: ID_PATH=pcixxxx.....

At the point where CD-ROMs are detected the /bin/list-devices script does this:

 if ! $match && [ "$TYPE" = cd ]; then
  if udevinfo -q env -p "$devpath" 2>/dev/null | \
     grep -q '^ID_CDROM='; then
   match=:
  fi
 fi

Obviously, there isn't an ID_CDROM since DEVTYPE = disk.

When the failure occured I used Ctrl+Alt+F2 to switch to a virtual terminal then using "nano /bin/list-devices" I modified it to read:

 if ! $match && [ "$TYPE" = cd ]; then
  if udevinfo -q env -p "$devpath" 2>/dev/null | \
     grep -q '^ID_CDROM='; then
   match=:
  elif udevinfo -q name -p "$devpath" 2>/dev/null | \
     grep -q 'cd'; then
   match=:
  fi
 fi

I then returned to the installer menu using Ctrl+Alt+F1 and ran the "Detect and mount CD-ROM" step once more. It successfully detects the CD-ROM drive and ends up reporting:

CD-ROM detected
The CD-ROM autodetection was successful. A CD-ROM drive has been found and it currently contains the CD Ubuntu 7.10 "Gutsy Gibbon" - Alpha i386 (20070921.1). The installation will now continue.

I had a similar failure trying to install Feisty on a Dell PowerEdge 4x Xeon server earlier this year. On that occasion I dropped Ubuntu because I didn't have the time to debug the issue fully. That suggests to me this issue could be affecting a lot more systems than we might have thought.

Hopefully you can test and apply this patch to d-i so the installer works on a wider range of systems.

I'll now try a complete install run and hope this solves bug #143963 too.