GUID Partition Table (Español)

From ArchWiki
Revision as of 15:39, 16 December 2013 by Pedro (Talk | contribs) (GNU Parted: Actualizar)

Jump to: navigation, search

GUID Partition Table (GPT) es un nuevo formato de particionado integrante de la especificación Unified Extensible Firmware Interface, que usa un identificador único global para los dispositivos. Es diferente del Master Boot Record (el estilo más comúnmente utilizado de partición) en muchos aspectos y tiene muchas ventajas.

Advertencia: Si quiere un arranque dual con Windows en la misma unidad, recuerde que Windows no puede arrancar desde un disco con tabla GPT en modalidad BIOS. Si ya tiene instalado Windows en la unidad con tabla de particiones MBR para arrancar a través de la BIOS, no convierta la unidad a una tabla de particionado GPT, dado que Windows no podrá arrancar, independientemente del gestor de arranque que utilice para cargar Windows. Necesita instalar Windows en modo UEFI y utilizar uno de los gestores de arranque de UEFI para cargar en cadena Windows, si se está arrancando desde una unidad con tabla GPT. Esta es una limitación de Windows.

Para entender GPT, es importante entender lo que es MBR y cuáles son sus desventajas.

Master Boot Record

La tabla de particiones MBR almacena la información de las particiones en el primer sector de un disco duro de la siguiente manera:

Ubicación en el disco duro Propósito del Código
Primeros 440 bytes código de arranque de MBR que es lanzado por la BIOS.
441-446 bytes firma de disco MBR.
447-510 bytes tabla de particiones vigente con información acerca de las particiones primarias y extendidas. (Tenga en cuenta que las particiones lógicas no están listadas aquí)
511-512 bytes firma de arranque MBR 0xAA55.

La información completa acerca de las particiones primarias se limita a los 64 bytes asignados. Para ampliar ésto, fueron utilizadas particiones extendidas. Una partición extendida es simplemente una partición primaria en el MBR, que actúa como un contenedor para otras particiones llamadas particiones lógicas. Así que un disco duro queda limitado a 4 particiones primarias, o 3 primarias y 1 partición extendida con un número variable de particiones lógicas en su interior.

Problemas con MBR

  1. Sólo pueden ser definidas 4 particiones primarias o 3 primarias + 1 partición extendida (con un número arbitrario de particiones lógicas dentro de la partición extendida). Si tiene 3 particiones primarias + 1 partición extendida, y tiene algo de espacio libre fuera del área de la partición extendida, no se puede crear una nueva partición en ese espacio libre.
  2. Dentro de la partición extendida, los metadatos de las particiones lógicas se almacenan en una estructura de lista enlazada. Si un enlace se pierde, todas las particiones lógicas existentes, después de los metadatos, se pierden.
  3. MBR sólo admite 1 byte para códigos de tipo de partición, lo que conlleva muchas colisiones.
  4. MBR almacena la información del sector de la partición con valores LBA de 32 bits. Esta longitud de LBA junto con los 512 byte del tamaño del sector (más comúnmente utilizados) limita el tamaño máximo manejable del disco hasta 2 TiB. Cualquier espacio superior a 2 TiB supone que no puede ser definido como una partición si se utiliza MBR para particionarlo.

GUID Partition Table

GUID Partition Table (GPT) utiliza GUID (o UUID en el mundo linux) para definir particiones y sus tipos, de ahí el nombre. La GPT se compone de:

Ubicación en el disco duro Propósito
Primer sector lógico del disco o Primeros 512 bytes Protective MBR - Igual que un MBR normal, pero el área de 64 bytes contiene una sola Partición Primaria del tipo 0xEE entrada definida sobre el tamaño total del disco o en caso de >2 TiB, hasta un tamaño de partición de 2 TiB.
Segundo sector lógico del disco o Siguientes 512 bytes Cabecera GPT Principal - Contiene el Unique Disk GUID (GUID Único del Disco), Ubicación de la Tabla de la Partición Primaria, Número de posibles entradas en la tabla de particiones, las sumas de comprobación CRC32 de sí mismo y de la Tabla de Partición Primaria, Localización de la Segunda Cabecera (o Backup) GPT
16 KiB (por defecto), tras el segundo sector lógico del disco Tabla GPT Principal - 128 entradas de partición (por defecto, aunque puede ser más alto), cada una con una entrada de 128 bytes de tamaño (de ahí el total de 16 Kb para 128 entradas de partición). Los números del sector se almacenan en 64-bit LBA y cada partición tiene un tipo GUID de partición y un único GUID por partición .
16 KiB (por defecto) antes del último sector lógico del disco Tabla GPT Secundaria - Es byte por byte idéntica a la tabla Principal. Se utiliza principalmente para la recuperación en caso de que la tabla de partición principal esté dañada.
Último sector lógico del disco o Últimos 512 bytes Cabecera GPT Secundaria - Contiene la GUID Única del Disco, lugar de la tabla de la partición secundaria, el número de entradas posibles en la tabla de particiones, las sumas de comprobación CRC32 de sí mismo y la Tabla de Partición Secundaria, Localización de la Principal Cabecera GPT. Esta cabecera se puede utilizar para recuperar información de la GPT en caso de que la cabecera principal esté dañada.

Ventajas de GPT

  1. Utiliza GUID (UUID) para identificar los tipos de particiones - Sin colisiones.
  2. Proporciona un GUID único de disco y un GUID único de partición para cada partición - Un buen sistema de archivos independiente referenciando a las particiones y discos.
  3. Número arbitrarios de particiones -depende del espacio asignado por la tabla de particiones-. No hay necesidad de particiones extendidas y lógicas. Por defecto, la tabla GPT contiene espacio para la definición de 128 particiones. Sin embargo, si el usuario desea definir más particiones, se puede asignar más espacio (actualmente se sabe que solo gdisk soporta esta característica).
  4. Utiliza 64-bit LBA para almacenar números del Sector - tamaño máximo del disco manejable es de 2 ZiB.
  5. Almacena una copia de seguridad del encabezado y de la tabla de particiones al final del disco que ayuda en la recuperación en el caso de que los primeros están dañados.
  6. Checksum CRC32 para detectar errores y daños de la cabecera y en la tabla de particiones.

Soporte para el Kernel

La opción CONFIG_EFI_PARTITION en la configuración del kernel permite el soporte GPT en el kernel (a pesar del nombre PARTICIÓN EFI). Esta opción debe ser incorporada en el kernel y no compilada como un módulo cargable. La misma es necesaria incluso si los discos GPT solo se utilizan para el almacenamiento de datos y no para el arranque. Esta opción está activada por defecto en el kernel de Arch linux y linux-lts contenido en el repositorio [core]. Para el caso de un kernel personalizado, esta opción se habilita estableciendo CONFIG_EFI_PARTITION=y.

Soporte para el gestor de arranque

Sistemas UEFI

Todos los gestores de arranque UEFI admiten discos GPT desde el momento en que GPT es una parte de la especificación UEFI y, por lo tanto, obligatorio para el arranque UEFI. Consulte Boot Loaders para más información.

Sistemas BIOS

Nota: En algunos sistemas BIOS con placas base Intel solo se iniciará un disco GPT si la partición protective MBR tiene establecida la etiqueta Boot. En tales sistemas BIOS, usando MBR (también conocido como particiones msdos) se recomienda usar GPT para permitir su compatibilidad. Véase http://mjg59.dreamwidth.org/8035.html y http://rodsbooks.com/gdisk/bios.html para obtener más información y posibles soluciones.
  • [[GRUB] requiere una BIOS Boot Partition (de 2 MiB, sin sistema de archivos, código tipo EF02 con gdisk o el indicador bios_grub con GNU Parted) en los sistemas BIOS para incrustar su archivo core.img debido a la falta de espacio post-MBR para poder insertar discos GPT. Entre tanto, la compatibilidad GPT en GRUB es proporcionada por el módulo part_gpt que no está relacionado con el requisito de la BIOS Boot Partition.
  • Syslinux requiere la partición que contiene /boot/syslinux/ldlinux.sys (independientemente de si /boot es una partición separada o no) que esté marcada con el atributo GPT "Legacy BIOS Bootable" (indicador legacy_boot en GNU Parted) para identificar la partición que contiene los archivos de arranque de Syslinux para el código de arranque del MBR en los 440 byte, gptmbr.bin. Consulte Syslinux:GPT para más información.

Utilidades de particionado

GPT fdisk

GPT fdisk es un conjunto de utilidades en modo texto para la edición de los discos GPT. Éstas consisten en gdisk, sgdisk y cgdisk que son equivalentes a las herramientas respectivas de fdisk desde util-linux (utilizadas para discos MBR). gptfdisk está disponible en el repositorio [extra].

Conversión de MBR a GPT

Una de las mejores características de gdisk (y sgdisk y cgdisk también) es su capacidad para convertir MBR y etiquetas de disco BSD a GPT sin pérdida de datos. Tras la conversión, todas las particiones MBR primarias y las particiones lógicas quedarán convertidas en particiones GPT con los tipos GUID de partición correctos y GUID únicos de partición creados para cada partición.

Sólo tiene que abrir el disco MBR usando gdisk y salir con "w" para escribir los cambios en el disco (similar a fdisk) para convertir el disco MBR a GPT. ¡Cuidado con los errores y de corregirlos antes de escribir cualquier cambio en el disco!, ya que corre el riesgo de perder datos. Consulte http://www.rodsbooks.com/gdisk/mbr2gpt.html para más información. Después de la conversión, el gestor de arranque tendrá que ser reinstalado para configurarlo a fin de que arranque desde GPT.

Nota:
  • Recuerde que GPT almacena una tabla secundaria al final del disco. Puede que tenga que asegurarse de que tiene 1 MiB al final del disco que no se utiliza por ninguna partición.
  • Tenga en cuenta que si el gestor de arranque es Grub, se necesita una BIOS Boot Partition. Si la configuración del particionado MBR no es demasiado antiguo, es posible que la primera partición comience en el sector 2048 por razones de alineación. Eso significa que al principio habŕa 1007KiB de espacio vacío donde poder ubicar la partición bios de arranque creada. Para ello, en primer lugar, realice la conversión de mbr->gpt con gdisk como se ha descrito anteriormente. A continuación, cree una nueva partición con gdisk y especifique su posición entre los sectores 34 a 2047, y establezca el tipo de partición como EF02.

Fdisk de util-linux

La utilidad fdisk de util-linux (basado en libfdisk) apoya parcialmente GPT, pero todavía está en fase beta (con fecha 7 de octubre de 2013). Las utilidades relacionadas, cfdisk y sfdisk, todavía no admiten GPT, y pueden dañar el encabezado GPT y la tabla de particiones, si se utiliza en un disco GPT.

GNU Parted

En GNU Parted >=3,0, la utilidad de línea de comandos parted no es compatible con cualquier operación relacionada con sistema de archivos, y la mayor parte del código relacionado con FS ha sido eliminado de libparted, dejando sólo el código mínimo requerido por las aplicaciones externas como gparted. Upstream recomienda el uso de las herramientas específicas del sistema de archivos o una de las utilidades que contienen GUI como gparted (que llama a estas herramientas externas) para las operaciones relacionadas con el sistema de archivos.

Véase también

  1. Página de Wikipedia sobre GPT y MBR
  2. Página de Rod Smith sobre la herramienta fdisk GPT y página del proyecto Sourceforge.net - gptfdisk
  3. Página Rod Smith's sobre conversión de MBR a GPT y arranque de sistemas operativos desde GPT
  4. Página Rod Smith's sobre la Nueva Partición Tipo GUID para datos de particiones Linux
  5. Presentación página CD's de Recuperación del Sistema en GPT
  6. Página de Wikipedia sobre BIOS Boot Partition
  7. Aproveche al máximo de unidades de gran tamaño con GPT y Linux - IBM Developer Works
  8. FAQ de Microsoft Windows y GPT