# [gentoo-dev-sources2.6.3-r1]VFS Cannot open root device hda1

## Stolz

Hola foro.

Acabo de pasar del kernel 2.6.1 al 2.6.3 (gentoo-dev-sources-2.6.3-r1) y confiando en el "make oldconfig" he sobreescrito el .config que tenia. Ahora, al arrancar me encuentro con el siguiente problema, a mitad de arranque, despues de cargar correctamente el ACPI, USB,... me sale el siguiente kernel panic:

```
VFS Cannot open root device "hda1" or hda1

 Please append correct "root=" boot option

 Kernel panic: VFS: Unable to mount root fs on hda1

```

 Mis particones :

```
 # <fs>          <mountpoint>    <type>

/dev/hda1       /               reiserfs

/dev/hda2       /home           reiserfs

/dev/hda3       /opt            reiserfs

/dev/hda4       none            swap
```

Mi configuracion del Grub (la del kernel 2.4.x es identica a la del 2.6.x, pero solo la 2.6.x da el Kernel Panic)

```

# cat /boot/grub/grub.conf

... 

 title = Gentoo Linux Kernel 2.4 Frame Buffer

root (hd0,0)

kernel /boot/bzImage.2.4.22 root=/dev/hda1 video=vesa:ywrap,mtrr vga=0x318 hdc=scsi

title = Gentoo Linux Kernel 2.6

root (hd0,0)

kernel /boot/bzImage.2.6.3 root=/dev/hda1

```

Mi chipset

```
# lspci | grep IDE

0000:00:09.0 IDE interface: nVidia Corporation nForce2 IDE (rev a2)
```

Como veis tengo el soporte del chipset integrado en el kernel

```
# cat .config | grep AMD

CONFIG_BLK_DEV_AMD74XX=y
```

Mi configuracion de los IDE, creo que no me dejo nada de los habituales Device Drivers ( ATA/ATAPI/MFM/RLL support,  Include IDE/ATA-2 DISK support, Enhanced IDE/MFM/RLL, disk/cdrom/tape/floppy support , PCI IDE chipset support,  Generic PCI bus-master DMA support, etc)

```

# cat .config | grep IDE

CONFIG_IDE=y

CONFIG_BLK_DEV_IDE=y

CONFIG_BLK_DEV_IDEDISK=y

CONFIG_IDEDISK_MULTI_MODE=y

CONFIG_BLK_DEV_IDECD=y

CONFIG_IDE_TASKFILE_IO=y

CONFIG_IDE_GENERIC=y

CONFIG_BLK_DEV_IDEPCI=y

CONFIG_IDEPCI_SHARE_IRQ=y

CONFIG_BLK_DEV_IDEDMA_PCI=y

CONFIG_IDEDMA_PCI_AUTO=y

CONFIG_BLK_DEV_IDEDMA=y

CONFIG_IDEDMA_AUTO=y
```

El sistema de ficheros tiene soporte incluido en el kernel, asi es que no creo que ese sea el problema

```
# cat .config | grep REISER

CONFIG_REISERFS_FS=y
```

Las opciones habituales como el /dev, /proc,Virtual memory file system support, Device Drivers -> Character devices  -> Unix98 PTY Support, File systems   -> Pseudo filesystems -> /dev/pts filesystem, etc ... estan activadas con soporte nativo, no como modulos

```

# cat .config | grep DEVFS

CONFIG_DEVFS_FS=y

CONFIG_DEVFS_MOUNT=y

# cat .config | grep 98

CONFIG_UNIX98_PTYS=y

CONFIG_UNIX98_PTY_COUNT=256

...

```

Aunque mi sistema ha sido particionado integramente en Linux, por si acaso he activado tambien  en el Kernel al siguiente opcion:

File systems  --->Partition Types  --->[*]   Windows Logical Disk Manager (Dynamic Disk) support

He encontrado mas gente con el mismo problema, pero nadie ha puesto aun ninguna solucion que funcione:

https://forums.gentoo.org/viewtopic.php?t=141626

https://forums.gentoo.org/viewtopic.php?t=140920

https://forums.gentoo.org/viewtopic.php?t=139673

https://forums.gentoo.org/viewtopic.php?t=128813

https://forums.gentoo.org/viewtopic.php?t=121323

https://forums.gentoo.org/viewtopic.php?t=125374

https://forums.gentoo.org/viewtopic.php?t=109688

¿Se me olvida algo? ¿Que puede haber cambiado de la 2.6.1 a la 2.6.3 que ya no me funciona? ¿A alguien mas le ha pasado? ¿Alguna sugerencia?

Gracias de antemano.

Un saludo.

----------

## K@mik@ze

Buenas, yo tengo actualmente el kernel 2.6.3-r2 y al final de la compilación me mostró una serie de parámetros que debía añadir al grub para arrancar que son estos:

```

title Gentoo Linux

root (hd0,4)

kernel (hd0,4)/boot/kernel-2.6.3-gentoo-r2 root=/dev/ram0 real_root=/dev/hda5 init=/linuxrc vga=0x317 splash=verbose

initrd (hd0,4)/boot/initrd-2.6.3-gentoo-r2

```

Con estas opciones me arranca perfectamente, puedes probar a ver si con estas opciones te arranca.

----------

## Stolz

Bueno, gracias por contestar, probare a ver, aunque no entiendo porque arrancas desde un disco virtual en la RAM. Además, nunca me ha gustado el initrd de redhat para arrancar, pero si es la unica opcion de arrancar esta version habra que probarlo.

Saludos.

----------

## Gentoosiastix

Hola... podrias poner exactamente como lo solucionaste, porque estoy en el mismo caso y deespues de unas cuantas horas y mucho buscar y leer por los foros no consigo que "rule"

me da un kernel panic y dice que no puede leer/montar la particion "root" me he asegurado de que todos los sistemas de archivo que uso esten compilado.. basicamente "ext3" que es el que uso en ambas particiones (boot, root) el kernel en cuestion es 2.6.3-r2

a ver si a alguien se le ocurre algo  :Rolling Eyes:   :Rolling Eyes: 

----------

## Stolz

Bueno, pues hasta hace 5 minutos no lo habia solucionado  :Wink: .

Al final me he hartado de buscar y de las soluciones "extrañas" del initrd y he activado soporte en el kernel de casi todas las opciones relacionadas con las particiones (File systems  ---> Partition Types  --->[*] Advanced partition selection --> todas).

 Al ver que me lo ha solucionado he ido quitandolas una a una para ver cual es que la que me habia dejado, y al final ha resultado que para evitar el problema hay que dejar activada la opcion

 [*]   PC BIOS (MSDOS partition tables) support

y no la que habia comentado en el promer post.

Un saludo.

----------

## jBilbo

Hola Stolz, sólo 2 cosas:

1.- Eres un ejemplo de cómo se tiene que plantear un problema en un post, genial  :Smile: 

2.- Siento no haber visto antes tu post para contestarte, me pasó eso la primera vez que probé el kernel 2.6.x, puse mi solución aquí:

https://forums.gentoo.org/viewtopic.php?p=751752&highlight=#751752

que coincide exactamente con la tuya.

Saludos,

----------

## Stolz

Bueno, es una pena que no encontrase ese post con la busqueda, me hubiese ahorrado mucho tiempo.

Lo que si he encontrado es este otro en el que habia bastante gente igual que yo. Ya he puesto la solución.

Espero que el motor de busqueda encuentre este post para ayudar a mas gente.

Saludos

----------

## Gentoosiastix

me pongo con ello de nuevo, precisamente ese es el problema el dichoso "initrd" por muchas busquedas que he hecho, no consegui nada hasta ahora.

 gracias stolz

----------

## K@mik@ze

 *Stolz wrote:*   

> Bueno, gracias por contestar, probare a ver, aunque no entiendo porque arrancas desde un disco virtual en la RAM. 

 

Es que he probado a quitarle tanto la línea del initrd y los otros parámetros del kernel y me sale este mensaje:

```

mount: mount point /proc/bus/usb does not exist

Some local filesystem failed to mount           (!!)
```

y tengo esto en mi fstab:

```
none                    /proc/bus/usb   usbfs      defaults      0 0
```

y el caso es que el directorio ese existe y justo debajo de donde da el fallo me pone:

```
Mounting USB device filesystem usbfs...              (ok)
```

¿Qué es lo que tengo mal?

----------

