# [solved] could not find root block device

## ch64

Hello.

Could not find root block device at booting.

It's an old install from 2009. I chrooted and updated all packages (system/world) to today's stage which was probably working.

Now with the newest gentoo i need the newest kernel & booting into the original system.

After compiling any 3*.x kernel there it comes to the "couldn't find root block device' error.

So there must be something with the harddisk controller driver.

Kernel 2.6.29-gentoo-r5 was working. So i used that kernel configuration.

Genkernels mrprober & oldconfig did it fine.

I also tried to make a new kernel configuration. By hand. And with genkernel's automatic.

But i cannot boot the kernel image.

Anybody has got an idea?

I tried these kernels: 3.13.6 / 3.12.7 / 3.11.10 / 3.10.7-r1 /

No one is working. 

Here is the kernel configurtation which should work:  http://pastebin.com/vk0caArULast edited by ch64 on Sun Dec 21, 2014 5:49 am; edited 1 time in total

----------

## DONAHUE

your disk controller drivers are out of date, obsolete, and deprecated

boot a minimal install or preferably system rescue cd and run 

```
lspci -k | wgetpaste 
```

 post the url returned

----------

## Tony0945

sounds like a udev problem to me. What's your udev version and type (udev or eudev)? What is your brand or model of disk controller? Is it IDE or SATA?  The kernel defaults have changed since 2009. If a recent system rescur disk boots then it's probably a kernel configuration problem.

----------

## ch64

http://pastebin.com/5k9sTzEW

I have udev 208 installed. But there are updates. atm. i have this emerge fail with portage 2.2.10

The controller is IDE. But i allways had luck with sata drivers.

```

IDE interface: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)

        Subsystem: Acer Incorporated [ALI] Device 011f

00:1f.2 IDE interface: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [IDE mode] (rev 03)

        Subsystem: Acer Incorporated [ALI] Device 011f

```

I'm now updating to udev 212-r1

I thought the udev is coming after the root device is mounted.

edit:

in that configuration file hosted on pastebin i forgot to enable CONFIG_DEVTMPFS=y

but i tried it before with the option and it was the same.

i'm very sorry. of couse i add that, now. but it will not help much, it's another problem.

i'm now running the newest packages updates. takes some time on a celeron 2ghz  :Smile:  2gb ram

----------

## DONAHUE

Have you backed up your personal files to external media? 

it looks like the cd you are using may also be overage. lspci -k should show modules and driver in use as well as component identification. run 

```
fdisk -l | wgetpaste
```

 from the cd. post the url returned. of particular interest: are device names like /dev/sda or like /dev/hda?

sys-apps/portage:  Latest version available: 2.2.8-r1. You have referred to having portage 2.1. Newer packages often require newer portage.

With a good external backup of personal files ( /root and /home), I would attack the kernel problem by:

obtain a System Rescue cd  or System Rescue USB boot the sysresccd/usb to the xfce GUI and network connection. In the terminal window, run 

```
lspci -k | wgetpaste

lspci -n | wgetpaste

fdisk -l | wgetpaste

wgetpaste /proc/cpuinfo

lsusb | wgetpaste
```

 post the url's returned; more will follow.

----------

## ch64

https://forums.gentoo.org/viewtopic-t-987132-highlight-traceback+emerge.html

There was a 2.2.10 .. now i cannot reemerge the 2.2.8-r1 .. i will try quickpgk.

i burn the rescue cd you decribed now.

----------

## DONAHUE

sorry can't read saw 2.1.0 vice 2.2.10; I keep portage stable so 2.2.8-r1; 2.2.10 should be fine

edit: reading the link 2.2.10 may not be fine? But probably is.

----------

## ch64

yes. i can emerge -avuDN world .. but not ... emerge -avu back to the portage version before. there it comes the error described in the link.

also emerge -avu udev etc. doesn't work.  :Sad: 

that error is new until i updated portage today. i have the rescuecd now up. that is a nice cd. i didn't know that. 

wait...i'll post your links.

----------

## ch64

http://bpaste.net/show/196432/

http://bpaste.net/show/196433/

zsh: Input/output error: fdisk

http://bpaste.net/show/196436/

lsusb zsh: Input/output error: lsusb

fdisk and lsusb doesn't work on the rescuecd. but on my gentoo cd 10 i have used a few minutes ago.

ata_piix,pata_acpi, ata_generic are the modules. that is true, because i had these on the old gentoo days on that laptop.

many commands does not work after a few minutes of running that rescuedisk. input/output error. i do a reboot into it.

----------

## DONAHUE

```
parted -l | wgetpaste
```

 maybe as sub for fdisk

maybe an optical disk problem starting

----------

## ch64

parted does not run, too. like fdisk.

i rebooted one time to be sure.

the lspci is working. the manpages of fdisk and parted not.

input/output error.

i can boot up into my gentoo livecd 10 to give you that two line outputs.

----------

## DONAHUE

will gparted work? icon lower left

what options does bios have for hard drive controllers- ahci, legacy ide, ide, raid are common

fdisk result from gentoo 10 would be of interest

----------

## ch64

here is the fdisk and lsusb output from the gentoo cd 10:

http://pastebin.com/bc2VQZRs

http://pastebin.com/CW978JZm

bios... i don't know.. but ahci, ide,, legacy ide.. etc. is in my mind.. sounds familiar.

normally i do have a boot partition.. and swap space is not 21gb.. haha i will shrink that later when the system is running.

when i boot up my old kernel 2.6.29 .. it shows RAID on the disks..

the controllers driver is listing raid.. but i don't know if that old laptop is supporting some raid levels.soft raid, yes i think.

----------

## DONAHUE

I avoid separate /boot as remembering to mount it has been a problem

Are you familiar with pappy's kernel seeds?

It would be good to drop into bios and look at the drive controller mode.

----------

## ch64

I read 'Pappys kernel seeds' a few times.

But i don't know what it is.

I didn't find it in the eix :p

----------

## NeddySeagoon

ch64,

Your SATA controller is in IDE mode.

```
00:1f.2 IDE interface: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [IDE mode] (rev 03)
```

Thats a BIOS setting.  Its intended for one time use by Windows XP users so that they can install the AHCI driver.

Go into your BIOS and fix that. Linux is fine with it and IDE mode is often crippled too.

While you have not been updating your system, nothing makes the /dev/hdX nodes any more for old IDE drives.

They are still supported but under the SCSI and SATA menus in the kernel.

Here's a post of mine from 2007 which you will find helpful.

Seven years on, genkernel gets it right now but you will still need to fix any /dev/hd* references you have in /etc/fstab and grub.conf

----------

## ch64

I  have looked up into the (phoenix) bios. 

i do not like it pretty much, because there are no such options.

but i can tell you: the mainboard chipset only does this IDE mode. i read it much often in the interwebz. (internet  :Smile: )

also i can tell you, that my 2.6.29 is booting with this option. also the livecds.

the chipset which is coming after that in 2006 to 2009 can do other modes. but my chipset does not.

----------

## DONAHUE

Thanks Neddy was looking for the rough guide. Quick Search not producing. Apparently current fdisk, parted, gparted on the sysresccd cannot handle the ich8 ide mode even though the sysresccd can boot it.

----------

## ch64

ah, i've found it.

i can move IDE to AHCI.

i use AHCI now.

yes, normally i have AHCI.. but i did change it.. when the newer kernel weren't booting and forgot to change it back.Last edited by ch64 on Tue Apr 01, 2014 7:25 pm; edited 1 time in total

----------

## DONAHUE

excellent reboot sysresccd, check fdisk works, mount gentoo partitions enter chroot.

----------

## ch64

fdisk works. i'm in the chroot now. i do have a system backup which is working. by the way. (you asked)

the backup works.. the system on it not  :Smile:  i do need the newer kernels because of before 2.6.39 there the CONFIG_DEVTMPFS=y was not there.

thanks NeddySeagoon it was my mistake  :Smile: 

----------

## DONAHUE

```
emerge wgetpaste

eselect kernel list | wgetpaste

eselect profile list | wgetpaste

wgetpaste /etc/portage/make.conf

wgetpaste /etc/make.conf

wgetpaste /etc/fstab

wgetpaste /boot/grub/grub.conf

wgetpaste /boot/grub/grub.cfg
```

 one or the other make.conf may not exist, same for grub's. URL's pls.

----------

## ch64

http://bpaste.net/show/196456/

http://bpaste.net/show/196457/

http://bpaste.net/show/196458/

http://bpaste.net/show/196459/

http://bpaste.net/show/196460/

i do not know why i have my MAKEOPTS so big.. 2 or 3 would be nice.

celeron does only have one core.

edit:

i do have MAKEOPTS="-j2" now.

maybe that was so high while using distcc.

----------

## NeddySeagoon

ch64,

This is both out of date an incorrect.

```
kernel /boot/kernel-genkernel-x86-3.10.7-gentoo-r1 root=/dev/sda1 init=/linuxrc ramdisk=8192 real_root=/dev/sda1 acpi=force rootfstype=ext3 udev noapic doscsi
```

The correct version would have been 

```
kernel /boot/kernel-genkernel-x86-3.10.7-gentoo-r1 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda1 acpi=force rootfstype=ext3 udev noapic doscsi
```

Notice the root=/dev/ram0 to pick up the initrd.  It may even still work.

With modern kernels you only need

```
kernel /boot/kernel-genkernel-x86-3.10.7-gentoo-r1 root=/dev/sda1 acpi=force rootfstype=ext3 noapic doscsi
```

udev and the initrd are assumed.  

To test, at the grub screen, press 'e' for grubs edit mode.  Follow the on screen instructions.

This only changes the copy of grub.conf in RAM.  If your box boots, fix grub.conf on disk.

----------

## ch64

I have removed this ram0 entry on two kernel lines because of i was testing without.

Here on the forum there were many threads describing that it is possible, that it's booting then.

Hey, the line you called: it's not changing anything.

By the way: Normally there it comes: "Loading modules" "Determining root device.

And there are all initram drivers shown.

On my 2.6.29 it is a big list with drivers scrolling down the screen.

On my 3.x.x Kernels its only switching the drivers.. not doing a list. 

It seems like it's "choosing" the right drivers.. But not using any of it. 

So there is the "could not find root blockdevice in . " message and no initrd modules list.

----------

## NeddySeagoon

ch64

```
title=Gentoo Linux 3.13.6 ohne ram0

root (hd0,0)

kernel /boot/kernel-genkernel-x86-3.10.7-gentoo-r1 root=/dev/sda1 init=/linuxrc ramdisk=8192 real_root=/dev/sda1 acpi=force rootfstype=ext3 udev noapic doscsi

initrd /boot/initramfs-genkernel-x86-3.10.7-gentoo-r
```

The title calls for 3.13.6 .. the kernel and initrd load 3.10.7.

Are you sure you are loading the kernel you think you are?

Look at the Gentoo Handbook for grub

----------

## DONAHUE

an alternate

from chroot

```
eselect kernel set 7

make clean

make mrproper

genkernel --menuconfig all
```

 look through the menuconfig, then exit saving the configuration and allow genkernel to finish

Make the first item in grub.conf be

 *Quote:*   

> title genkernel 3.13.6
> 
> kernel /boot/kernel-genkernel-x86-3.13.6-gentoo real_root=/dev/sda1 #acpi=force rootfstype=ext3 noapic doscsi
> 
> initrd /boot/initramfs-genkernel-x86-3.13.6-gentoo

 

reboot

----------

## ch64

NeddySeagoon: That was my mistake. I knew that it's the other kernel. It was just a short boot.

https://ata.wiki.kernel.org/index.php/Ata_piix

I install the kernel, like DONAHUE called me now.

But i don't think that it's running into boot, because of i did it like that a few times before.

----------

## NeddySeagoon

ch64,

Thats how the liveCD kernel is made.

Do you get new errors now?

----------

## ch64

After genkernel --menuconfig all and booting into that kernel.

It's still not functioning. Could not find root block.

I'm pretty sure i have selected my sata driver.  :Sad: 

----------

## NeddySeagoon

ch64,

Please post the error message.  A photo of the kernel panic will do nicely.

----------

## ch64

I'm compiling the world now. When i reboot i make a photo and load it up to my server.

----------

## ch64

http://178.63.132.61/flash/Foto1.JPG

http://178.63.132.61/flash/Foto2.JPG

The initrd modules are not loaded, you see. "loading modules" but no list of loaded modules.

----------

## Tony0945

 *Quote:*   

> kernel /boot/kernel-genkernel-x86-3.10.7-gentoo-r1 root=/dev/sda1 init=/linuxrc ramdisk=8192 real_root=/dev/sda1 acpi=force rootfstype=ext3 udev noapic doscsi 

 

Are you sure it's ext3? Try booting without that command. And look at what might be stopping udev from running, i.e. wrong path, typos. I've never specified the device type. Is ext support built in or modular?

Once the kernel is loaded and in control, it has only it's own code. Grub may have the right driver but it the kernel doesn't, it can't access anything. It looks like you can't get a shell either.

----------

## ch64

I tried with rootfstype=ext4, ext3 .. (it's ext3, for sure)

Then i tried without option.

The support for all ext .. up to ext4 is built in the kernel.

----------

## krinn

ch64,

I cannot help you, as i only see genkernel as a strange beast...

But don't use noapic boot parameter, you add problem to your problem, noapic should only be use if you know your mb/bios have a buggy interrupt controller or a really really old implementation.

----------

## Tony0945

If it's any help, I found this note deep within my intramfs: *Quote:*   

> # If the kernel is handed a mount option is does not recognize, it WILL fail to
> 
> # mount. util-linux handles auto/noauto, but busybox passes it straight to the kernel
> 
> # which then rejects the mount.
> ...

 

example line from one of my machines' grub.conf:

```
title=Gentoo Linux (3.10.25-gentoo)

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-3.10.25-gentoo root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda2 udev

initrd /boot/initramfs-genkernel-x86_64-3.10.25-gentoo
```

I use a separate /boot on the first partition.

----------

## NeddySeagoon

ch64,

Make friends with wgetpast and post your kernel .config file please.

The error has not changed so the kernel is still not seeing your hardware.

----------

## Tony0945

Neddy, edit your last post and then delete this post.  *Quote:*   

> Make friends with wgetpaste

 

----------

## NeddySeagoon

Tony0945,

Thank you for the correction.

----------

## ch64

Here is the kernel config. there are three drivers which could be the harddisk controller.

http://pastebin.com/hZRwXRH4

One example is CONFIG_ATA_PIIX=y i have marked all these three as <*>.

Also i have ext3/4 in the kernel.

----------

## NeddySeagoon

ch64,

```
CONFIG_SYSFS_DEPRECATED=y
```

Thats a boot killer.

```
CONFIG_IDE=y
```

will probably stop booting.  The IDE drivers conflict with the PATA drivers on the SATA menu.

When both are selected, neither will work. To add to the interest, udev won't make any /dev/hd* nodes.

```
CONFIG_SCSI_LOGGING=y
```

is not needed, its a source of logspam.

```
CONFIG_SCSI_LOWLEVEL=y
```

sholud be off.  Its harmless but is only needed if you have real SCSI devices.

You have two showstoppers there.  There may be more that I've missed.

Fix your kernel, boot into the new kernel.  If it still fails, post the error ant the new kernel .config.

----------

## ch64

I removed all that lines, you said. And compiled the kernel, again.

But the error at boot is the same.

Could not find root block. And it's not finding a device /dev/hdX /dev/sdX

I really think, that the newest kernels doesn't support my laptop anymore.  :Sad: 

I normally not being too stupid to make it boot!! really...  :Sad: 

kernel config:

http://pastebin.com/NGmNGdiC

----------

## NeddySeagoon

ch64,

Here is a snippet from my kernel .config file. 

```
# Intel MIC Card Driver

#

# CONFIG_INTEL_MIC_CARD is not set

CONFIG_HAVE_IDE=y

# CONFIG_IDE is not set

#

# SCSI device support

#

CONFIG_SCSI_MOD=y
```

Notice that the IDE drivers are completely missing. 

```
# CONFIG_IDE is not set 
```

hides all the options in that menu.

Your .config shows 

```
# Intel MIC Host Driver

#

 

#

# Intel MIC Card Driver

#

CONFIG_HAVE_IDE=y

#CONFIG_IDE is not set

 

#

# Please see Documentation/ide/ide.txt for help/info on IDE drives

#

CONFIG_IDE_XFER_MODE=y

CONFIG_IDE_TIMINGS=y

CONFIG_IDE_ATAPI=y

CONFIG_IDE_LEGACY=y

# CONFIG_BLK_DEV_IDE_SATA is not set

CONFIG_IDE_GD=y

CONFIG_IDE_GD_ATA=y

# CONFIG_IDE_GD_ATAPI is not set

...
```

This strongly suggests to me that you have not followed the advice at the top of the file

```
# Automatically generated file; DO NOT EDIT.

# Linux/x86 3.13.6-gentoo Kernel Configuration
```

and now you have an illegal kernel .config.

The only solution to that is to throw it away and start from the default state with menuconfig.

When you use menuconfig, the options you choose affect several entries in the .config file.  If you use $EDITOR, you have to adjust all of these options or your .config is illegal.

The build system then does some very add things.

For example  

```
#CONFIG_IDE is not set 
```

turns off the high level IDE code that the low level chipset drivers depend on. Since the high level code is missing, it makes no sense to attempt to build the lower level code for the individual chip sets ... but you nave done just that.

When I asked you to change kernel settings I expected you to use menuconfig to do it.  I'm sorry if I wasn't clear.

menuconfig has a symbol name search function. Press /.

----------

## rhumbliner

fwiw, i encountered this message trying to install gentoo on a system with no hard drive. (i know)

it was a LiveCD 3.10.25

----------

## ch64

For all people who were so nice, to help me  :Smile: 

I have a new Picture with the 3.0.7 pf sources. That not gentoo supported one of source.

Well, it is not booting, it gives the same error. But in a picture i took, you can see well, that the driver for

the harddisk is loaded and the harddisk partitions are found.

Still the big question is, why ... the hell it is not finding the partition neither the disk.

The foto shows exactly the same as the other two. But with another output of the ATA driver.

When i log in with 'shell' there are only three devices mounted in /dev/

But no harddisk!

http://178.63.132.61/flash/Foto.JPG

cu soon my friends.  :Smile: 

NeddySeagoon:

I have followed your instructions. With menuconfig. I did a new config. But not working.

 edit:  Maybe tomorrow i will send in a bug report. This is too strange for me. I have worked with embedded devices for years. Had much mistakes, but such a laptop would be easy compared.

----------

## NeddySeagoon

ch64,

As a get you started, go back to gentoo-sources, genkernel and  genkernel --menuconfig all.

Once you have a kernel that works, you can make a better kernel.

3.0.7 is very old now.

As the kernel can see your partitions but they are not in /dev/

Either you don't have the DEVTMPFS options on in the kernel or you have one or both sys depreciate options on, which kills udev.

As udev is not yet started, my money is on DEVTMPFS as that's what should populate /dev

----------

## Tony0945

I'm assuming you have a reasonably recent sysresuecd or Gentoo LiveCD.

1. Boot into into it and mount your drive as /mnt/gentoo per the handbook.

2. run this code 

```
zcat /proc/config.gz >/mnt/gentoo/root/kernel.config
```

     This step will extract the configuration of the boot cd which obviously will boot.

3. chroot onto your drive per the handbook.

4. rename whatever config you have now to another name (general precaution)

5. emerge -av gentoo-sources, you should get v 3.12.13

6.  run 

```
genkernel --kernel-config=/root/kernel.config  --menuconfig --bootloader=grub all
```

     take the default of anything that comes up from 'make oldconfig'

Boot into the new kernel and continue the zcat etc. process removing hardware you don't have, always retaining a version that boots. You do this by going to 'General Setup->Local Version' and entering a descriptive string, i.e. version <x>.  That will cause a new grub entry for each descriptive string

First get it working. Then optimize.

----------

## ch64

Tony0945, 

I have done that, using the config.gz from the Gentoo LiveCD 11 for kernel gentoo-sources-3.13.6.

It was 'could not find root block'

Also i have made a bug report which was cancled.

They say, i have a misconfiguration. And my driver could be aacraid.

aacraid is a scsi driver. But i have a sata harddisk.

I do not understand very well, where my misconfiguration should be.

All 2.6 kernels long i have used that laptop. Then i didn't use it for a while.

Then no 3.x Kernel did boot.

The answer on the bug tracker was, all 2.6x boot like 3.x.

I really don't know what the cause of the boot problem is.

The bugtracker url is: (maybe useful for someone)

https://bugs.gentoo.org/show_bug.cgi?id=508926

I know, they cancle this 'could not find root block device' error.

----------

## krinn

Hi ch64, i'm the one that told you it's a misconfiguration issue on the bug report.

Your bug report has been cancel, because if kernel 3x couldn't boot what a kernel 2x boot it would have been know already from kernel bugzilla.

So your bugreport doesn't actually report a bug in kernel 3x, just that you are unable to configure it properly.

And the aacraid, is the driver for adaptec sas card, of course you can say it's scsi related if you wish, that doesn't mean you need it.

You only need it if you own such card, and from your lspci, you don't own any ; confirming you have trouble at configuring a kernel with weird options.

```
01:00.0 RAID bus controller: Adaptec AAC-RAID (rev 09)

   Subsystem: Adaptec 5405

   Kernel driver in use: aacraid

```

So, you don't need that driver at all. It was an example, but your lsmod shown aic7xxx aic79xx... that are scsi drivers also for adaptec, also not useful for you. But many other less obvious might be there too.

I'm surprise if you have follow advises given that you still have weird configuration like that, but like i said before, genkernel handling is mystery for me.

You should go with a kernel seed for 3x. And try to follow advises and do not change anything just because you think it might be that, other (like i'm) will get lost on what is your current kernel state.

From your picture we can see sda1 is found, but the error is "sda1 is not a valid root devices"...

Can you provide then result of 

```
fdisk -l
```

edit: forget fdisk part i see you gave it earlier.

At least now kernel see sda partitions, you're closer to success.

----------

## Tony0945

I had a similar problem two weeks ago when updating my drive hardware.  This may be a grub configuration problem. IIRC, what I finally did was boot sysrescuecd, follow gentoo handbook chapeters 4,6,10 to chroot, mount the boot drive (separate boot partition) then while chrooted ran "grub-install /dev/sda" . But for days both grub and grub-install refused to find the boot files.

My drive configuration is boot partition on sda1, swap on sda2, real root ('/') on sda3, no sda4.  I had to edit /etc/fstab because my old drive had a fourth backup partition on sda4 and while I was swapping drives, drive sdb was a different drive. Put a crosshatch (#) in front of any drives or partitions that are at this moment attached. If you run 'grub' rather than 'grub-install', the command "find /boot/grub/stage1" should come back with (hd0,0). If it doesn't, there is a configuration error.  Mine kept coming back with (hd0,2) until I did what I said above in paragraph one. The fstab troubles came later in the boot.

There may be more info here: http://www.supergrubdisk.org/wiki/Howto_Fix_Grub

I'm running legacy grub (0.97).

----------

## ch64

Hi.

I have compiled only that ata_piix. It seems like that this is the driver.

Because i have /proc/partitions filled with partitions.

But in /dev/ there is nothing populated. I have DEVTMPFS=y

Tony0945,

i don't really think that i have a grub error.

----------

## NeddySeagoon

ch64,

If you can see into /dev then grub has done its thing and loaded the kernel and initrd file.

Its possible that you are passing incorrect parameters to the kernel, so the initrd is not used but then you would not have a shell to see into /dev to observe that it was empty.

That means grub looks good.

Do you have MOUNTDEVTMPFS in your kernel?

The option is hidden until you select  DEVTMPFS.

----------

## ch64

For me! it seems like that the initrd isn't loaded.

Normally it puts out a huge list of drivers loaded.

But for me there is only: "loading initrd" but no list...

----------

## NeddySeagoon

ch64,

Post the output of 

```
ls -l /boot
```

so we can see what you have in your /boot

Also post your entire grub.conf file so we can see what you are asking grub to do.

----------

## ch64

http://pastebin.com/wiXQhPJH

http://pastebin.com/5G5kTV2V

On the grub.conf i only use the first entry.

The others didn't work, too.

Hey i'm now on my irc server. irc.it-flash.de #gentoo  :Wink: 

for the history of this thread: it's empty overall. But now i'm online on it.  :Smile: 

That title=Gentoo Linux 2.6.29 is booting. But i have to go in interactive mode and disable udev. Because of no devtmpfs=y in the 2.6.29. (starts with 2.6.32)

----------

## NeddySeagoon

ch64,

Its been a long time since you needed to tell the kernel about the initrd which is what 

```
root=/dev/ram0 init=/linuxrc ramdisk=8192
```

This tells the kernel that the initrd is attached at /dev/ram0, that the init script is called /linuxrc and that the initrd when its decompressed, is in an 8Mb ramdrive.

None of these things is true any more, so for all of your 3.x.x kernels I would expect booting to fail.

----------

## ch64

On my Quadcore PC i'm booting with this: 

```

title=Gentoo Linux 3.10.17

password 12345

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-3.10.17-gentoo root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sdb3 udev doscsi noapic acpi=off rootfstype=ext3 video=uvesafb:mtrr:3,ywrap,1024x768-32@85

initrd /boot/initramfs-genkernel-x86_64-3.10.17-gentoo 
```

It's working like hell.  :Smile: 

----------

## ch64

It is not working on the laptop. And the problem is still :p not solved.

That last posting was only telling you, that you can boot with that root=/dev/ram0 option on newer kernels.

I have stopped working on the machine which is causing the thread, because i have no time and space at this time for more tests.

But with some freetime, i will look after it again.

----------

## Tony0945

Just was looking again at that grub.conf:

 *Quote:*   

> real_root=/dev/sda1

  on all the kernels and *Quote:*   

> title=Win XP
> 
> root (hd0,0)
> 
> makeactive
> ...

 

That looks like you are trying to boot both Linux and XP on the first partition of the first drive. That can't be right. I think when you transfer to the real root it's looking at an NTFS file system and getting confused because it doesn't see a linux file system there. Either that or your Windows chainloader won't work.

----------

## ch64

No. That grub config, WinXP is from an old install. I have partitioned a new, bigger disk.

Now with kernel 3.18.1 it is the same error. could not find root block device in .

When i type in shell and then: mount /dev/sda1 /newroot i get: 

mounting /dev/sda1 on /newroot failed no such file or directory

I can find the two partitions, root & swap in /proc/partitions

So i think i'm getting closer to a solution, here...

A short google brings back the fascination to me. There must be a possibilty to access root.

Somebody has an idea about the error: [i]no such file or directory[/b] when mounting /dev/sda1 on the /bin/ash shell?

update:

nah, the problem is, the device sda1 is not populated into /dev/  ... http://www.gentoo-wiki.info/Acer_Extensa_5220

There i found out that sata ahci is the right driver... i have it compiled in * 

 :Sad: 

update2:

the lsmod is completelly empty. and when i cat the modules.cache file there is no ata driver in it.

also when i modprobe a driver which is in that file like raid10 ... it is not showing in lsmod.

it remains empty!

update3:

One thing was strange.. in the drivers directory, there were no *.ko modules for the ata driver.

So genkernel did not compile what i told it to do in the kernel .config

Now i looked over the version of genkernel.

It's: 3.4.10.906 damn old...

I now install the newest version and will look, if it compiled that drivers.

----------

## ch64

Yehaah!

Now after about 1 year of sometimes looking at it, i have solved the error.

I had to update to the neweset genkernel version.

Also i have the real_root=UUID=UUID in the grub.conf

thanks for all your help.

----------

