16 enero 2015

Visión general de partición con GPT

La tabla de particiones gdisk GPT de GUID (Globally Unique Identifier) es una herramienta para particionar discos duros de cualquier tamaño que es necesaria para los discos mayores de 2 TB. Por defecto, gdisk se asegurará de que sus particiones están correctamente alineadas para SSD, (discos duros que no tienen realmente 512 bytes por sectors).

La ventaja principal de GPT es que elimina la necesidad de basarse en particiones primarias, extendidas o lógicas que son inherentes al MBR. GPT puede soportar un número casi ilimitado de particiones y tiene solamente el límite de la cantidad de espacio reservado para las entradas de las particiones en el disco GPT. Tenga en cuenta sin embargo que la herramienta por defecto gdisk tiene 128 particiones.

No obstante, el uso de GPT en lápices de memoria USB/SSD pequeños, (por ejemplo un lápiz de 8 GB), puede ser contraproducente si necesita pasar datos de un ordenador a otro, o de un Sistema Operativo a otro S.O.
Notas importantes

Los términos "UEFI" y "EFI" son intercambiables y significan el mismo concepto.

Discos de datos GPT
Algunos Sistemas Operativos no soportan los discos de datos GPT; consulte por favor la documentación del respectivo S.O.

Los discos de datos GPT pueden aplicarse en máquinas de 32 y 64 bit bajo Linux.

Arranque con discos GPT
Dual y triple arranque con discos GPT usando Linux, BSD y Apple está soportando con EFI en 64 bit.

Es posible un arranque dual en discos GPT con Linux y MS Windows, siempre que su S.O. MS Windows pueda arrancar con discos GPT en modo UEFI en 64 bit,.

Herramientas de partición GUI para usar en GPT
Juntamente con la orden gdisk para ser usada en un terminal, existen herramientas GUI como 'gparted' y 'partitionmanager' para los discos GPT. Dicho esto, gdisk debería ser su herramienta preferida para evitar anomalías indeseadas. Ello no obstante, 'Gparted - gparted' juntamente con 'KDE Partition Manager - partitionmanager', (entre otras), son excelentes herramientas para dar una descripción visual de lo que está haciendo en gdisk.

Lectura obligatoria antes de seguir adelante:


Partición de su Disco Duro usando gdisk para un sistema Linux
Entender las principales órdenes de gdisk como m para volver al menú principal, d , n , p y t , entre otras, serán los principales comandos para sus necesidades de partición con gdisk, y vale la pena explorar gdisk en un disco de prueba.

NOTA IMPORTANTE sobre la orden n:

Cuando use la orden n , pulse para dar a la partición el último número libre y es necesario pulsar otra vez para que acepte el sector de arranque por defecto para la nueva partición antes de establecer el tamaño que necesite para el último sector. Por ejemplo:

Command (? for help):  n 
Partition number (2-128, default 2):  2
First sector (34-15728606, default = 411648) or {+-}size{KMGTP}:
Last sector (411648-15728606, default = 15728606) or {+-}size{KMGTP}: +6144M

Ejemplo de partitción de un disco GPT
Adáptelo para justarse a sus necesidades:

  1. Crear una partición de arranque, (dando por sentado que el disco no contiene solamente datos y necesita hacerse arrancable)
  2. Crear una partición de intercambio (swap), (dando por sentado que el disco no contiene solamente datos y necesita hacerse arrancable)
  3. Crear las particiones linux
  4. Crear otras particiones de datos

NOTA: El ejemplo siguiente usa un lápiz USB para demostrar los pasos necesarios, por lo que no es exhaustivo.

Los pasos

Si no está seguro del nombre del disco, use fdisk para confirmarlo, (se necesitan privilegios de root para todas las órdenes de partición y dar formato):

fdisk -l

fdisk le dirá el path necesario y posiblemente incluirá otros nombre de partición en el disco, pero sin embargo necesita que compruebe el correcto path al disco, independientemente de las particiones que puedan existir en el disco. Por ejemplo, suponiendo que sea sdb y comience gdisk con el path al disco:

gdisk /dev/sdb

El mensaje inicial es un aviso de si el disco es o no nuevo o uno que ya esté usando GPT:

GPT fdisk (gdisk) version 0.7.2
Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present
***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format.
THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by typing 'q' if
you don't want to convert your MBR partitions to GPT format!
***************************************************************
Command (? for help):

Al dar la orden gdisk sobre un disco que tenga la etiqueta MBR de arranque en alguna de sus particiones pero no GPT, el programa muestra un mensaje rodeado por asteriscos sobre la conversión de la partición existente a GPT. Esto es para evitar que dé la orden gdisk en un disco erróneo por accidente o si no sabe qué está haciendo. Debe dar una conformidad explícita al mensaje de aviso antes de proseguir. Este mensaje quiere evitar que dañe accidentalmente su disco de arranque.

Pulse ? y verá una lista de las órdenes disponibles, (las órdenes coloreadas sólo están para fines de documentación):

Command (? for help):  ?
b    back up GPT data to a file
c    change a partition's name
d    delete a partition
i    show detailed information on a partition
l    list known partition types
n    add a new partition
o    create a new empty GUID partition table (GPT)
p    print the partition table
q    quit without saving changes
r    recovery and transformation options (experts only)
s    sort partitions
t    change a partition's type code
v    verify disk
w    write table to disk and exit
x    extra functionality (experts only)
?    print this menu

Para comprobar que realmente está trabajando en el disco en el quiere hacerlo pulse p .

Command (? for help):  p
Disk /dev/sdb: 16547840 sectors, 7.9 GiB En este ejemplo se usa un lápiz de 8GB
Logical sector size: 512 bytes
Disk identifier (GUID): 0267952D-9B06-4B10-A648-B83684786910
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 16547806
Partitions will be aligned on 2048-sector boundaries
Total free space is 16547773 sectors (7.9 GiB)
Number  Start (sector)    End (sector)  Size       Code  Name

La columna de código de la salida muestra el código del tipo de partición y la de Nombre muestra una cadena de texto que usted puede modificar libremente.

Borrado de la tabla de particiones
Ahora es necesario borrar completamente la tabla de particiones en el disco para establecer las particiones GPT:

command (? for help):  d

Arranque GPT-EFI o arranque GPT-BIOS
Si es necesario el arranque desde un disco GPT, hay 2 opciones para dar formato al sector de arranque de un disco GPT.

Las opciones son:

  • Su máquina soporta U(EFI) mediante el BIOS, que está activado y seleccionado para poder arrancar
  • Quiere usar EFI para arrancar un disco GPT formateado

o bien

  • Su máquina no soporta U(EFI) mediante el BIOS
  • Quiere usar el BIOS para arrancar un disco GPT formateado

Arranque EFI
Es necesario que el BIOS soporte EFI y que esté activado y seleccionado para el arranque.

Si va a usar EFI para el arranque tiene que tener un sistema de particiones EFI formateado con FAT (tipo EF00 ) como primera partición. Esta partición contendrá su(s) cargador(es) de arranque. Cuando lo instale, ignore cualquier mensaje "desde dónde arrancar" en el GUI de instalación y un arrancador de aptosid se instalará en el sistema de particiones EFI bajo /efi/aptosid . El sistema de particiones EFI será también montado como /boot/efi si deja seleccionada la opción "montar otras particiones", no es necesario que le diga al instalador que monte esta partición.

Crear la partición de arranque EFI
Teclee n para añadir una nueva partición y +200M para dar la dimensión del cargador.

Command (? for help):  n
Partition number (1-128, default 1):  1

First sector (34-16547806, default = 34) or {+-}size{KMGTP}:
Information: Moved requested sector from 34 to 2048 in
order to align on 2048-sector boundaries.
Use 'l' on the experts' menu to adjust alignment
Last sector (2048-16547806, default = 16547806) or {+-}size{KMGTP}:  +200M
Current type is 'Linux filesystem'

Pulsando L aparecerá una lista de códigos:

Hex code or GUID (L to show codes, Enter = 8300):  L
0700 Microsoft basic data  0c01 Microsoft reserved    2700 Windows RE         
4200 Windows LDM data      4201 Windows LDM metadata  7501 IBM GPFS           
7f00 ChromeOS kernel       7f01 ChromeOS root         7f02 ChromeOS reserved  
8200 Linux swap            8300 Linux filesystem      8301 Linux reserved     
8e00 Linux LVM             a500 FreeBSD disklabel     a501 FreeBSD boot       
a502 FreeBSD swap          a503 FreeBSD UFS           a504 FreeBSD ZFS        
a505 FreeBSD Vinum/RAID    a800 Apple UFS             a901 NetBSD swap        
a902 NetBSD FFS            a903 NetBSD LFS            a904 NetBSD concatenated
a905 NetBSD encrypted      a906 NetBSD RAID           ab00 Apple boot         
af00 Apple HFS/HFS+        af01 Apple RAID            af02 Apple RAID offline 
af03 Apple label           af04 AppleTV recovery      be00 Solaris boot       
bf00 Solaris root          bf01 Solaris /usr & Mac Z  bf02 Solaris swap       
bf03 Solaris backup        bf04 Solaris /var          bf05 Solaris /home      
bf06 Solaris alternate se  bf07 Solaris Reserved 1    bf08 Solaris Reserved 2 
bf09 Solaris Reserved 3    bf0a Solaris Reserved 4    bf0b Solaris Reserved 5 
c001 HP-UX data            c002 HP-UX service         ef00 EFI System         
ef01 MBR partition scheme  ef02 BIOS boot partition   fd00 Linux RAID

Entre ef00 para hacer la partición UEFI:

Hex code or GUID (L to show codes, Enter = 8300): ef00
Changed system type of partition to 'EFI System'

Partición de arranque BIOS
Creación de una partición de arranque BIOS

Si su sistema no soporta UEFI, puede hacer una partición de arranque BIOS que sustituya el sector de disco que en una unidad DOS está entre la tabla de particiones y la primera partición en la que se escribe directamente GRUB.

Pulse n para añadir una nueva partición y +200M para dar la dimensión del cargador. (La razón de hacerlo de 200M, comparado con el convencional de 32M es tener una partición del tamaño requerido por EFI por si alguna vez quisiera cambiar el arranque a EFI).

Command (? for help):  n
Partition number (1-128, default 1):  1

First sector (34-16547806, default = 34) or {+-}size{KMGTP}:
Information: Moved requested sector from 34 to 2048 in
order to align on 2048-sector boundaries.
Use 'l' on the experts' menu to adjust alignment
Last sector (2048-16547806, default = 16547806) or {+-}size{KMGTP}:  +200M
Current type is 'Linux filesystem'

Pulse ef02 para hacer una partición de arranque BIOS:

Hex code or GUID (L to show codes, Enter = 8300): ef02
Changed system type of partition to 'BIOS boot'

Nota importante: La partición de arranque BIOS no debe ser formateada

Crear la partición de intercambio (swap)
La localización de la partición swap no debe ser descuidada, especialmente para ordenadores portátiles y notebooks, ya que deben ser capaces de suspender su funcionamiento cuando sea necesario. Debe tener por lo menos el tamaño de la RAM.

Teclee n para añadir una partición nueva y +2G, (o, +2048M) para dar la dimensión con el código 8200 . Un ejemplo de esto sería:

Command (? for help):  n 
Partition number (2-128, default 2):  2
First sector (34-15728606, default = 411648) or {+-}size{KMGTP}:
Last sector (411648-15728606, default = 15728606) or {+-}size{KMGTP}: +2048M
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):  8200
Changed type of partition to 'Linux swap

Crear las particiones para datos
Pulse n para añadir una partición nueva y XXXG para dar la dimensión. En este ejemplo +4G:

Partition number (3-128, default 3):  3
First sector (34-15728606, default = 4605952) or {+-}size{KMGTP}:
Last sector (4605952-15728606, default = 15728606) or {+-}size{KMGTP}: +4G
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): 8300
Changed type of partition to 'Linux filesystem

Repita el mismo procedimiento para las demás particiones según sus necesidades.

Ya que en este ejemplo usamos un lápiz USB, puede ser conveniente hacer una partición para Datos de cualquier SO con el código 0700, de lo contrario daría el código para un sistema de ficheros Linux (8300):

Command (? for help):  n
Partition number (4-128, default 4):  4
First sector (34-15728606, default = 12994560) or {+-}size{KMGTP}:
Last sector (12994560-15728606, default = 15728606) or {+-}size{KMGTP}: +1300M
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):  0700
Changed type of partition to 'Microsoft basic data'

Para examinar las particiones que ha creado:

Command (? for help):  p
Disk /dev/sdx: 15728640 sectors, 7.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): F409CFD3-6DDC-4551-BBC5-85DC218C1352
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15728606
Partitions will be aligned on 2048-sector boundaries
Total free space is 73661 sectors (36.0 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          411647   200.0 MiB   EF00  Boot
   2          411648         4605951   2.0 GiB     8200  Swap
   3         4605952        12994559   4.0 GiB     8300  Linux File System
   4        12994560        15656959   1.3 GiB     0700  Any OS Data

Para añadir una descripción de cada partición use la orden c para describir el propósito de cada partición. Por ejemplo:

Command (? for help):  c
Partition number (1-4):  4
Enter name:  Descriptive name of your choosing

La orden w escribe sus cambios en el disco, mientras que la q sale sin guardar sus cambios:

Command (? for help):  w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N):  y
OK; writing new GUID partition table (GPT).
The operation has completed successfully.

Formatear las particiones
Puesto que gdisk crea particiones y no sistemas de ficheros, necesitará dar formato a cada una de ellas mediante el terminal. Sin embargo necesitará conocer los nombres de las particiones para poderlas formatear correctamente, y por consiguiente escriba:

fdisk -l

fdisk le dará el path que necesita. Suponiendo que sea sdb :

gdisk /dev/sdb
Command (? for help):  p

Ahora pulse q para salir de gdisk y volver al prompt # de root, para que pueda entrar el path para cada número de partición:

Para la partición UEFI, (No dé formato a la partición de arranque BIOS):

 mkfs -t vfat /dev/sdb1

Para las particiones Linux, (La sintaxis de cualquier otra partición Linux cambiará para cada partición adicional del sistema de ficheros Linux, esto es sdb4, sdb5, etcétera:

 mkfs -t ext4 /dev/sdb3

Para la partición de 'Cualquier SO', (posiblemente necesaria sólo si un lápiz USB debe operar en varias plataformas):

 mkfs -t vfat /dev/sdb4

Dé formato a la partición de intercambio swap :

mkswap /dev/sdb2

Y a continuación:

swapon /dev/sdb2

Ahora compruebe si el sistema reconoce la partición swap entrando en la consola:

swapon -s

Si lo reconoce de forma correcta, entre

swapoff -a

Estas órdenes trabajan exactamente como lo harían en las particiones MBR.
Es absolutamente necesario volver a arrancar para que el nuevo esquema de particiones y formatos pueda ser leído por el núcleo.

Después de que haya vuelto a arrancar ya puede iniciar la instalación o usar el disco GPT.

Órdenes avanzades de gdisk
Antes de guardar los cambio quizás pueda querer comprobar que no hayan problemas evidentes con la estructura de datos GPT. Puede hacer esto con la orden v:

Command (? for help):  v
No problems found. 0 free sectors (0 bytes) available in 0
segments, the largest of which is 0 sectors (0 bytes) in size

En este caso, cada byte disponible en el disco está localizado en las particiones y no se han encontrado problemas. Si hay espacio libre para la creación de particiones, podrá ver cuánto hay disponible. Si gdisk encuentra problemas tales como la superposición de particiones en las tablas principales y las de respaldo, lo dirá ahora. Por supuesto, gdisk inclye medidas de seguridad para asegurarse de que usted no puede crear estos problemas directamente. La opción de seguridad v está diseñada para ayudarle a identificar los problemas que pudieran derivarse de la corrupción de datos.

Si se han encontrado problemas, usted podrá corregirlos usando varias opciones del menú de recuperación & transformación , que es un segundo menú de opciones disponible escribiendo r :

Command (? for help):  r

recovery/transformation command (? for help): ?
b    use backup GPT header (rebuilding main)
c    load backup partition table from disk (rebuilding main)
d    use main GPT header (rebuilding backup)
e    load main partition table from disk (rebuilding backup)
f    load MBR and build fresh GPT from it
g    convert GPT into MBR and exit
h    make hybrid MBR
i    show detailed information on a partition
l    load partition data from a backup file
m    return to main menu
o    print protective MBR data
p    print the partition table
q    quit without saving changes
t    transform BSD disklabel partition
v    verify disk
w    write table to disk and exit
x    extra functionality (experts only)
?    print this menu

Un tercer menú, el menú para expertos , está disponible escribiendo x tanto en el menú principal como en el menú recovery & transformation .

recovery/transformation command (? for help): x

Expert command (? for help): ?
a       set attributes
c       change partition GUID
d       display the sector alignment value
e       relocate backup data structures to the end of the disk
g       change disk GUID
i       show detailed information on a partition
l       set the sector alignment value
m       return to main menu
n       create a new protective MBR
o       print protective MBR data
p       print the partition table
q       quit without saving changes
r       recovery and transformation options (experts only)
s       resize partition table
v       verify disk
w       write table to disk and exit
z       zap (destroy) GPT data structures and exit
?       print this menu

Puede hacer una cierta edición de bajo nivel, como cambiar las particiones o el GUID de los discos ( c y g , respectivamente). La opción z destuye inmediatamente las estruturas de datos GPT, lo que deberá hacer si quiere volver a usar con algún otro esquema de particiones un disco que haya tenido GPT. Si estas estructuras no se borran, algunas herramientas de partición pueden quedar confundidas con la aparente presencia de dos sistema de particiones.

Hablando en general, las opciones tanto de los menús recovery & transformation como de experts deberían ser usados solamente por expertos en GPT. Sin embargo, los no expertos pueden verse obligados a usar estos menús si un disco ha sufrido daños. Antes de hacer acciones drásticas, usted debería usar la opción b del menú principal para crear un respaldo en un fichero, y guardar este fichero en un lápiz USB o en algún otro lugar que no sea el disco que está modificando. Así podrá recuperar la configuración orginal si estropea sus particiones.

Fuentes:
Tutorial de fdisk GPT por Roderick W. Smith
Centro de desarrollo de hardware de Windows

Tomado de: http://manual.aptosid.com/es/part-gdisk-es.htm

No hay comentarios: