[Bug 941874] Re: (fakeraid) root device not activated during boot

apircalabu apircalabu at gmail.com
Mon Apr 30 23:56:20 UTC 2012


Apparently I have a related problem after an upgrade from 11.10 done using "do-release-upgrade". The troubled server has all the partitions on a software RAID 1. With the new kernel (3.2.0-24.37) it failed to mount the root partition, dropping to a busybox shell.  After booting the ol kernel I found there's no dmraid package installed on the server. Installing it also pulled kpartx-boot as dependency and now I have /usr/share/initramfs-tools/hooks/kpartx in place. update-initramfs appears to have generated a bootable initrd this time, but I haven't had the chance to test it yet.
Also, looking at the initrd images for 3.0.0-16-server and 3.2.0-24-generic I found there are no dmraid & kpartx related entries in 3.0.0.16 image.
Is it perhaps worth to have dmraid & kpartx-boot as dependencies for a basic installation? For some reason they were not installed previously. Should I file a new bug for this? I haven't found anything similar yet.

Basic information:
# cat /etc/issue
Ubuntu 12.04 LTS \n \l
# uname -a
Linux ddns02.ddns.local 3.0.0-16-server #29-Ubuntu SMP Tue Feb 14 13:08:12 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
(now running the old kernel)
# dpkg -l | grep linux-image
ii  linux-image-3.0.0-16-server     3.0.0-16.29                              Linux kernel image for version 3.0.0 on x86_64
rc  linux-image-3.0.0-17-server     3.0.0-17.30                              Linux kernel image for version 3.0.0 on x86_64
ii  linux-image-3.2.0-24-generic    3.2.0-24.37                              Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-server              3.2.0.24.26                              Linux kernel image on Server Equipment.
# cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md2 : active raid1 sda3[0] sdb3[1]
      955277176 blocks super 1.2 [2/2] [UU]
      
md1 : active raid1 sda2[0] sdb2[1]
      19529656 blocks super 1.2 [2/2] [UU]
      
md0 : active raid1 sdb1[1] sda1[0]
      1950708 blocks super 1.2 [2/2] [UU]
      
md127 : active raid1 sdd1[1] sdc1[0]
      976760400 blocks super 1.2 [2/2] [UU]
      
unused devices: <none>

# mount| grep md
/dev/md1 on / type ext4 (rw,errors=remount-ro)

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

Title:
  (fakeraid) root device not activated during boot

Status in “dmraid” package in Ubuntu:
  Fix Released
Status in “multipath-tools” package in Ubuntu:
  Fix Released

Bug description:
  I have installed Precise Pangolin Alpha 2 to a fakeraid stripe, but
  ubuntu fails to boot after install. When choosing recovery option, the
  boot process times out waiting for root device and drops to busybox
  shell. Running "dmraid -ay" and exiting busybox resumes boot and it
  continues normally.

  ---
  The problems are:

  * There are no initramfs hooks for kpartx, so kpartx is not available during boot.
  the following files are needed:
  /sbin/kpartx
  /lib/udev/kpartx_id
  /lib/udev/dmsetup_env
  /lib/udev/rules.d/95-kpartx.rules

  * The hook for dmraid udev rules is wrong:
  The script /usr/share/initramfs-tools/hooks/dmraid
  tries to add:
  /lib/udev/rules.d/85-dmraid.rules
  but the existing file is called:
  /lib/udev/rules.d/97-dmraid.rules

  After fixing the above two issues, system boots normally.

  * dmraid-activate is sometimes called with full device name
  dmraid-activate expecte device name withouth "/dev/", e.g. "sda" not "/dev/sda". However the script
  /usr/share/initramfs-tools/scripts/local-top/dmraid
  calls dmraid-activate using the full device name and path.

  * There might also be antoher bug on line 100 in dmraid-activate (in the awk script):
      # Heximal to decimal conversion array
      for (i = 0; i <= 9; i++) hex2dec[i] = i
      hex2dec["a"] = 10; hex2dec["b"] = 11; hex2dec["c"] = 12
      hex2dec["e"] = 13; hex2dec["d"] = 14; hex2dec["f"] = 15;
  Element "e" and "d" appears to have been switched. I'm not entirely sure what the script is trying to do though, and that part of the script does not affect my system.

  ---
  ProblemType: Bug
  DistroRelease: Ubuntu 12.04
  Package: dmraid 1.0.0.rc16-4.1ubuntu6 [modified: sbin/dmraid-activate usr/share/initramfs-tools/scripts/local-top/dmraid]
  ProcVersionSignature: Ubuntu 3.2.0-17.26-generic 3.2.6
  Uname: Linux 3.2.0-17-generic x86_64
  NonfreeKernelModules: fglrx
  ApportVersion: 1.93-0ubuntu2
  Architecture: amd64
  Date: Mon Feb 27 12:59:55 2012
  InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha amd64 (20120201.2)
  ProcEnviron:
   PATH=(custom, user)
   LANG=sv_SE.UTF-8
   SHELL=/bin/bash
  SourcePackage: dmraid
  UpgradeStatus: Upgraded to precise on 2012-02-21 (5 days ago)

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




More information about the foundations-bugs mailing list