Spurious errors from update-initramfs

Bug #76131 reported by Pappan
2
Affects Status Importance Assigned to Milestone
initramfs-tools (Ubuntu)
Fix Released
Undecided
Pappan

Bug Description

Binary package hint: initramfs-tools

Symptom:

During update-initramfs, we see error messages from mkinitramfs of the following form.

sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-2.6.17-10-386
[: 89: Eft: unexpected operator
[: 89: Scene: unexpected operator

The command completes successfully but these errors are annoying.

Pappan (ppadman)
Changed in initramfs-tools:
assignee: nobody → ppadman
status: Unconfirmed → Confirmed
Revision history for this message
Pappan (ppadman) wrote :
Revision history for this message
Pappan (ppadman) wrote :

This can be easily reproduced by having files or directories that contain spaces in "/"

The sequence of the problem is below:

In /usr/sbin/mkinitramfs:

 87 # Check that we're using a new enough kernel version, first for ourselves,
 88 # then for each of the hooks, which can have a MINKVER variable defined
 89 check_minkver ${version}
 90 check_minkver ${version} /usr/share/initramfs-tools/hooks
 91 check_minkver ${version} ${CONFDIR}/hooks

The "check_minkver ${version}" calls without a second paramter.

In /usr/share/initramfs-tools/hook-functions

set_initlist was called whether or not a second parameter was given to check_minkver

In /usr/share/initramfs-tools/scripts/functions:

set_initlist()
{
        unset initlist
        for si_x in ${initdir}/*; do
                if [ ! -x ${si_x} ]; then
                        continue
                fi
                initlist="${initlist} $(basename ${si_x})"
        done
}

$(initdir} is empty so it became "/*" and resulted in the bug

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (17.3 KiB)

This bug was fixed in the package initramfs-tools - 0.92bubuntu1

---------------
initramfs-tools (0.92bubuntu1) intrepid; urgency=low

  * Merge from debian unstable, remaining changes:
    - Change Build-Depends to Build-Depends-Indep.
    - Use busybox-initramfs for Depends.
    - Do not source udev.conf.
    - Set BUSBOXDIR properly.
    - Keep kinit and gzip in initrd.
    - Use -Qb for for module loading to honor blacklists via the use of
      MODPROBE_OPTIONS.
    - all_generic_ide script.
    - Remove lvm local-top script (conflicts with lvm-common).
    - takeover=1 in update-initramfs.
    - Allow the mounting of a root filesystem as a loop device on top
      of a host filesystem, used for wubi installs.
    - Add vfat support to the initramfs.
    - Reduce timeout to 30 seconds -- corner cases (giant
      disk arrays, clusters) will need to provide their own rootdelay=
      boot arg.
    - Keep more meaningful text for no root device panic.
    - Provide a clearer error on mount failure of the Windows host
      filesystem.
    - Add 2>&1 to the run-init line.
    - Source /scripts/functions in resume script.
    - resume UUID upgrade.
    - Add mountroot failure support, to allow meaningful messages when
      no root device can be found.
    - Panic if either the root device doesn't exist, or vol_id cannot
      identify it. Allows for mountroot failure hooks for md devices
      to be displayed.
    - Ignore blacklist for forced vga= usage.
    - Loop for 5 seconds waiting for $suspend to show up, adjustable
      with the resumedelay= command-line arg.
    - Load virtio_pci for MODULES=most.
    - Usplash pulsates until the real init takes over.
    - Drop scripts/init-premount/thermal as force_load can do this
      for us during initramfs creation.
    - Load thermal modules on lpia.
    - Allow for alternative PREREQS to be specified using | as the
      separator.
    - Add udf to auto_add_modules. It was originally added to
      dep_add_modules, however dep_add_modules now auto-detects the
      modules needed for the root filesystem.
  * hook-functions:
    - Refer to /lib/firmware/${version} where version is the kernel
      version we are building an initramfs for.
    - Do not copy /lib/udev/firmware.agent to the initramfs. Ubuntu's
      udev has /lib/udev/firmware_helper instead, and the udev hook
      copies this to the initramfs for us.
    - Dropped the manual_add_firmware function, as initramfs-tools now
      checks the firmware field in the module it is copying, and copies
      the firmware required by that module if its available.
  * Drop hooks/keymap and the KEYMAP variable setting in
    conf/initramfs.conf as console-setup takes care of keymap loading.
  * hooks/udevhelper: Drop, udev already copies what it needs.
  * hooks/legacylvm: Drop, as it refers to binaries and directories our
    lvm package doesn't have.

initramfs-tools (0.92b) unstable; urgency=low

  [ maximilian attems ]
  * update-initramfs: mbr_check() fix for /dev/md/X naming. (closes: #469312)
    Thanks to Axel Beckert <email address hidden> for report.
  * hook-functions: MODULES=dep fix error message.

  [ Glennie Vignarajah ]
 ...

Changed in initramfs-tools:
status: Confirmed → Fix Released
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.