Reparando y limpiando tablas GPT corruptas (Guardando MBR) [WARNING GPT (GUID Partition Table) detected on]
Hace un par de semanas adquirí un nuevo equipo portátil en el cual he instalado GNU/Linux (Arch) como SO de cabecera, sin embargo mientras lo hacia he dejado un par de particiones lógicas no muy grandes destinadas a instalar algo como FreeBSD, OpenBSD, entre otros.
Pues bien, hoy mientras tenia algo de tiempo y luego de la larga espera para descargar el DVD de FreeBSD me he dispuesto a instalarlo sobre una de mis particiones, pero comenzado el trabajo unos cuantos golpes de la tecla Enter de sobra durante el gestor de particionado del instalador me han dado como resultado la creación de una tabla GPT indeseada y para colmo mal formada, y por supuesto con esto no podía leer mis particiones de la tabla MBR para instalar FreeBSD donde quería hacerlo.
Arranqué mi Arch nuevamente para examinar el problema:
Empecé por revisar como estaba el MBR de mi HDD y fdisk se quejaba de la presencia de una tabla GPT que no podía entender (fdisk no sabe leer GPT).
$ fdisk -l
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk
doesn't support GPT. Use GNU Parted.
Disk /dev/sda: 500.1 GB, 500107862016 bytes, 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificador del disco: 0x7ff32c5b
Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sda1 * 63 195318269 97659103+ 83 Linux
/dev/sda2 195319808 390635519 97657856 7 HPFS/NTFS/exFAT
/dev/sda3 390636540 392596469 979965 82 Linux swap / Solaris
/dev/sda4 392596470 976773167 292088349 5 Extendida
/dev/sda5 392596533 451185524 29294496 9f BSD/OS
/dev/sda6 451185588 509774579 29294496 83 Linux
/dev/sda7 509774643 568363634 29294496 83 Linux
/dev/sda8 568363698 976773167 204204735 83 Linux
Luego probé con gparted, el cual anunciaba también la presencia de una tabla GPT y me informaba que haría uso de ella, y así era, obtenía un disco con una sola partición!
Respaldo
Antes de meter mano tomaremos precauciones y respaldaremos el MBR de nuestro HDD:
# sfdisk -d /dev/sda > recover ("sda" es nuestro hdd)
Y guardamos el archivo recover en una memoria USB o cualquier otro medio externo (Importante!!)
Solución
Tan sencillo como eliminar la tabla GPT haciendo uso de gdisk
Si no tenemos ya en nuestros sistema instalado gdisk lo instalamos con el gestor de paquetes de nuestra distribución.
Para Arch: # pacman -S gdisk
Ahora como root:
# gdisk
(“>>” consola de gdisk)
>> /dev/sda (nuestro hdd)
gdisk nos preguntará si deseamos examinar el disco con la tabla MBR o GPT, elegimos MBR
Luego:
>> x (para entrar al modo experto)
>>Expert command: z
- Nos pedirá confirmación para eliminar GPT (respondemos que si)
- Nos preguntará si deseamos eliminar también MBR (respondemos que NO)
Una vez echo esto podemos cerrar gdisk y ya tendremos nuestro disco limpio de toda GPT , y si hemos echo todo bien tendremos intacta nuestra tabla MBR.
Si no lo hemos echo bien estaremos en serios problemas, que se podrán solucionar si hemos seguido los pasos de respaldo.
Hace un par de semanas adquirí un nuevo equipo portátil en el cual he instalado GNU/Linux (Arch) como SO de cabecera, sin embargo mientras lo hacia he dejado un par de particiones lógicas no muy grandes destinadas a instalar algo como FreeBSD, OpenBSD, entre otros.
Pues bien, hoy mientras tenia algo de tiempo y luego de la larga espera para descargar el DVD de FreeBSD me he dispuesto a instalarlo sobre una de mis particiones, pero comenzado el trabajo unos cuantos golpes de la tecla Enter de sobra durante el gestor de particionado del instalador me han dado como resultado la creación de una tabla GPT indeseada y para colmo mal formada, y por supuesto con esto no podía leer mis particiones de la tabla MBR para instalar FreeBSD donde quería hacerlo.
Arranqué mi Arch nuevamente para examinar el problema:
Empecé por revisar como estaba el MBR de mi HDD y fdisk se quejaba de la presencia de una tabla GPT que no podía entender (fdisk no sabe leer GPT).
$ fdisk -l
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk
doesn't support GPT. Use GNU Parted.
Disk /dev/sda: 500.1 GB, 500107862016 bytes, 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificador del disco: 0x7ff32c5b
Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sda1 * 63 195318269 97659103+ 83 Linux
/dev/sda2 195319808 390635519 97657856 7 HPFS/NTFS/exFAT
/dev/sda3 390636540 392596469 979965 82 Linux swap / Solaris
/dev/sda4 392596470 976773167 292088349 5 Extendida
/dev/sda5 392596533 451185524 29294496 9f BSD/OS
/dev/sda6 451185588 509774579 29294496 83 Linux
/dev/sda7 509774643 568363634 29294496 83 Linux
/dev/sda8 568363698 976773167 204204735 83 Linux
Luego probé con gparted, el cual anunciaba también la presencia de una tabla GPT y me informaba que haría uso de ella, y así era, obtenía un disco con una sola partición!
Respaldo
Antes de meter mano tomaremos precauciones y respaldaremos el MBR de nuestro HDD:
# sfdisk -d /dev/sda > recover ("sda" es nuestro hdd)
Y guardamos el archivo recover en una memoria USB o cualquier otro medio externo (Importante!!)
Solución
Tan sencillo como eliminar la tabla GPT haciendo uso de gdisk
Si no tenemos ya en nuestros sistema instalado gdisk lo instalamos con el gestor de paquetes de nuestra distribución.
Para Arch: # pacman -S gdisk
Ahora como root:
# gdisk
(“>>” consola de gdisk)
>> /dev/sda (nuestro hdd)
gdisk nos preguntará si deseamos examinar el disco con la tabla MBR o GPT, elegimos MBR
Luego:
>> x (para entrar al modo experto)
>>Expert command: z
- Nos pedirá confirmación para eliminar GPT (respondemos que si)
- Nos preguntará si deseamos eliminar también MBR (respondemos que NO)
Una vez echo esto podemos cerrar gdisk y ya tendremos nuestro disco limpio de toda GPT , y si hemos echo todo bien tendremos intacta nuestra tabla MBR.
Si no lo hemos echo bien estaremos en serios problemas, que se podrán solucionar si hemos seguido los pasos de respaldo.