GPT fdisk (Español)
GPT fdisk —que consta de los programas gdisk, cgdisk, sgdisk y fixparts— es un conjunto de herramientas de particionado en modo texto creadas por Rod Smith. Funcionan en discos de tabla de particiones (GPT) con identificador único global (GUID), en lugar de en las tablas de particionado de registro de arranque maestro (MBR) más antiguas (y también smás comunes).
gdisk, cgdisk y sgdisk tienen la misma funcionalidad, pero proporcionan diferentes interfaces de usuario. gdisk es interactivo en modo texto, sgdisk funciona en línea de órdenes y cgdisk tiene una interfaz basada en curses. Este artículo cubre las utilidades gdisk(8) y sgdisk(8).
Instalación
Listar particiones
Para enumerar las tablas de particionado y las particiones presentes en un dispositivo de bloque, puede ejecutar lo siguiente, donde el dispositivo puede llevar por nombre /dev/sda
, /dev/nvme0n1
, /dev/mmcblk0
, etc.:
# gdisk -l /dev/sda
o, alternativamente, realizar la misma acción utilizando sgdisk:
# sgdisk -p /dev/sda
Realizar copia de seguridad y restaurar la tabla de particiones
Antes de realizar cambios en un disco, es posible que desee hacer una copia de seguridad de la tabla de particionado y del esquema de particiones de la unidad. También puede usar una copia de seguridad para copiar el mismo esquema de particiones en otras unidades.
Utilizando sgdisk puede crear una copia de seguridad binaria que contendrá el MBR protector, el encabezado GPT principal, el encabezado GPT de respaldo y una copia de la tabla de particiones. El siguiente ejemplo guardará la tabla de particiones de /dev/sda
en un archivo sgdisk-sda.bin
:
# sgdisk -b=sgdisk-sda.bin /dev/sda
Luego, puede restaurar la copia de seguridad ejecutando:
# sgdisk -l=sgdisk-sda.bin /dev/sda
Si desea clonar el esquema de particiones de su dispositivo actual (/dev/sda
en este caso) en otra unidad (/dev/sdc
) ejecute:
# sgdisk -R=/dev/sdc /dev/sda
Si ambas unidades están en el mismo ordenador, debe aleatorizar el disco y los GUID de las particiones:
# sgdisk -G /dev/sdc
Crear una tabla de particionado y las particiones
El primer paso para particionar un disco es crear una tabla de particiones. Después de eso, las particiones reales se crean de acuerdo con el esquema de particionado deseado.
Antes de comenzar, es posible que desee realizar una copia de seguridad de su actual tabla y esquema de particionado.
A continuación se muestra cómo usar gdisk para realizar la creación de una tabla de particiones y la creación de las particiones reales. Alternativamente, puede usar la versión basada en curses llamada cgdisk; sin embargo, las siguientes instrucciones no se aplican a él. Vea cgdisk(8) para su uso.
gdisk realiza la alineación de la partición automáticamente sobre una base de tamaño de bloque de 2048 con sectores de 512 bytes (1 MiB) que debería ser compatible con todos los formatos avanzados de discos HDD y la gran mayoría de SSD, si no todos .
Para utilizar gdisk , ejecute el programa seguido del nombre del dispositivo de bloque que desea cambiar/editar. En este ejemplo usamos /dev/sda
:
# gdisk /dev/sda
Crear nueva tabla
Para crear una nueva GUID Partition Table (Español) y borrar todos los datos de las particiones actuales, escriba o
en el prompt. Omita este paso si la tabla que necesita ya se ha creado.
Crear particiones
Cree una nueva partición con la orden n
. Debe ingresar el número de partición, el primer sector y el último, y el tipo de partición.
Número de la partición
Un número de partición es el número asignado a una partición, por ejemplo, una partición con el número 1
en un disco /dev/sda
sería /dev/sda1
. Los números de las particiones pueden no coincidir siempre con el orden de las particiones en el disco, en cuyo caso pueden ser ordenadas.
Se recomienda elegir el número predeterminado sugerido por gdisk.
Primer y último sector
El primer y el último sector de la partición se pueden especificar en números de sector o como posiciones medidas en kibibytes (K
), mebibytes (M
), gibibytes (G
), tebibytes (T
), o pebibytes (P
);
La posición se puede especificar:
- en términos absolutos, desde el inicio del disco. Por ejemplo,
40M
como primer sector, especifica una posición de 40 MiB contados desde el inicio del disco; - en términos relativos, precediendo el tamaño con el signo
+tamaño
o-tamaño
. Por ejemplo,+2G
para especificar un punto de 2 GiB contados después del sector de inicio predeterminado, o-200M
para especificar un punto 200 MiB descontados antes del último sector disponible.
Al presionar la tecla Intro
sin ninguna entrada, se está especificando el valor predeterminado, que es el inicio del bloque más grande disponible para el primer sector y el final del mismo bloque para el último sector.
- Al particionar, siempre es una buena idea especificar tamaños de partición usando términos relativos con la notación
+tamaño{M,G,T,P}
y no usar tamaños menores de 1 MiB. Tales particiones siempre estarán alineadas de acuerdo con las propiedades del dispositivo. - Deje un espacio libre de 1 MiB en algún lugar de los primeros 2 TiB del disco (por ejemplo, utilizando
+1M
como primer sector de una partición) en caso de que necesite crear una BIOS boot partition (Español).
Tipo de partición
Seleccione el tipo de partición ingresando el código de tipo interno de gdisk o especificando el GUID del tipo de partición manualmente. El valor predeterminado, Linux filesystem
(GUID: 0FC63DAF-8483-4772-8E79-3D69D8477DE4
; código interno de gdisk: 8300
), debería ser aceptable para la mayoría de los casos de uso.
Tipo de partición | Punto de montaje | Código de gdisk |
GUID del tipo de partición |
---|---|---|---|
Linux filesystem | Cualquiera | 8300
|
0FC63DAF-8483-4772-8E79-3D69D8477DE4
|
EFI system partition | Cualquiera | ef00
|
C12A7328-F81F-11D2-BA4B-00A0C93EC93B
|
BIOS boot partition | Ninguno | ef02
|
21686148-6449-6E6F-744E-656564454649
|
Linux x86-64 root (/) | /
|
8304
|
4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709
|
Linux swap | [SWAP]
|
8200
|
0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
|
Linux /home | /home
|
8302
|
933AC7E1-2EB4-4F13-B844-0E14E2AEF915
|
Linux /srv | /srv
|
8306
|
3B8F8425-20E0-4F3B-907F-1A25A76F98E8
|
Linux LVM | Cualquiera | 8e00
|
E6D6D379-F507-44C2-A23C-238F2A3DF928
|
Linux RAID | Cualquiera | fd00
|
A19D880F-05FC-4D3B-A006-743F0F84911E
|
Linux LUKS | Cualquiera | 8309
|
CA7D7CCB-63ED-4C53-861C-1742536059CC
|
Linux dm-crypt | Cualquiera | 8308
|
7FFEC5C9-2D00-49B7-8941-3EA10A5586B7
|
- Presione
L
para mostrar la lista de códigos internos de gdisk. - Se recomienda seguir la Especificación de particiones detectables ya que systemd-gpt-auto-generator(8) las montará automáticamente. Consulte #Prevenir el montaje automático de la partición GPT si desea desactivar el montaje automático para una partición.
Repita este procedimiento hasta que tenga las particiones que desea.
Escribir los cambios en el disco
c
para cambiar el nombre de una partición (PARTLABEL) para distinguirla fácilmente.Escriba la tabla en el disco y salga mediante la orden w
.
Consejos y trucos
Conversión de MBR a GPT (y viceversa)
gdisk, sgdisk y cgdisk tienen la capacidad de convertir MBR y BSD disklabels a GPT sin pérdida de datos. Tras la conversión, todas las particiones primarias MBR y las particiones lógicas se convierten en particiones GPT con los GUID de tipo de partición correctos y los GUID de partición únicos creados para cada partición.
Después de la conversión, será necesario reinstalar el gestor de arranque para configurarlo para que arranque desde GPT.
- GPT almacena una tabla secundaria al final del disco. Esta estructura de datos consume 33 sectores de 512 bytes (16,5 KiB) por defecto. MBR no tiene una estructura de datos similar en su extremo final del disco, lo que significa que la última partición en un disco MBR, a veces, se extiende hasta el final del disco, evitando así la conversión completa. Si este es el caso, debe abortar la conversión y cambiar el tamaño de la partición final (antes de volver a continuar).
- Existen problemas de corrupción conocidos con el GPT de respaldo en portátiles que están basados en el chipset Intel y se ejecutan en modo RAID. La solución es usar AHCI en lugar de RAID, si es posible.
Para convertir una tabla de partición MBR a GPT usando sgdisk, utilice la opción -g
/--mbrtogpt
:
# sgdisk -g /dev/sda
Para convertir GPT a MBR, utilice la opción -m
/--gpttombr
. Tenga en cuenta que no es posible convertir más de cuatro particiones de GPT a MBR.
# sgdisk -m /dev/sda
Ordenar particiones
Esto es aplicable cuando se crea una nueva partición en el espacio entre dos particiones o se elimina una partición. /dev/sda
se utiliza en este ejemplo.
# sgdisk -s /dev/sda
Después de ordenar las particiones si no está utilizando Persistent block device naming (Español), puede ser necesario ajustar la configuración de /etc/fstab
y/o la configuración del archivo /etc/crypttab
.
/dev/sda1
) puedan utilizarse. Reinicie el sistema o dígale al kernel que vuelva a leer la tabla de particiones.Recuperar encabezado GPT
En caso de que el encabezado GPT principal o el encabezado GPT de respaldo se dañen, puede recuperar uno desde el otro con gdisk. /dev/sda
se utiliza en este ejemplo.
# gdisk /dev/sda
elija r
para las opciones de recuperación y transformación (solo expertos). A partir de ahí, elija entre:
b
: utiliza el encabezado GPT de respaldo (reconstrucción principal)d
: utiliza el encabezado GPT principal (reconstrucción de la copia de seguridad)
Cuando termine, escriba la tabla en el disco y salga con la orden w
.
Expandir un disco GPT
Después de agrandar un disco (por ejemplo, en hardware RAID (Español) o un disco de máquina virtual) el espacio libre recién agregado no se podrá utilizar de inmediato ya que GPT mantiene los datos al final del disco. Debe reubicar el encabezado GPT de respaldo al nuevo extremo del disco.
Ejecute sgdisk con la opción -e
/--move-second-header
, por ejemplo:
# sgdisk -e /dev/sda
Luego imprima la tabla de particiones; el espacio libre total ahora debería haberse incrementado.
Prevenir el montaje automático de la partición GPT
systemd-gpt-auto-generator(8) montará automáticamente las particiones siguiendo la Especificación de particiones detectables. A veces eso puede no ser lo deseable.
El montaje automático puede desactivarlo configurando el atributo de partición 63
"do not automount" en la partición.
Inicie gdisk, por ejemplo:
# gdisk /dev/sda
Presione p
para imprimir la tabla de particiones y tome nota de los números de partición para los que desea desactivar el montaje automático.
Presione x
extra functionality (experts only).
Presione a
set attributes. Ingrese el número de partición y establezca el atributo 63
. En Set fields are:
ahora debería mostrar 63 (do not automount)
. Presione Intro
para finalizar el cambio de atributo. Repita este proceso para todas las particiones que desee evitar que se monten automáticamente.
Cuando termine, escriba la tabla en el disco y salga con la orden w
.
Alternativamente, utilizando sgdisk, el atributo se puede establecer usando la opción -A
/--attributes=
; vea sgdisk(8) para su utilización. Por ejemplo, para establecer el atributo de partición 63
"do not automount" en /dev/sda2
ejecute:
# sgdisk -A 2:set:63 /dev/sda
Apliación gdisk para EFI
No hay un paquete gdisk para la versión EFI, pero Rod Smith proporciona un binario gdisk precompilado para EFI en SourceForge. Descargue gdisk-efi-*.zip
y extraiga el archivo. Para usarlo, copie gdisk_x64.efi
en la EFI system partition y láncelo desde su gestor de arranque o Intérprete de órdenes UEFI.
gdisk_x64.efi le permite editar la tabla de particiones incluso antes de que se inicie el sistema operativo. Se usa de la misma manera que el binario gdisk en Linux.
Consulte README-efi.txt para obtener más información.
Véase también
- GPT fdisk Tutorial — página web oficial de GPT fdisk con tutoriales detallados.
- página SourceForge de GPT fdisk