[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#789150: marked as done (initramfs-tools: boot fails using root=UUID= for root-device on software, raid /dev/md*)



Your message dated Thu, 18 Jun 2015 13:13:08 +0200
with message-id <E1Z5Xkq-0016Fj-IJ@intern.SerNet.DE>
and subject line Re: Bug#789150: Acknowledgement (initramfs-tools: boot fails using root=UUID= for root-device on software, raid /dev/md*)
has caused the Debian Bug report #789150,
regarding initramfs-tools: boot fails using root=UUID= for root-device on software, raid /dev/md*
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
789150: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=789150
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: initramfs-tools
Version: 0.120
Severity: normal

Dear Maintainer,

copying a Jessie installation from a server with hardware raid to a system with software raid /dev/md* I found that the system would not start on the new machine and would get stuck in initramfs.

Looking at /proc/mdstat and using blkid I found that all software raid devices were available and their UUID could be found. Only symlinks to the devices in /dev/disk/by-uuid/ were missing.

Setting the missing symlink to the root-filesystem manually and exiting initramfs shell led to normal system boot.

Looking into the problem I found that in file /usr/share/initramfs-tools/hooks/udev a wrong filename prevents /lib/udev/rules.d/63-md-raid-arrays.rules from being copied to the initramfs.

A temporary solution without edditing files owned by the package is putting the following script into e.g. /etc/initramfs-tools/hooks/udev-fix-md-boot:

=========================== cut here ============================
#!/bin/sh -e

PREREQS=""

prereqs() { echo "$PREREQS"; }

case "$1" in
    prereqs)
    prereqs
    exit 0
    ;;
esac

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

mkdir -p $DESTDIR/lib/udev/rules.d/

rules=63-md-raid-arrays.rules
if   [ -e /etc/udev/rules.d/$rules ]; then
  cp -p /etc/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/
elif [ -e /lib/udev/rules.d/$rules ]; then
  cp -p /lib/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/
fi
=========================== cut here ============================

For a final fix a change of /usr/share/initramfs-tools/hooks/udev is needed:

=========================== cut here ============================
--- /usr/share/initramfs-tools/hooks/udev 2015-06-18 08:52:45.217944318 +0200
+++ udev	2015-06-18 11:52:38.896375650 +0200
@@ -35,7 +35,7 @@
 mkdir -p $DESTDIR/lib/udev/rules.d/
for rules in 50-firmware.rules 50-udev-default.rules 60-persistent-storage.rules \
 	80-drivers.rules \
-	64-md-raid.rules 60-persistent-storage-lvm.rules \
+	63-md-raid-arrays.rules 60-persistent-storage-lvm.rules \
 	55-dm.rules 60-persistent-storage-dm.rules; do
   if   [ -e /etc/udev/rules.d/$rules ]; then
     cp -p /etc/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/
=========================== cut here ============================

With either solution after rebuilding initramfs with 'update-initramfs -k all -u' the system booted without problems using the software-raid /dev/mdX as root filesystem identified by its UUID.

-- System Information:
Debian Release: 8.1
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/6 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages initramfs-tools depends on:
ii  busybox      1:1.22.0-9+deb8u1
ii  cpio         2.11+dfsg-4.1
ii  klibc-utils  2.0.4-2
ii  kmod         18-3
ii  udev         215-17+deb8u1

Versions of packages initramfs-tools recommends:
ii  busybox  1:1.22.0-9+deb8u1

Versions of packages initramfs-tools suggests:
ii  bash-completion  1:2.1-4

--- End Message ---
--- Begin Message ---
wrong packet - new bug for packet udev: Bug#789152
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=789152

--- End Message ---

Reply to: