# [Sistema.Ficheros] Mi Gentoo No Arranca (Abierto)

## ZaPa

Hola a todos que tal estan?, hace un tiempo que tenia este problema, pero por falta de tiempo no podia ponerme con mi bonito pc de sobremesa.. y el pobrecito estaba abondonado, pero bueno, ahora me he vuelto a poner con él de nuevo, y lo dejé como ahora está... con una instalación de gentoo recien hecha pero que no conseguí arrancarla...veamos... al intentar arrancar me aparece esto:

```

........

.........

* Mountin devpts at /dev/pts ...

* Checking root filesystem ...

fsck.ext3: No such file or directory while trying to open /dev/sda3

/dev/sda3:

The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an ext2 filesystem (and not swap or ufs or something else), then the superblock is corrupt,and you might try running e2fsck with an alternate superblock:

    e2fsck -b 8193 <device>

* Filesystem couldn't be fixed :(

Give root password for maintenance

(or type Control-D to continue):

```

Por si les sirve de ayuda, he aqui mi fichero /etc/fstab:

```

/dev/sda1     /boot            ext2          defaults,noatime 1 2

/dev/sda2     none            swap          sw                     0 0

/dev/sda3     /                  ext3           noatime             0 1

/dev/cdrom   /media/cdrom   auto       noauto,user        0 0

shm             /dev/shm          tmpfs      nodev,nosuid,noexec

```

El chipset que controla los dispositivos Sata es el siguiente:

```

Silicon Integrated System [SiS] 182 SATA/RAID Controller (rev 01)

```

El cual lo tengo en el kernel marcado para su soporte.

¿Alguna idea?

Espero respuestas.

Saludos.

----------

## i92guboj

Si entras en modo mantenimiento (si es que es posible) puedes ver las particiones con fdisk -l, lo cual quizás te de una idea del problema.

----------

## ZaPa

Hola de nuevo y gracias por tu ayuda.

He iniciado con el live cd y he introducido fdisk -l, me responde esto:

```

Disk /dev/sda: 500.1GB, 500107862016 bytes

255 heads, 63 sectos/track, 60801 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

  Device          Boot          Start             End         Blocks           Id        System

/dev/sda1          *                1               33            265041        83          Linux

/dev/sda2                           34              546          4120672+     82         Linux Swap/Solaris

/dev/sda3                           547             60801      483998287+  83        Linux

```

¿Alguna idea?

Muchas gracias.

Saludos.

----------

## i92guboj

Bueno, la partición existe... Eso quiere decir que, o bien el tipo de sistema de ficheros que estás usando para montarla es incorrecto, o bien está dañado.

Si el problema es el primero, entonces todo debería andar si usas el tipo correcto en la línea correspondiente de tu fstab.

Si el problema es el segundo la cosa es más complicada, y podrías perder datos. Tendrías que usar fsck para intentar repararlo, pero eso podría terminar de corromperlo todo   :Rolling Eyes: 

----------

## johpunk

eso mismo me paso a mi revisa tu fstab, al parecer pusiste como particion ext3 una particion que no existe, lo digo pq a mi me paso y con tan solo modificar mi fstab lo acomode  :Very Happy:  saludos!

----------

## ZaPa

Hola de nuevo a todos..

Despues de multiples investigaciones.. creo que el problema es de la particion /boot.. ya que al montar /dev/sda3 en /mnt/gentoo con el live cd, ya tenia dentro una carpeta llamada boot.. lo cual eso esta mal,no? ya que mi particion boot es /dev/sda1 y aun no habia sido montada por mí...

Entonces creo que puede ser este el problema, he borrado esa carpeta /boot que tenia en /dev/sda3, y he instalado grub de nuevo en /dev/sda1 y en princpio todo bien... ahora le he dicho en el grub.conf que el kernel esta en (hd0,0) real root=/dev/sda3 y me dice que no encuentra la imagen del kernel :S que extraño..

Me aparece el mensaje diciendome, que el fichero de la imagen del kernel no existe y la pantalla a rallas.. como en blanco y negro.. esto porqué ocurre?

Alguna idea?

Saludos.

----------

## Inodoro_Pereyra

 *ZaPa wrote:*   

> Hola de nuevo a todos..
> 
> Despues de multiples investigaciones.. creo que el problema es de la particion /boot.. ya que al montar /dev/sda3 en /mnt/gentoo con el live cd, ya tenia dentro una carpeta llamada boot.. lo cual eso esta mal,no? ya que mi particion boot es /dev/sda1 y aun no habia sido montada por mí...
> 
> Entonces creo que puede ser este el problema, he borrado esa carpeta /boot que tenia en /dev/sda3, y he instalado grub de nuevo en /dev/sda1 y en princpio todo bien... ahora le he dicho en el grub.conf que el kernel esta en (hd0,0) real root=/dev/sda3 y me dice que no encuentra la imagen del kernel :S que extraño..
> ...

 

Zapa, la pantalla rayada y en blanco y negro se produce por tener mal especificada la línea que apunta a la imagen de fondo en tu grub.conf...

La carpeta boot es el punto de montaje para la partición en donde decidas copiar tu kernel y donde irá a parar grub y todos sus archivos. /boot debe existir como entrada de directorio dentro del arbol de la unidad raíz. Ya desde el comienzo tenés un error conceptual en ese punto. 

Puede que tu /boot/grub/device.map esté nombrando de otra forma al disco que te interesa, que el kernel no tenga soporte para ext2/3 (no se me ocurre como te podría haber pasado pero que se puede, se puede), o que simplemente se esté poniendo a funcionar el disco con el driver IDE genérico en el kernel antes que con el Serial ATA correspondiente...

Que no encuentre la imagen del kernel es normal, deberías especificar:

```
kernel (hd0,0)/boot/kernel
```

Donde "boot" es un symlink a "." o bien, que debería funcionar:

```
kernel (hd0,0)/kernel
```

Espero que te sirva de algo.

Salud!

----------

## AnimAlf

 *Inodoro_Pereyra wrote:*   

> 
> 
> Que no encuentre la imagen del kernel es normal, deberías especificar:
> 
> ```
> ...

 

Puede indicarlo así también:

```
root (hd0,0)

kernel /boot/kernel root=/dev/sda3
```

en la ruta del kernel /boot es el enlace simbólico (si existe) No haría falta.

----------

## ZaPa

Hola de nuevo a todos y muchisimas gracias por sus respuestas.

Veamos..

Ahora, la particion sda1 es la boot, y en la carpeta boot de sda3 se debe automontar sda1, ya que en el fstab asi lo tengo especificado...

Si no monto /dev/sda1 en /mnt/gentoo/boot en la carpeta boot no ahi nada.. hasta ahi correcto,no? debe de ser asi,no?

Y en el grub.conf, lo tengo como vosotros me decis:

(hd0,0)kernel=/boot/imagen-del-kernel real-root=/dev/sda3

Y me dice que no encuentra la imagen del kernel :S :S .

El soporte para ext2 y ext3 esta activado.. y la particion sda1 (la de boot) es ext2, y sda3 (la raiz) ext3..

Y en teoria tambien esta en el kernel, seleccionado el driver para el sata correspondiente a mi chipsets......

¿Tengo bien estructurada la particion boot? ¿debe de ser como yo la he puesto?

Saludos.

Muchas gracias por su ayuda.

Espero respuestas.

----------

## Eleazar Anzola

Otro más para el monton del grub ja ja ja ....

Ok dejame explicar algo que a muchos nos ha pasado y despues de tanto batallar le damos solución pero se nos olvida documentar....   :Embarassed: 

Si le damos un ls al /boot montado deberia aparecer algo similar

#ls /boot

boot

fbsplash-livecd-2007.0-1024x768

grub

initramfs-genkernel-x86-2.6.25-gentoo-r6

initramfs-genkernel-x86-2.6.26-gentoo

kernel-genkernel-x86-2.6.25-gentoo-r6

kernel-genkernel-x86-2.6.26-gentoo

lost+found

System.map-genkernel-x86-2.6.25-gentoo-r6

System.map-genkernel-x86-2.6.26-gentoo

Si nos fijamos hay un boot que es un vulgar link ¿A donde apunta? sencillo no es al /boot ni al /boot/boot sino al / directamente.... ujuummmmm alli esta el detalle del asunto ¿Por que apunta al / ? sencillo porque al iniciar el grub va a buscar el raíz pero no del root sino del boot ¿Por que hacen eso? aun no me lo explico ó no me he dedicado a buscar la razón del asunto.

Si potr algun motivo borraste ese enlace entonces comienza el calvario del paciente con los sintomas que mencionas a lo largo del post.

¿Solución?

Sencillo (ja ja ja ja ja ja si despues de unos cuantos días de trasnocho)

arranca desde un livecd monta tu partición boot donde mejor te parezca, verifica que todo lo que debe estar alli esta y si tienes el link del boot borralo y crealo nuevamente, peeeeero con el detallito de apuntarlo al raiz (no importa donde este el raiz ahora solo apuntalo alli).

```
ln -sf / /donde_quiera_que_este_montado_tu_boot/boot
```

ó si prefieres 

```
cd  /donde_quiera_que_este_montado_tu_boot

ln -sf / boot

```

----------

## opotonil

En mi caso "boot" apunta a si mismo:

```

$ ls -l /boot/

...

lrwxrwxrwx 1 root root       1 mar 16 19:02 boot -> .

...

```

y no recuerdo haberlo modificado nunca.

Salu2.

----------

## AnimAlf

utilizas real-root como si estubieses utilizando un ram-disk en el arranque. Sólo root  :Wink: 

----------

## ZaPa

Hola de nuevo a todos...

Aqui sigo con esto... y bueno.. lo del tema del arranque del boot, ya lo he solucionado.. como me ha dicho, Eleazar Anzola, he creado un symlink de /boot a la particion ráiz / y ya se ha solucionado esto.

Ahora.. pues sigo con el problema de antes...

Al intentar arrancar me aparece el siguiente mensaje:

```

* Checking Root Filesystem ...

fsck.ext3: No such file or directory while trying to open /dev/sda3

/dev/sda3:

The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an ext2 filesystem.....

```

Veamos... /dev/sda3 es ext3 no ext2...  y segun muestra en el mensaje es que no puede abrir /dev/sda3....

¿Porque? he llegado a seleccionar TODOS los modulos para el soporte de sata, hasta el generico esta activado y esto sigue sin funcionr.. y con el livecd de gentoo puedo montar y desmontar /dev/sda3 las veces que quiera..

Al mostrar el mensaje, me da la opcion de introducir la password de root y poder utilizar bash para diagnosticar problemas y demas.. bueno.. pues, lo hago, e intento hacer un mount /dev/sda y veo que no ahi ningun nodo con el nombre sda... ni tampoco con hda.. osea, que para el kernel el disco duro no existe :S.. ni como serial ata ni emulacion ide ni nada de nada.

¿Qué puedo hacer?

Muchas gracias.

Saludos.

----------

## Eleazar Anzola

Estimado te falta real_root=/dev/sda3

PD:

De todas maneras no estaria demas que hicieras un e2fsck -c /dev/sda3 (Esto tarda un poco pero corrige algunos defectos).

----------

## ZaPa

Hola de nuevo y gracias por sus respuestas..

Veamos... en mi grub.conf, el arranque tambien lo tengo seguido de la linea: real_root=/dev/sda3, eso ya lo tengo puesto.

He hecho un e2fsck como me has dicho.. ha tardado bastante tiempo y parece que ha reparado algo ahi... pero esto sigue igual.

Sigo sin poder arrancar mi gentoo.. me dice lo mismo que no puede abrir /dev/sda3,

¿Alguna idea?

Muchisimas gracias.

Saludos.

----------

## Coghan

Da la impresión que andas algo confundido sobre la configuración de grub. Vuelve a repasar en el Handbook esta parte, sobre todo las diferencias entre compilar el kernel a mano o con genkernel, el grub.conf para ambos es diferente.

 *ZaPa wrote:*   

> (hd0,0)kernel=/boot/imagen-del-kernel real-root=/dev/sda3 

 

Esta línea no tiene el menor sentido, de entrada debe comenzar con kernel y no con (hd0,0), para decirle a grub donde encontrar el núcleo, debería ser:

kernel (hd0,0)/kernel-versión root=/dev/sda3

kernel le indicas a grub que es línea es para saber donde encontrarlo

(hd0,0) Le indicas en que partición se encuentra

/kernel-versión el nombre del archivo de tu kernel tal cual si /boot tiene partición separada, el sabrá que debe buscarla aquí porque se lo hemos indicado como (hd0,0), si por el contrario no has separado boot y lo tienes en la misma partición raiz debes dejarlo de esta manera /boot/kernel-versión

root=/dev/sda3 Si has compilado a mano o root=/dev/ram0 real_root=/dev/sda3 init=/linuxrc si has compilado con genkernel, en este caso debes añadir una línea más para indicarle donde está la initram, del tipo initrd (hd0,0)/initramfs-genkernel-versión

Pega tu grub.conf completo para poder localizar mejor donde tienes el problema.

----------

## ZaPa

Hola de nuevo a todos y gracias por su interés y ayuda.

Veamos, aqui os facilito mi grub.conf:

```

default 0

timeout 3

title=Gentoo Linux (:=

root (hd0,0)

#Ruta de la imagen del kernel

kernel /boot/vmlinuz-2.6.24-gentoo-r3 root=/dev/sda3

```

----------

## Coghan

Parece que tu grub es correcto y el simple para poder iniciar, deduzco que has compilado el kernel a mano y no con genkernel. Confirma este punto por favor.

He visto a lo largo del hilo que has estado borrando el directorio /boot, ¿puedes listar el contenido del mismo por si te falta algo?.

----------

## ZaPa

Hola de nuevo.. lo que es el arranque del kernel lo hace perfectamente....

Hasta que llega al punto de montar los ficheros de root... como no encuentra el disco duro SATa /dev/sda3 no lo puede montar y ahi se queda estancado..

Listado del directorio /boot:

ls -l:

```

System.map -> System.map-2.6.24-gentoo-r3

System.map-2.6.24-gentoo-r3

boot -> /

config -> config-2.6.24-gentoo-r3

config-2.6.24-gentoo-r3

grub

lost+found

vmlinuz -> vmlinuz-2.6.24-gentoo-r3

vmlinuz-2.6.24-gentoo-r3

```

¿Alguna idea?

Muchisimas Gracias.

Saludos.

----------

## Coghan

 *ZaPa wrote:*   

> 
> 
> ```
> boot -> /
> ```
> ...

 

aquí tienes el problema, boot debe enlazar a si mismo, debe estar así:

```
boot -> .
```

Esto es así para poder ser accesible, tengas o no separado /boot en otra partición.

Para solucionarlo haz 

```
ln -s . boot
```

o también puedes dejar tu línea kernel en el grub.conf así: 

```
kernel /vmlinuz-2.6.24-gentoo-r3 root=/dev/sda3 
```

----------

## ZaPa

Hola de nuevo y gracias por su ayuda.

Ya he modificado el enlace simbolico de boot, y ya he hecho que apunte asi mismo..

pero de nuevo.. el maldito mensajito que dice que no puede abrir la particion /dev/sda3... es como si los drivers sata no los cojiera.. pero si los tengo activados.... TODOS.. incluso el generico por si no encontrará el apropiado.

```

* Checking Root Filesystem ...

fsck.ext3: No such file or directory while trying to open /dev/sda3

/dev/sda3:

The superblock could not be read or does not describe a correct ext2

filesystem.  If the device is valid and it really contains an ext filesystem (and not swap or ufs or something else), then the superblock

is corrupt, and you might try running e2fsck with an alternate superblock:

    e2fsck -b 8193 <device>

```

Pero claro.. /dev/sda3 no es EXT2.. si no EXT3... asi que no tengo ni idea que puedo hacer para poder mi gentoo en mi sobremesa :S.

Y no creo que sea la particion /dev/sda3 que este corrupta.. ya que con el live cd minimal de gentoo, puedo montar/desmontar, escribir en esa partición sin ningún problema.

No se si tendrá algo que ver.. pero tambien me muestra un aviso con udevd al intentar arrancar gentoo:

```

* Starting udevd . . .

udevd[985]: init_udevd_socket: error getting socket: Adress familty not supported by protocol

error initializing udevd socket

udevd[985]: main: error initializing udevd socket

```

¿Alguna idea? 

Muchas gracias.

Saludos.

----------

## Coghan

Comprueba si tienes habilitado ext3 en tu kernel y que no esté como módulo:

```
File systems  --->

     <*> Ext3 journalling file system support 
```

Confirma tambíen tu driver SATA, también que no esté como módulo:

```
Device Drivers  --->

      <*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --->

           <*>   Silicon Image SATA support
```

----------

## ZaPa

Hola de nuevo y gracias por su ayuda.

Veamos.. el soporte para ext3 esta correctamente marcado con (*) en el kernel, al igual que el driver SATA de mi chipset.

Y bueno.. esto sigue igual... no sé que puede ser.. el error de udevd que he posteado arriba, tiene algo que ver??

Bueno y otro dato que facilito es la version de mi kernel:

```

gentoo-sources-2.6.19-r5

```

¿Alguna idea?

Muchas Gracias.

Saludos.

----------

## Coghan

Tienes razón, no me había dado cuenta de esto, revisa esto en tu kernel:

```
Networking  --->

  Networking options  --->

    <*> Unix domain sockets 
```

Ya puestos también puedes probar con una versión más actual del kernel.

----------

## ZaPa

Bueno.. creo que he metido la pata un poquito más.. je je...

He borrado totalmente el directorio /usr/src.. y he vuelto a bajar un nuevo kernel, he creado el enlace simbolico y demás... y ahora, hago un make menuconfig para seleccionar todo lo necesiario, y al intentar seleccionar los drivers para el chipset SATA de mi pc, en 

Device Drivers ->

 Serial ATA (prod) and Parallel ATA (experimental) drivers ->

Selecciono Serial ATA (prod)...... pero entro dentro de la seccion y aparece como bloqueada.. no aparece ningun elemento ni nada, entonces no puedo seleccionar el driver para mi chipset SiS..

Le doy a Help.. y me aparece:

```

Symbol: ATA [=y]

Prompt: Serial ATA (prod) and Parallel ATA (experimental) drivers

   Defined at drivers/ata/Kconfig:5

   Depends on: HAS_IOMEM && BLOCK && (!M32R && M68K || BROKEN) && (!SUN4 || BROKEN)

Location:

 -> Device Drivers

Selects: SCSI..

```

¿De que depende esto para poder seleccionar el chipset de mi controladora SATA?

Saludos.

----------

## Coghan

Revisa esto:

```
General setup  --->

    [*] Prompt for development and/or incomplete code/drivers 
```

----------

## ZaPa

Hola de nuevo..

No tenia marcada esa linea.. pero la he marcado y sigo sin poder ver los drivers para controladoras de SATA.

¿Alguna idea?

Muchisimas Gracias.

----------

## Coghan

¿Has instalado las gentoo-sources con emerge -avD gentoo-sources? es extraño que esto no ten venga habilitado.

Las otras dependencias son para BLOCK, estas son las mias para las gentoo-sources-2.6.25-r7:

```
-*- Enable the block layer  --->

    --- Enable the block layer

    [ ]   Support for tracing block io actions

    [ ]   Block layer SG support v4 (EXPERIMENTAL)

    IO Schedulers  --->

        < > Anticipatory I/O scheduler

        <*> Deadline I/O scheduler

        <*> CFQ I/O scheduler

         Default I/O scheduler (CFQ)  --->
```

Para la CONFIG_JAS_IOMEM ahora mismo no encuentro donde se activa en menuconfig, pero se que la tengo activada:

```
cat .config |grep IOMEM

CONFIG_HAS_IOMEM=y

```

----------

## ZaPa

SIIIIIIIIIIIII !!!!!!!!!!!!

PORFIIIIIIIIIIIIIIIN!!!!!!!!!!!!!!!!!!!!!!!

Porfin, ha arrancado.. veamos..

Para poder seleccionar los drivers SATA de mi chipset, me faltaba seleccionar todo lo referente a Bus/PCI.. activando la opcion del soporte Bus/PCI y: 

```

General setup  ---> 

    [*] Prompt for development and/or incomplete code/drivers

```

ya he podido seleccionar de nuevo los drivers para mi controladora SATA.

LA SOLUCIÓN... (LO MÁS IMPORTANTE) !!!!

Pues la solución a sido activar en:

```

Networking ->

 [*] Unix Domain Sockets

```

Ya qué no tenia esto activado y udevd no iniciaba y no podia reconocer los discos duros ni nada...

Asi que muchas gracias a todos en especial a Coghan.. de verdad man muchas gracias por todas tus molestias..

Ahora voy a ver si instalo kde y demás je je  :Smile:  .

Ahora os cuento.

Saludos y muchisimas gracias.

----------

## ZaPa

Bueno.. me han surgido otros problemitas.. pero he decidido abrir otro hilo para la mayor organización del foro.. je je.

He aqui el enlace del nuevo problemita por si quereis ayudar (je je).

https://forums.gentoo.org/viewtopic-p-5179593.html#5179593

Cambio el titulo del post por solucionado.

Muchas gracias.

----------

