13.1 won't startup after online update; Timed out waiting for disk to appear.

This is an old desktop. It has two SATA disks. sda is configured
sda1 - boot (500MB)
sda2 - swap
sda3 - /
sda5 - /home

It doesn’t use raid. There is an onboard raid controller which failed and is disabled in BIOS. The disks are connected to a separate card which is capable of being a raid controller but is not configured as such.
It previously ran SUSE 10 with no problems. I installed 13.1 when it was released. It did not set up the bootloader correctly then - I had to use the rescue system. and do

mount /dev/sda3 /mnt
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt

mount /dev/sda1 /boot

grub2-install /dev/sda
grub2-mkconfig

It’s been OK since then.

A few days ago I did an online update and I suspect that caused the currect problem.
First reboot after that update it went into grub’s text mode. I initially suspected the same problem with the bootloader setup and repeated the commands above but this didn’t solve the problem. (Though I got graphics back on startup - not sure how.)

This is what I see on the console buring startup:

Expecting device dev-disk-by\x2did-raid\x2dpdc-gadgdci\x2dpart2.device
and same for part1 and part5
And it stalls on:
A start job is running for dev-disk-by\x2did-raid\x2dpdc-gadgdci\x2dpart1.device
also for part2 and part5 - alternating. and eventually:
Timed out waiting for part5
Dependency failed on /home
Welcome to emergency mode…
(But I can’t log in - no prompt appears and keypresses ignored.)

With the rescue system I can see and display contents of sda1, sda3, and sda5.

I used yast under rescue to check and rebuild the bootloader. No change.
In yast a custom boot partition is specified as
/dev/disk/by-id/raid-pdc-bhihbhegf
This is different to the disc id displayed during startup. I can’t see ‘x2dpdc-gadgdci’ anywhere in yast. Is this significant?

I tried this with the rescue system:
mkinitrd -v
This didn’t give any errors (it mentioned unsupported kernel 3.11.6-4-default which I think is normal)

I then did grub2-mkconfig and saw this:

ERROR: opening path /mounts/instsys/sys/block
ERROR: failed to discover devices
repeated 5 time
ERROR: failed to discover devices
/dev/mapper/control: mknod failed: No such file or directory
Failure to communicate with kernel device-mapper driver.
Check that device-mapper is available in the kernel.
WARNING: Failed to connect to lvmetad: No such file or directory. Falling back to insternaal scanning.
No volume groups found.

Suggestions?

For some reason it thinks you have a RAID setup. Check the BIOS to be sure that the devices that may do RAID (looks like you have at least 2) are in the state you think they are. ie OFF

Could be a hardware failure in one of the RAID controls you have that makes it expose itself even if off.

Also please check the /etc/fstab to make sure that the said device is not set there. You will have to boot from live media mount the root on the hard drive to see the file.

It does not matter what SUSE 10 did or did not due it is a different OS (though related)

Thx. I’ve always been puzzled by the references to RAID. Is it abnormal to have these references if I have a RAID controller, but it’s not configured?

Note that this has been working with 13.1 for 6 months until now. The only issue was the initial bootloader setup which wasn’t automatic.

I’ll look at fstab tomorrow.

The onboard RAID controller is definitely disabled - and the disks are not plugged into the mobo.

lspci (in rescue system) gives:
RAID bus controller: Silicon Image, Inc. SiI 3112 [SATALink/SATARaid] Serial ATA Controller (rev 82)

During bootup I can configure this. Configurator says ‘No RAID set exists’

/etc/fstab:
/dev/disk/by-id/raid-pdc_gadgdcii-part2 swap swap defaults 0 0
/dev/disk/by-id/raid-pdc_gadgdcii-part3 / ext4 acl,user_xattr 1 1
/dev/disk/by-id/raid-pdc_gadgdcii-part1 /boot ext3 defaults 1 2
/dev/disk/by-id/raid-pdc_gadgdcii-part5 /home ext3 defaults 1 2

This made me wonder if the disk /dev/disk/by-id/raid-pdc_bhihbhegf I mentioned that appeared in the yast bootloader section is sdb. That disk is not mounted by default. So I went back into yast/bootloader to take another look - and that’s disappeared. ‘Boot from MBR’ is selected and in the (unselected) Custom Boot Partition it says /dev/fd0.

If startup is getting the disk identifiers for parts 1,2, and 5 from that table it must have found part 3 which contains it. Is the root partition located some other way?

I found this
http://www.linuxquestions.org/questions/suse-novell-60/opensuse-13-1-and-dell-perc-raid-controllers-install-fail-4175514079/ which refers to
https://bugzilla.novell.com/show_bug.cgi?id=853914
I don’t know if that’s relevant at all but I took a look at /etc/sysconfig/kernel

INITRD_MODULES=""

Is this significant - given that mkconfig reports no device_mapper in the kernel?

Just to reiterate, this was working with 13.1 till a few days ago.

I have a workaround

If I change all lines in /etc/fstab from, eg.,
/dev/disk/by-id/raid-pdc_gadgdcii-part2 swap swap defaults 0 0
to
/dev/sda2 swap swap defaults 0 0

Then it starts up.

It’s possible I could also use
/dev/disk/by-id/ata-WDC_…part2
where that disk ID is as displayed in the yast bootloader module.
My other 13.1 desktop uses that format.

I think there’s a bug related to RAID, but I don’t know where.

Just guessing but I guess an update forced a rebuild of boot and it saw the RAID controls and got the idea there was active RAID… So it remade the fstab with the RAID names. You might want to report this but then you do have an odd set of hardware. I don’t know if any one else could reproduce it.

SuSE identifying this as RAID’ is not new. I recognise ‘gadgdcii’ - for example when the system forces a fsck it sits there checking gadgdcii-partn.

So I’m pretty sure that fstab always contained raid…gadgdcii as well. The problem here is that it can’t translate that into a physical disk.

Another possibility… Have any of the drive actually been run in a RAID array? There can be extraneous tables left if you don’t totally zero the drive. If I recall maybe the last track

No.

I’m out of ideas… sorry :X

Thx anyway :slight_smile:

So, in summary, there are two unexplained, and possibly unrelated, symptoms.

1 Failure to start up, with these messages:

Timed out waiting for part5
Dependency failed on /home
Welcome to emergency mode…

2 The error messages in grub2-mkconfig in recovery system:

ERROR: opening path /mounts/instsys/sys/block
ERROR: failed to discover devices
repeated 5 time
ERROR: failed to discover devices
/dev/mapper/control: mknod failed: No such file or directory
Failure to communicate with kernel device-mapper driver.
Check that device-mapper is available in the kernel.

mkconfig may have failed during the online-update that I think caused the problem which may have triggered the 1st symptom.

The workaround, to replace “/dev/disk/by-id/raid-pdc_gadgdcii-part2” with “/dev/sda2” in fstab, suggests this is related to the disk being on a raid controller even though not configured as RAID.

I don’t think I have enough to raise a bug here. In particular I don’t know which update caused it. I suspect this will recur!