Tabla de particiones y MBR dañados[SOLUCIONADO]

Hola chicos,

Me he metido en una gorda y no se salir de ella. Ayer por la mañana instalado el SP1 de Windows 7 tuve que marcar la particion de Windows como activa. Despues de reiniciar GRUB habia desaparecido y solo arrancaba Windows, ademas, las dos particiones de openSUSE habian desaparecido(/ y /home).

Arranque desde un livecd de ubuntu y ejecute el programa testdisk, me encontro las particiones y pulse guardar. No consegui reinstalar el grub, asi que volvi a instalar opensuse, pero esto no resolvio nada, al arrancar el PC me dice que no se ha detectado ningun sistema operativo.

Luego pense que tal vez instalado ubuntu se repararia el MBR, pero es que el cd instalador de ubuntu ni siquiera lee la tabla de particiones.

Haciendo un fdisk -l obtengo:
ubuntu@ubuntu:~$ sudo fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Device Boot Start End Blocks Id System
/dev/sda1 1 36 289136 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 37 1275 9951232 83 Linux
/dev/sda3 1276 13433 97659128+ 7 HPFS/NTFS
/dev/sda4 13434 38914 204676132+ f W95 Ext'd (LBA)
/dev/sda5 13434 14649 9767456 83 Linux
/dev/sda6 14650 38670 192948648 83 Linux
/dev/sda7 38671 38802 1052240 82 Linux swap / Solaris

Disk /dev/sdb: 4018 MB, 4018143232 bytes
124 heads, 62 sectors/track, 1020 cylinders
Units = cylinders of 7688 * 512 = 3936256 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0002ba0b

En /dev/sda5 esta opensuse y en /dev/sda6 esta /home.

No se que hacer :cautious:

Perdonen por los acentos, pero inicie con la version inglesa del teclado.

Gracias por vuestra ayuda.
 
Entiendo que ya intentaste volver a cargar el grub desde la linea de comandos y no resultó.
Al instalar Ubuntu, no te reconoce los discos, pero pero si corres Ubuntu desde el CD, el gparted te los reconoce?

Cuando el Grub se pone rebelde lo mejor es utilizar Super Grub Disk o Rescatux

Comentanos.

Saludos
 
Hola hispalis

He intentado todos los métodos que he encontrado en internet(incluso con supergrub disk) y nada. gparted de ubuntu sólo encontraba /dev/sda y lo marcaba como "unlocatted", si no recuerdo mal. Para mi que es la tabla de particiones que está dañada.

Ha dado la casualidad que el instalador de openSUSE sí detectaba las particiones, así que he formateado la partición donde estaba instalada openSUSE y mantenido la /home. Después he observado en el resumen de instalación que la casilla "instalar grub en el MBR" estaba desactivada, así que la he activado e instalado de nuevo openSUSE. Esto arregló el problema.

Ahora sólo me falta recuperar la partición de Windows que todavía anda en el limbo. Pero creo que esto no resultará difícil.

En fin, después de 24 horas pegado al ordenador al menos pude hacer una instalación limpia.

Saludos :)
 
No se que pasa con el SP1, que solo hace que crear problemas.
Si desde SUSE puedes ver la partición de windows intenta recargar de nuevo el grub de nuevo a ver si lo reconoce.
Si la partición la reconoce pero el grub no, con el CD de Windows, sal a una linea de comandos y fija el boot con el comando fixboot(esto también lo hace Super Grub).
Otra opción desde el mismo CD, es 'hacer una reparación de inicio'.

A ver si te sirve alguna de estas opciones.

Saludos
 
le ha pasado a mas gente esto despues de actualizar el SP1? me estoy acojonando, me da a mi que solo voy a instalar linux en mi pc....

como lo has solucionado al final?
 
Hola hispalis,

Esto es un poco lioso porque cada cosa detecta lo que quiere. En resumen:

LiveCd de ubuntu:
- Detecta las particiones Linux y me deja montarlas.
- NO detecta partción Windows.
- Gparted dice que no existe tabla de particiones. Lo único que me muestra es una única partición (/dev/sda) sin asignar.

openSUSE:
- Detecta particiones Linux y me deja montarlas.
- El particionador de Yast me dice que no es capaz de leer la tabla de particiones, pero aún así me muestra una lista de particiones:


La /dev/sda3 supuestamente es donde está Windows 7. La partición /dev/sda4 de 1kiB no sé que será, pero estoy seguro que la información que muestra es incorrecta :S

Y luego está testdisk, que dice lo siguiente:


He intentado montar la partición de Windows, pero da error:
Código:
alex@linux-t1be:~> sudo mount -t  ntfs /dev/sda3 /windows
Unexpected clusters per mft record (-1).
Failed to mount '/dev/sda3': Argumento inválido
The device '/dev/sda3' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?

Amos, todo un berengenal. Al menos lo más importante está solucionado: que funcione openSUSE. Al fin y al cabo Windows sólo lo usaba para fotografía, y con Virtualbox creo que me las podré apañar.

danistov lo he solucionado como he comentado: instalando de nuevo openSUSE y sobreescribiendo el MBR. Y suerte que tengo openSUSE, porque Ubuntu directamente quería formatear el disco entero.

El caso es que para instalar el SP1 tenía que marcar "como activa" la partición de Windows. Esto provocó que sólo arrancara Windows y, además, desaparecieron las particiones de openSUSE. Desde un liveCD utilicé "testdisk" para recuperarlas y entonces fue cuando se lio gorda, pues ya no podía ni arrancar Windows.

Saludos.
 
Kikos, yo me fío mas del testdisk, y ese te dice que la partición esta ahí. Intenta solucionarlo como te dije antes, con el CD de Windows.
Saludos.
 
hispalis, ¿pero así no me cargaré de nuevo el grub? Digo desde el CD de Windows.
 
segun he leido por ahi se supone que despues de instlar el sp1 de windows 7, si éste detecta varios SO instalados, intenta crear su propio gestor de arranque para elegir que so arrancar, a lo mejor por eso, al encontrarse ya con el grub installado hay conflicto....
es mi teoria, que decis de esto?
 
Arriba