Comment 24 for bug 500822

Revision history for this message
TJ (tj) wrote :

This continues to affect desktop installers for 17.10 and 18.04.

There are a variety of underlying causes and the symptom seem isn't related to the cause, which causes immense confusion.

As soon as the kernel has booted it executes the /init script in the /casper/initrd.lz

One of the first things the /scripts/casper functions do is find the installer device in order to mount it's file-system. As part of that they scan various block devices looking for it, in a repeating loop. Each time through the loop existing devices get re-scanned. One device that is scanned is the CD/DVD drive, usually /dev/sr0.

When booting from USB any CD/DVD drive usually has no disc inserted and therefore we see repeated

/init: line 7: can't open /dev/sr0: No medium found

each time the loop runs.

There are many reasons why the installer file-system isn't found but here is a way to narrow down the cause:

1. The above message repeats rapidly many times in succession until the screen is filled with the same line and eventually it drops to the Busybox initramfs shell prompt.

  This means the USB mass storage device wasn't detected, or the usb_storage kernel module wasn't
  loaded by the kernel. This could be because the udev rules didn't match the device and therefore
  didn't create the device node (e.g. /dev/sdb)

2. The above message only appears once, or only repeats after long delays, and it takes many minutes to drop to the Busybox initramfs shell prompt.

  This indicates the udev daemon is hung whilst processing device detection rules, possibly due to
  it executing an external command which has hung. There are some calls to 'udevadm trigger' which
  has a default delay of 120 seconds if the kernel event queue isn't drained - which it may not be
  if some process/task has hung.

3. The device doesn't present on a device node or path the casper scripts look for.

  Setting the kernel command-line option live-media= (e.g: live-media=/dev/mmcblk0) which can be
  supported with live-media-path= (e.g: live-media-path=/casper) which is a directory where the live
  file system is, (e.g: by default /casper/filesystem.squashfs)

There may be other indirect causes of these headline symptoms.

I've just dealt with one where the UEFI boot failed in this way from a USB flash mass storage. After hours helping the user diagnose it, the solution was to move the USB device from the rear USB port of the motherboard to a front port!

Some years ago I had a similar issue on Dell Poweredge servers where the CD-ROM device with the installer on was a true SCSI device on a SCSI controller, and the installer was not shipped with or loading the correct kernel module for that SCSI controller.

Systems with a Floppy disk controller but no floppy disk attached can also cause long timeouts as the FDC ports are probed and a long timeout expires before the OS decides there is no FDD attached.