GParted realmente no creó espacio en disco sin asignar. En cambio, el MBR tiene falso. El CoreStorage LVG y todos los contenedores subsiguientes también se corrompieron, porque no se redimensionó la pila completa según se requería. Normalmente, en macOS, la pila completa cambia de tamaño con el comando diskutil cs resizeStack ...
. Por lo que puedo decir de forma remota, el límite final de la segunda partición simplemente se movió a números de bloque más bajos que generalmente funcionan con volúmenes HFS + normales en GParted pero no en este caso con una pila CoreStorage. Afortunadamente, algunas estructuras de datos invisibles de la pila CS no se sobrescribieron.
Además, la partición de recuperación no se movió correctamente. Pero este es un problema diferente.
En lugar del MBR debería tener un pMBR. Después de eliminar el MBR falso, debe destruir y volver a crear la tabla de particiones GUID:
- iniciar en modo de recuperación de Internet
- Abrir Terminal en la barra de menú Utilidades - > Terminal
-
Obtenga una descripción general (¡especialmente el comando gpt es importante!):
diskutil list
gpt -r show disk0
-
Desmontar disk0:
diskutil umountDisk /dev/disk0
-
Eliminar el MBR:
dd if=/dev/zero of=/dev/disk0 bs=512 count=1
-
Destruye la tabla de particiones GUID y crea una nueva (esto también crea un pMBR nuevo):
gpt destroy disk0
gpt create -f disk0
-
Reconstruir todas las particiones GUID anteriores:
gpt add -i 1 -b 40 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B disk0
gpt add -i 3 -b 488965176 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk0
gpt add -i 2 -b 409640 -s 409602008 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0
Si obtiene un error de recursos ocupados después de uno de los pasos, simplemente desmonte disk0 nuevamente con
diskutil umountDisk /dev/disk0
Verifique el disco con diskutil verifyDisk disk0
después.
Ingrese diskutil cs list
y verifique si aparecen los cuatro contenedores de CoreStorage: un grupo de volúmenes lógicos, una familia de volúmenes físicos y volúmenes lógicos y un volumen lógico.
Con el UUID del volumen lógico, monte el LV:
Ejemplo:
+-> Logical Volume 9A7B21AA-F9FE-4E65-8C7E-ED2A73744C15
---------------------------------------------------
Disk: disk17
Status: Online
Luego usa:
diskutil mount 9A7B21AA-F9FE-4E65-8C7E-ED2A73744C15
Luego, después de obtener el identificador de disco del LV montado con diskutil list
, verifique el volumen:
diskutil verifyVolume disk17 # probably it's disk17, disk16 or disk18
A continuación, asumo que el identificador de disco es disk17
Si la familia de volúmenes lógicos y el volumen lógico no aparecen, intente lo siguiente:
- iniciar en modo de recuperación de Internet
- Abrir Terminal en la barra de menú Utilidades - > Terminal
-
Obtenga una descripción general (¡especialmente el comando gpt es importante!):
diskutil list
gpt -r show disk0
-
Desmontar disk0:
diskutil umountDisk /dev/disk0
-
Eliminar la entrada de la partición actual para la segunda partición:
gpt remove -i 2 disk0
-
Agregar una nueva entrada de partición "expandida":
gpt add -i 2 -b 409640 -s 488555536 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0
-
Luego repita todos los pasos de verificación:
Verifique el disco con diskutil verifyDisk disk0
después.
Ingrese diskutil cs list
y verifique si aparecen los cuatro contenedores de CoreStorage: un grupo de volúmenes lógicos, una familia de volúmenes físicos y volúmenes lógicos y un volumen lógico.
Con el UUID del volumen lógico, monte el LV:
Ejemplo:
+-> Logical Volume 9A7B21AA-F9FE-4E65-8C7E-ED2A73744C15
---------------------------------------------------
Disk: disk17
Status: Online
Luego usa:
diskutil mount 9A7B21AA-F9FE-4E65-8C7E-ED2A73744C15
Luego, después de obtener el identificador de disco del LV montado con diskutil list
, verifique el volumen:
diskutil verifyVolume disk17 # probably it's disk16, disk17 or disk18
Si obtiene errores, haga una copia de seguridad de los datos o de toda la partición en un volumen externo, luego repare el volumen con diskutil repairVolume disk17
.
Una posibilidad para hacer una copia de seguridad de los datos es dd
. Adjunte una unidad formateada HFS + con al menos 250 GB de espacio libre. Obtenga la ruta al volumen externo con ls /Volumes
. Luego desmonte disk17 y disk0 con diskutil umountDisk disk17
y diskutil umountDisk disk0
.
Luego clona la partición en un archivo:
dd if=/dev/disk0s2 of=/Volumes/ExternalDriveName/disk0s2.rawdevice bs=4m
Si el nombre del volumen contiene espacios, escapa los espacios con barras invertidas: ...of=/Volumes/ExternalDriveName\ With\ Spaces/disk0s2.rawdevice...
.
También puede usar asr
para restaurar la partición en otro disco (como una "copia de seguridad" temporal). Código de verificación%.