You are not logged in.
I have a machine running Arch with several SATA drives in RAID, but with an IDE/PATA system drive. The IDE drive contains the boot, root, and swap partitions (there is no home partition on this machine). I hadn't restarted it in a while, and I restarted it this morning due to something totally unrelated, and it will no longer boot.
After hours of troubleshooting, I decided to just do a fresh install (for example, I was still using grub legacy - the new install uses syslinux). Still no dice.
It's not the hard drive's fault - the hard drive works fine. If I use the Arch Linux install ISO (burned onto a CD) it boots fine and recognizes the system drive, and everything is dandy. I can even boot with SystemRescueCD (based on Gentoo, on the 3.0.21 kernel) and use that to chroot and execute the init system on my Arch install.
But I can't get the 3.6.2 (current) kernel to boot it. It fails with "Waiting 10 seconds for device /dev/sda2" and then "ERROR: Unable to find root device /dev/sda2." It continues to drop me into a recovery shell, where I can see that the system drive is nowhere to be found in the /dev folder.
Things I have tried which have not worked (note: I have not tried all combinations of these):
* Using the 'ide' hook instead of the 'pata' hook and rebuilding initcpio. I'm currently using the 'ide' hook, but I can switch back to the more "modern" pata one if needed.
* Unplugging the other IDE device on the cable (the CD drive).
* Changing the IDE control mode from IDE to AHCI (?) in the BIOS (I have since changed it back).
* Adding the ide_core.chs=4.0 kernel parameter to the boot line in syslinux.
As a reminder, the drive seems to work fine. At least, it was detected by the installer, successfully mounted, and successfully written to and read from.
Any ideas on what's wrong? Do I need to downgrade the kernel? How do I do that from a fresh install?
Last edited by Tempest (2012-10-19 19:13:35)
Offline
Same here, but no raid. Kernel said something like "ata ... errno=-19", or so (sorry for not saving it). I'm afraid, i'm a noob when it comes to drives stuff and init ramdisk, so you have to help me if you need more info.
I just had some real fun downgrading the kernel which solved the problem for me. What i basically did (on i686):
1. get linux and linux-headers packages from here:
http://arm.konnichi.com/2012/10/15/core/os/i686/
2. copy packages on the system
3. chroot into it
4. install them with pacman -U
EDIT: Just found this thread:
https://bbs.archlinux.org/viewtopic.php?id=150570
Haven't tried it as i had already enough fun for today.
Last edited by Yggdrasil (2012-10-19 14:22:19)
Offline
I can confirm that adding the kernel parameter "modprobe.blacklist=pata_acpi" works. I'm marking this thread closed. Thanks for that link!
Offline
Offline
I can confirm that adding the kernel parameter "modprobe.blacklist=pata_acpi" works. I'm marking this thread closed. Thanks for that link!
This worked for me as well with root on a SATA drive. Mine would boot normally every other boot though.
Now, I've no idea what I'm getting into here so excuse my ignorance: Does this mean I should remove the 'pata' hook and recompile the kernel? Or is this a different issue?
Offline
I just looked it up and my root is using SATA too. I can confirm that removing pata (and scsi) from HOOKS in /etc/mkinitcpio.conf solves the problem too, without any blacklisting.
Offline
I can confirm this 'fix' also. Remove 'pata' in your HOOKS in mkinitcpio.conf and run mkinitcpio -p linux
Offline