1 votos

No se puede redimensionar/crear una partición con gpt

Tengo un Mac Server con 10.10. El único propósito de la misma en este momento es tomar copias de seguridad de la máquina del tiempo de múltiples dispositivos.

El propio servidor utiliza un recurso compartido NAS AFP de Thecus para almacenar las copias de seguridad de Time Machine. Normalmente, el proceso que he utilizado en el pasado para aumentar el espacio de almacenamiento es el siguiente

Ampliar el tamaño de iSCSI en el Thecus. Ahora es de 8,8TB (desde 6,6TB)

En el servidor -

Terminal - Sudo up

sh-3.2# df
Filesystem    512-blocks       Used Available Capacity   iused   ifree %iused  Mounted on
/dev/disk0s2    83214256   40438952  42263304    49%   5118867 5282913   49%   /
devfs                362        362         0   100%       627       0  100%   /dev
map -hosts             0          0         0   100%         0       0  100%   /net
map auto_home          0          0         0   100%         0       0  100%   /home
map -fstab             0          0         0   100%         0       0  100%   /Network/Servers
/dev/disk1s2  4294295472 4242994728  51300744    99% 530374339 6412593   99%   /Volumes/Backups
sh-3.2# 

Confirm in Disk Utility the disk size has increased

Eject/Unmount the partition

sh-3.2# gpt show /dev/disk1
       start        size  index  contents
           0           1         PMBR
           1           1         Pri GPT header
           2          32         Pri GPT table
          34           6         
          40      409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
      409640  4294295472      2  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  4294705112  4295229447         
  8589934559          32         Sec GPT table
  8589934591           1         Sec GPT header
sh-3.2# 
sh-3.2# 

sh-3.2# 
sh-3.2# gpt destroy /dev/disk1
sh-3.2# 
sh-3.2# gpt create -f /dev/disk1
sh-3.2# 
sh-3.2# gpt add -b 409640 -s 4294295472 /dev/disk1
/dev/disk1s1 added
sh-3.2# 

El problema esta vez es que no tengo el número original -b.

He probado lo siguiente

sh-3.2# gpt destroy /dev/disk1
sh-3.2# gpt create -f /dev/disk1
sh-3.2# gpt show /dev/disk1
        start         size  index  contents
            0            1         PMBR
            1            1         Pri GPT header
            2           32         Pri GPT table
           34  17179869117         
  17179869151           32         Sec GPT table
  17179869183            1         Sec GPT header
sh-3.2# gpt add -b 409640 -s 17179869117
usage: gpt add [-b lba] [-i index] [-s lba] [-t uuid] device ...
sh-3.2# gpt add -b 409640 -s 17179869117 /dev/disk1
gpt add: /dev/disk1: error: no space available on device

He probado un par de opciones diferentes al crear la partición y obtengo "no hay espacio disponible" cada vez.

Si intento

gpt add -b 34 -s 17179869117

Creará la partición pero será totalmente ilegible.

La salida actual de df es

macserver:~ tech$ df
Filesystem                               512-blocks        Used  Available Capacity    iused      ifree %iused  Mounted on
/dev/disk0s2                               83214256    53119064   29583192    65%    6703881    3697899   64%   /
devfs                                           360         360          0   100%        625          0  100%   /dev
map -hosts                                        0           0          0   100%          0          0  100%   /net
map auto_home                                     0           0          0   100%          0          0  100%   /home
map -fstab                                        0           0          0   100%          0          0  100%   /Network/Servers
//Admin.@192.168.3.1/TimeMachineBackups 23241211968 14320040480 8921171488    62% 1790005058 1115146436   62%   /Volumes/TimeMachineBackups

El 62% de cuota libre es mi objetivo.

¿Puede alguien ofrecer alguna ayuda?

1voto

klanomath Puntos 19587

gpt es una herramienta para editar la tabla de particiones GUID de un disco. Sólo modifica el cabecera y tabla GPT primaria y secundaria y el MBR. O con otras palabras: sólo modifica los primeros 34 bloques y los últimos 33 bloques de un dispositivo. Esto significa: si añades una partición que comienza en el bloque 40 y termina en el bloque 409640 (estos son los límites de una partición EFI típica de OS X) no escribe nada en los bloques 40-409640 sino sólo en las cabeceras/tablas GPT.

Añadir una partición no da lugar a un sistema de archivos y mucho menos a un legible sistema de archivos. Para crear un sistema de archivos hay que formatear la partición con una herramienta adecuada como newfs_hfs ¡! Después de formatear una partición, el sistema de archivos está esencialmente vacío, excepto las partes necesarias que "representan" el sistema de archivos, como el archivo de catálogo, el archivo de asignación, etc.

Si elimina una partición con un sistema de archivos o elimina toda la tabla de particiones que contiene varias particiones formateadas con gpt remove|destroy ... el sistema de archivos no se tocará. Por lo tanto, después de restaurar una partición o una tabla de particiones con los mismos valores que tenían anteriormente, los sistemas de archivos con todo su contenido "reaparecerán".

Existe un caso (poco frecuente) en el que se puede ampliar una partición: si algún espacio de disco no asignado está directamente "detrás" de una partición. Si primero elimina una partición con gpt y luego volver a añadir la partición con el mismo bloque de inicio pero con un tamaño mayor el sistema de archivos anterior está completamente en los límites de la nueva partición. Pero al menos el archivo de asignación (~mapa de bits del volumen) está dañado y la cabecera del volumen alternativo está en la ubicación incorrecta. Normalmente un sistema de archivos "intencionadamente corrupto" puede ser reparado con diskutil repairVolume ... . Sin embargo, se desaconseja utilizar este método para ampliar una partición.


Modificación de las particiones de disco con gpt como en su pregunta o como se describe a continuación eliminará cualquier partición actual (y su contenido) con una alta probabilidad. ¡Para redimensionar (ampliar o reducir) una partición actual manteniendo su contenido, utilice diskutil!

Empezando por un disco vacío con una tabla de particiones GPT por defecto se obtiene el siguiente esquema de particiones:

sh-3.2# gpt show /dev/disk1
        start         size  index  contents
            0            1         PMBR
            1            1         Pri GPT header
            2           32         Pri GPT table
           34  17179869117         
  17179869151           32         Sec GPT table
  17179869183            1         Sec GPT header

Aunque los discos más nuevos informan de un tamaño de bloque lógico de 512 Bytes, normalmente tienen un tamaño de bloque físico de 4096 Bytes.

  • 1ª regla: los bloques de inicio y los tamaños de las particiones deben ser divisibles por 8 para alinear las particiones con los bloques físicos
  • 2ª regla: no se pueden asignar más bloques de los disponibles (el número máximo de bloques disponibles es: 17179869117 y alineando a los bloques físicos: 2147483639 x 8 = 17179869112 bloques)
  • 3ª regla: intentar especificar un Tipo de GUID

Una opción viable es:

gpt add -b 40 -i 1 -s 17179869112 -t 48465300-0000-11AA-AA11-00306543ECAC /dev/disk1

O puedes añadir una partición EFI y dejar algo de espacio al final del disco (como hace Apple):

gpt add -b 40 -i 1 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B /dev/disk1
gpt add -b 409640 -i 2 -s 17179197368 -t 48465300-0000-11AA-AA11-00306543ECAC /dev/disk1

Después de añadir las particiones hay que formatear la partición principal:

newfs_hfs -J -v "Name" /dev/disk1s1

o si eliges la segunda tabla de particiones (con partición EFI)

newfs_hfs -J -v "Name" /dev/disk1s2

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X