I've attempted to install Arch 0.7 beta 2 on a new Shuttle SN95G5. This is an AMD 64 3500+ box with an nVidia nForce3 250 Ultra chip set and on-board SATA.
The Arch installation itself seems to work properly. The SATA drive is recognized and can be mounted, unmounted, viewed, and modified.
The problem arises when booting the installed system: there is a kernel panic when grub cannot open the root device /dev/sda1 or unknown-block(0,0).
I have tried all manner of root device specifications with and without udev, but with no success.
Can anyone suggest successful strategies with SATA and Arch 0.7 beta 2?
BTW: I have been able to install and boot Ubuntu AMD64 successfully on this machine, but I have not been able to get the /etc/fstab and /boot/grub/menu.lst specifications to work under Arch.
have you tried compiling your own kernel?
Sounds realy scary until you follow the on screen instructions which guide you to a menu config.
Look through the drivers section and make sure the right driver is built in rather than a module to the kernel. As I understand it you need the HDD drivers built in or the kernel will not be able to see the disk to mount it.
Out of interest, did you have to load a module to read the disk before prepping it?
What's odd about this is that INSTALLATION works fine (it mounts the SATA drives and installs software fine to them; and I can even mount them just fine booting from the installation CD), but grub doesn't seem to work when given the appropriate drive specifications (both for udev and devfs). Looking at dmesg during installation you can see all the drives being recognized properly, but booting AFTER installation just plain doesn't get that far.
The kernel panic occurs because there is no driver
available for the root filesystem. When you boot from
the cd the root filesystem is on the cd itself, not the
The solution is either to compile a kernel with the sata
driver built in or create an initrd image that loads the sata driver.
I do not know what the recommended way to do this in
Arch is. In Slackware there is a 'mkinitrd' package that
includes 'mkinitrd' which is just a shell script. So it would
probably work in Arch. If you had the script the command
would be something like
mkinitrd -c -k kernel-version -m your-sata-driver
What is the exact error message you get when it bombs?
I tried allot of mucking about trying to avoid looking at the kernal, but it took (once I knew where to look) a couple of minutes to select the right driver. Compiling took some time, but it booted fine on the grub as is.
Hi segmantal and Benedict_White.
I have been finally able to diagnose and repair the problem: the right driver is there (sata_nv), but there is a bug/deficiency in the sata_nv driver with kernels 2.6.8+ for NForce3 250 chipsets (e.g., in my Shuttle SN95G5). This has been reported as a bug in some other distributions (e.g., Red Hat) and at the OSDL bug web site. There is a proposed code repair/kernel compilation fix (which I have tried successfully).
This sata_nv driver worked properly with earlier kernels (and I as able to boot with DevFS and udev and all relevant modules with kernel 2.6.7). But things went to pieces when I upgraded to 2.6.8 or 2.6.9. The Red Hat and OSDL bug reports coincide precisely with what I'd been experiencing.
I have submitted this bug with background material to the Arch bug site and you can find the gory details there if you're so inclined.
I am pleased ypu have sorted it out. So it is a problem with new code in the kernel.
Good luck, I have no doubt that the kernel will be fixed, and very soon by comparison to comercial alternatives.