Unidad DIY Fusion: agregando Recovery HD a un grupo de volúmenes CoreStorage

10

Después de crear un "DIY Fusion Drive" usando los métodos a continuación en 10.8, ahora me pregunto cómo agregar una partición RecoveryHD al disco interno.

Esto es lo que hice para crear un grupo de volúmenes lógicos en dos volúmenes físicos (128G SSD / 750GHD)

(make a clone / backup of all your data first)
diskutil list (take note of the disk## of the two drives. In my case: disk0/disk1)
diskutil corestorage create fusion_volume_group disk0 disk1
diskutil corestorage list (take note of the Logical Volume Group UUID)
diskutil corestorage createVolume <UUID> jhfs+ FusionHD 749g
restore the clone onto the FusionHD

Esto funcionó muy bien, pero ahora mi RecoveryHD se ha ido. Me gustaría agregarlo nuevamente (está en la unidad externa que cloné de mi HD original)

Así es como se ve el diseño de la partición en este momento:

$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *120.0 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:          Apple_CoreStorage                         119.7 GB   disk0s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
   1:                        EFI                         209.7 MB   disk1s1
   2:          Apple_CoreStorage                         749.3 GB   disk1s2
   3:                 Apple_Boot Boot OS X               650.0 MB   disk1s3
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS FusionHD               *744.5 GB   disk2

¿Alguien sabe los comandos diskUtil para agregar la recuperación HD? Idealmente después del hecho, ¿qué es donde estoy ahora?

Jess Bowers
fuente

Respuestas:

6

Primero deberá particionar las unidades, colocando la partición de recuperación en una de sus unidades físicas. No puede ser parte de la unidad Fusion, ya que es poco probable que pueda arrancar directamente en un volumen lógico de Core Storage (necesita un cargador de arranque por separado).

Tome nota de la estructura de partición en este artículo de Ars Technica sobre la unidad Fusion.

La mejor manera de hacer esto es probablemente comenzar de nuevo reinstalando Mountain Lion en el SSD o HDD, luego repita el proceso de Fusion con la partición adecuada.

Una vez que haya realizado una instalación estándar, verifique sus particiones ejecutando diskutil list, lo que debería dar una salida similar a esta:

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *120.0 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            119.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

Tome nota del identificador de la Macintosh HDpartición ( disk0s2en este caso).

Luego, siga los mismos pasos que realizó anteriormente, pero cambie el diskutil corestorage create fusion_volume_groupcomando para especificar el disk0s2(o el equivalente en su caso) y el identificador de la unidad en la que no instaló OS X. El comando resultante debería ser similar diskutil corestorage create fusion_volume_group disk0s2 disk1 pero asegúrese de tener los identificadores correctos. La clave es que queremos hacer un grupo de volúmenes solo con la partición Macintosh HD, no con toda la unidad (para que las particiones EFI y Recovery no se borren). Luego siga el resto del procedimiento como lo hizo antes.

ladrones
fuente
¿Sabes cuáles serían los comandos de diskutil para hacer esa operación?
Jess Bowers, el
Agregué que más información debería funcionar, pero no tengo una configuración en la que realmente pueda probarla. El material de la unidad Fusion está bastante indocumentado en este momento, y estamos trabajando en lo que algunas personas han inventado por prueba y error. Asegúrese de publicar cualquier resultado que obtenga aquí.
ladrones el
Creo que tienes razón al especificar disk0s2 en lugar de disk0. No puedo verificar esto hoy, ya que el fin de semana fue mi tiempo de 'destrozar mi máquina y reconstruir'. Ahora tengo que trabajar! Intentaré probar esto pronto.
Jess Bowers el
Acabo de instalar 10.8.2 en un nuevo volumen CS vacío (SSD de 120 GB + HDD de 640 GB) para ver si el instalador de ML agregaría una nueva partición de recuperación, no fue así. Por lo tanto, las instrucciones anteriores deben ser correctas, intentaremos en la próxima implementación de prueba.
da4
¡ÉXITO! Finales de 2008 MacBook Pro, segundo HD en la ranura de la unidad óptica: reemplacé el disco duro principal de 320 GB con un SSD de 256 GB. Siguiendo a @robmather: instalé Mountain Lion en el SSD; arrancó el MBP desde una unidad externa; estudió la diskutil listsalida para obtener el IDENTIFICADOR de disco para "Macintosh HD" en el SSD. Lo usé con los comandos de corestorage de diskutil para crear un volumen de fusión. Arrancado desde Recovery Volume, instalé ML y migré todo el disco original a mi nuevo volumen de fusión de 560GB. Todo funciona, incluso Ubuntu en VMWare. Pedí un HD de 1 TB lento / barato; ¡pronto mi MBP de 4 años se enciende en w 8GB, 1.25TB, SSD!
Bruce Van Allen
5

Ok, he resuelto el problema sin volver a formatear ni reinstalar. Esperemos que la mayoría de las personas no terminen en esta situación. Consulte la respuesta @robmathers para obtener consejos sobre cómo evitar eliminar su Recovery HD en primer lugar.

ADVERTENCIA, los siguientes comandos tienen un nivel bastante bajo y pueden hacer que pierda datos. Tome las precauciones adecuadas (copia de seguridad, clonación, etc.).

Pero para cualquier persona en mi situación después de que RecoveryHD ya se haya ido, esto es lo que hice:

  1. Copia de seguridad de todos los datos / clonar su disco
  2. Cree un USB de arranque (o use un HD existente) con 10.8
  3. Arranque en esa unidad alternativa (para que no esté modificando el HD que ha montado actualmente)
  4. Desmonta el Fusion HD
  5. Abra la terminal, cambie al superusuario y siga estas instrucciones:

Enumere la configuración actual y tome nota de qué unidades va a modificar. Sus tamaños exactos y GUID serán diferentes a los míos. Es crucial usar sus números en lugar de los míos .

diskutil corestorage list

Tome nota del UUID de la unidad física a la que está agregando la recuperación.

diskutil list

Tome nota del tamaño exacto en bytes de la recuperación en el disco de inicio actual (disk2s3 puede ser diferente para usted).

diskutil info disk2s3

Cambie el tamaño del volumen físico para la unidad a la que desea agregar la partición de recuperación. Para determinar el tamaño, busque @ la partición de recuperación existente en el USB. En mi caso, era poco menos de 1 GB. Para el siguiente comando, pvUUID es el UUID de la unidad a la que está agregando la recuperación, el tamaño es 1 GB menos que el tamaño actual.

diskutil coreStorage resizeDisk <pvUUID> <size> JHFS+ Recovery 784220160B

NOTA: es posible que deba desmontar los volúmenes repetidamente en los siguientes pasos. OSX tiende a volver a montar agresivamente los volúmenes.

Vuelva a particionar la nueva partición "Recuperación" de un jHFS + a Apple_Boot. Primero, tome nota del inicio / tamaño exacto de la partición.

gpt show disk0

     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  246725744      2  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
247135384     262144
**247397528    1269528       3  GPT part - 48465300-0000-11AA-AA11-00306543ECAC**
248667056    1402591
250069647         32         Sec GPT table
250069679          1         Sec GPT header 

Ahora elimine la partición y vuelva a agregarla con un UUID diferente (el UUID es lo que determina el tipo de partición)

gpt remove -b 247397528 -s 1269528 -t 48465300-0000-11AA-AA11-00306543ECAC disk0
gpt add -b 247397528 -s 1269528 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk0

Ahora copie toda la partición de recuperación de la buena a esta nueva:

dd if=/dev/disk2s3 of=/dev/disk0s3

Muchas gracias a los siguientes sitios de referencia. Lea sobre ellos antes de sumergirse, si no comprende alguno de estos pasos.

http://blog.fosketts.net/2011/08/05/undocumented-corestorage-commands/

http://www.dmitry-dulepov.com/2011/09/how-to-create-mac-os-x-lion-recovery.html

Jess Bowers
fuente
actualización: esta configuración se ha estado ejecutando sin problemas desde el 12/12.
Jess Bowers
0

Encuentro algunas buenas respuestas en esta publicación. He elaborado una guía paso a paso para volver a particionar el disco duro con una partición de Windows (para Windows 7/8 Bootcamp) dentro del primer espacio de 2.2 TB y reconstruir la unidad de fusión usando tres particiones.

Encontrará útil mi guía en http://jochem.ke-works.com/post/38498466700/bootcamp-on-3tb-fusion-drive-macosx

jochem
fuente
1
Las respuestas a Ask Different deben ser más que un simple enlace. Está bien incluir un enlace, pero resumirlo o extraerlo en la respuesta. La idea es hacer que la respuesta sea independiente.
Daniel
0

Jess Bowers publicó una solución realmente agradable, pero funcionó bien para mí solo hasta esta:

diskutil coreStorage resizeDisk <pvUUID> <size> JHFS+ Recovery 784220160B

Y la salida fue:

Error: -69720: There is not enough free space in the Core Storage Logical Volume Group for this operation

La solución es cambiar el tamaño del volumen lógico primero. Para el siguiente comando, lvUUIDes el UUID del volumen lógico y sizees igual a current size of the Logical Volume- size of the Recovery partition(o 1GB less than the current sizesi sigue la solución de Jess Bowers palabra por palabra):

diskutil coreStorage resizeVolume <lvUUID> <size>

Y justo después de eso resizeDisk...y el resto de su solución funcionó a las mil maravillas.

PD. Acabo de registrarme para no poder comentar directamente, lo siento.

usuario54088
fuente
0

Intentando recuperar Mac Mini de Time Machine Backup

Tengo una Mac Mini 2012 con una unidad de fusión de ~ 120GB + 1TB.

Lo agarré un poco al intentar instalar un arranque dual de Ubuntu y no pude restaurarlo desde mi copia de seguridad de Time Machine debido a "Hubo un error al crear el disco de recuperación".

Para solucionarlo, eliminé todos los volúmenes de todos los tipos del disco y comencé de nuevo, dejando 5 gb de espacio para crear la partición de recuperación.

Como ahora sé cómo terminó la tabla (que volveré a publicar ... mañana después de que se restablezca la copia de seguridad), estoy seguro de que también podría haberlo hecho cambiando el tamaño.

PELIGRO

Todos estos comandos son muy peligrosos si tiene datos en su (s) disco (s).

Estoy usando los comandos reales que usaría, que son los comandos reales que alguien más con una unidad de fusión instalada de fábrica necesitaría usar.

A menos que la razón por la que intentas agregar una unidad de recuperación sea que tu unidad ya está completamente en mal estado, NO recomendaría seguir estos pasos.

SIN EMBARGO, pueden aparecer como referencias útiles además de otras instrucciones en estas publicaciones.

Inspeccionar volúmenes

Mire para ver qué hay allí y haga los juicios adecuados primero:

# See all physical partitions
diskutil list

# See all core storage volumes
diskutil cs list

Eliminar todos los volúmenes

Luego elimine lo que sea necesario eliminar:

# Delete a Logical Volume
diskutil cs deleteVolume <lvUUID>

# Delete a Physical Volume
diskutil cs deleteDisk <pvUUID>

# Delete a Logical Volume Group (everything)
diskutil cs delete <lvgUUID>

Recree la tabla de partición desde cero, si es necesario:

# Re-partition and format the HDD
# `R` means Remainder
# `5G` means ~4.7GiB
diskutil partitionDisk disk0 2 GPT \
    JHFS+ Macintosh\ HD R \
    JHFS+ Recovery\ HD 5G

# Re-partition and format the SSD
# the remainder, `R`, is 100% of the usable disk space
diskutil partitionDisk disk1 1 GPT \
    JHFS+ Macintosh\ HD R

Crear almacenamiento central

Este será "Macintosh HD" como sabes y amas

# Create a logical volume group named "Macintosh HD"
diskutil cs create Macintosh\ HD disk0s2 disk1

# Create a volume (of the same name) using 100% of the group
diskutil cs createVolume <lvgUUID> jhfs+ Macintosh\ HD 100%

Nota: es posible que desee reiniciar en esta etapa para asegurarse de que los volúmenes estén en el orden correcto.

Desmontar todas las cosas

diskutil unmount "Macintosh HD"
diskutil unmount "Recovery HD"
diskutil unmountDisk /dev/disk0
diskutil unmountDisk /dev/disk1

Liberar espacio

El propósito de crear "Recuperación HD" anteriormente, suponiendo el escenario en el que desea restaurar desde una copia de seguridad de Time Machine, es simplemente reservar espacio adicional al final de uno de los discos para que no se absorba en ningún otro volumen .

Ahora es el momento de liberarlo para que el proceso de restauración pueda crearlo nuevamente.

Primero verifique nuevamente para ver qué particiones existen. Los números deben coincidir con la salida de diskutil, pero si no, reiniciar o confiar de gptnuevo diskutil.

Los sizes no están listados en bytes sino en sectores, que probablemente sean 4KiB. Puede ser mejor saber cuál es cuál por relación que por tamaño exacto.

gpt -r show /dev/disk0

Ahora elimine la partición correspondiente a "Recuperación HD". Después de un reinicio que había cambiado de disk0s3a disk0s4para mí.

gpt remove -i 4

Después de eso, dejé de recibir el error de no poder crear una partición de recuperación. Mañana sabré si la recuperación de TM realmente funcionó. No estoy seguro de que lo hará, ya que no escucho mucho sobre la actividad del disco en la unidad de copia de seguridad. : - /

Recursos

Nota: cambiar el tamaño del almacenamiento central

Muchas de las cosas que miré solo mostraban cómo cambiar el tamaño Y crear un nuevo volumen, pero puede cambiar el tamaño sin crear un nuevo volumen.

# First resize the logical volume
diskutil coreStorage resizeVolume <lvUUID> 1T

# Next resize the physical volume
diskutil coreStorage resizeDisk <pvUUID> 997G

# Tada! You have free space!

Nota: Establezca el tipo de recuperación HD

No pude obtener éxito al crear un volumen de recuperación en blanco. Sin embargo, si tiene BaseSystem.dmg y puede restaurarlo, puede configurar el tipo de volumen para que sea una partición de recuperación oculta.

# Unmount to be able to make changes
diskutil unmount /dev/disk0s3

# Change the type from Apple_HFS to Apple_Boot
asr adjust -target /dev/disk0s3 -settype Apple_Boot
CoolAJ86
fuente
-1

Aquí hay un video que describe el proceso, además de algunos puntos de referencia: http://www.youtube.com/watch?v=I_odnNpv-FQ

Comandos que necesitará en orden:

lista diskutil

diskutil cs crea Fusion diskx diskx

NOTA: Puede reemplazar Fusion con lo que quiera nombrar a su Grupo de Volumen Lógico

lista de cs de diskutil

diskutil coreStorage createVolume YOUR_DEVICE_ID_HERE jhfs + "Macintosh Fusion" 100%

NOTA: Puede reemplazar "Macintosh Fusion" con el nombre que desee para su unidad. Recuerde utilizar "" 's si desea un espacio en su nombre como lo hicimos nosotros, de lo contrario no los necesita.

Una vez finalizada la instalación, abra el terminal y gire la indexación:

sudo mdutil -i off

Si desea volver a 2 unidades separadas, inicie nuevamente el instalador, abra Terminal y escriba:

diskutil cs eliminar YOUR_DEVICE_ID

A continuación, podrá formatearlos, sin embargo, le gustaría usar Terminal o Utilidad de Discos

usuario34140
fuente
No está claro lo que está haciendo aquí para hacer la recuperación HD. ¿Podría editar los elementos no relacionados para mantener este hilo delgado y malo?
bmike