Mailinglist Archive: opensuse-bugs (5295 mails)

< Previous Next >
[Bug 849752] 13.1RC2 Cannot boot from RAID1 volume(s)

https://bugzilla.novell.com/show_bug.cgi?id=849752

https://bugzilla.novell.com/show_bug.cgi?id=849752#c10


--- Comment #10 from Joachim Wagner <jwagner@xxxxxxxxxxxxxxxx> 2013-11-14
12:42:18 UTC ---
I tried a simpler and more virtualisation-friendly setup with RAID0 with 4MB
chunk size for / and /home and plain partitions for swap and /boot. (RAID1 on a
single physical disk would cause heavy I/O slowing down the test, especially
during the initial RAID re-sync.) I can confirm that named md devices cause a
blank screen after the 2nd reboot (the first reboot after the first
auto-login).

Furthermore, I can answer Neil's request for the contents of /etc/mdadm.conf:
this file does not exist (su - + ls /etc/md* shows "no such file or
directory").

Details:
* in first auto-login after installation, "df" shows /dev/md126 mounted on
/home and /dev/md127 mounted on /
* no file /etc/md*
* /etc/fstab uses the names /dev/md/root and /dev/md/home
* after restart and grub2, the screen stays black; on ctrl+alt+F1 to F7, there
is a blinking cursor on the black screen
* rescue system from the installation DVD shows /dev/md126 + 127; mounting
them shows that md127 is /home and md126 / (the other way around than in the
first auto-login)
* manually changing /etc/fstab to use /dev/md126 for / and /dev/md127 for
/home allows the system to boot but auto-login fails. Logging in as root, /home
is not mounted and manually mounting it shows the same contents as / ; "df"
shows that / is md127 despite /etc/fstab specifying it differently. Checking
grub.cfg, / is referred to by uuid and mduuid.
* manually changing /etc/fstab to use /dev/md127 for / and /dev/md126 for
/home fixes all problems
* changing the hostname to "linux", /dev/md/home and /dev/md/root also work in
/etc/fstab (in my test it was no problem that dhcp overwrites the hostname --
presumably this happens after the md devices are assembled)

I experimented a good bit to come up with a simple workaround but correcting
the md name with commands like

mdadm --assemble "/dev/md/linux-7hhd:root" --name="linux-7hhd:root" \
--update=name /dev/vda[23]

is not enough (mdadm --examine after a reboot shows that this was successful;
note also that this should be equivalent to Neil's suggestion to use
--homehost=$TARGETHOST during the installation). Maybe the md name "linux:root"
is used somewhere in the initrd. I checked the grub configuration and it uses
uuids and mmuids, rather than device names.

Workaround 1 (tested but complicated and stuck with the hostname "linux" which
is no good if the goal is to share hard drives between multiple hosts):
* in a rescue system, look at /proc/mdstat and mount your / fs
* the tested way (my steps above): edit your fstab to use md numbers rather
than names; consider that / and maybe /boot are assembled early and therefore
become md127 and/or md126 even though they may have different numbers in the
rescue system; repeat until system boots; then run YaST2 to change the hostname
to "linux" and restore the fstab with md names.
* alternatively

--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

< Previous Next >
References