Non ero sicuro di pubblicare questo thread qui o nella community di Apple. Tuttavia, poiché sto usando un PC con Ubuntu, lo pubblico qui.
Il mio macbook pro (metà 2015) è fuori servizio. Devo reinstallare OS X su di esso. Nota che non riesco ad accedere alla partizione di ripristino; anche questo è stato spazzato via.
Ho il InstallESD.dmg
file, che ho trovato online; Ho controllato il valore hash.
Vorrei sapere come creare un dispositivo USB avviabile con quel file. Nota che ho una chiave USB con una partizione MBR. Non ne sono sicuro, ma dovrebbe utilizzare il GUID per essere riconosciuto dal mio macbook pro?
Cosa ho provato:
-
Converti il
.dmg
file in un.iso
file, utilizzandodmg2img
:$ dmg2img -v -i Downloads/InstallESD.dmg -o Downloads/ElCapitan.iso
-
Copia il
ElCapitan.iso
file sulla mia chiavetta USB:$ dd if=Downloads/ElCapitan.iso of=/dev/sdb bs=16M && sync
-
Collega la chiavetta USB e avvia.
Risultato:non succede nulla, la chiavetta USB non compare.
Risposta accettata:
C'è uno script pronto che automatizza l'intero processo. Manualmente è come menzionato in MacWorld, ma usando gli strumenti Linux:
InstallESD.dmg
è un'immagine di un disco GPT con partizione HFS+ che contiene file di installazione, ma non è avviabile.
Lavorando come root
, converti InstallESD.dmg
in formato immagine grezza e montalo usando kpartx
:
dmg2img InstallESD.dmg InstallESD.img
kpartx -a InstallESD.img
mount /dev/mapper/loop0p2 /mnt/installesd
InstallESD.dmg
contiene un'altra immagine del disco, BaseSystem.dmg
, che è un disco di installazione avviabile. Ma scriverlo direttamente sull'unità USB non funziona, perché ciò creerebbe una partizione quasi senza spazio libero e priva ancora di alcuni file importanti.
Estrai l'immagine del sistema di base BaseSystem.dmg
, converti in raw e monta anche tu:
dmg2img /mnt/installesd/BaseSystem.dmg BaseSystem.img
kpartx -a BaseSystem.img
mount /dev/mapper/loop1p1 /mnt/basesystem
Formatta l'unità flash USB come HFS+:
sgdisk -o /dev/sdb
sgdisk -n 1:0:0 -t 1:AF00 -c 1:"disk image" -A 1:set:2 /dev/sdb
mkfs.hfsplus -v "OS X Base System" /dev/sdb1
mount /dev/sdb1 /mnt/usbstick
Copia i file di installazione mancanti (attenzione alla fine di /
):
rsync -aAEHW --info=progress2 /mnt/basesystem/ /mnt/usbstick/
rm -f /mnt/usbstick/System/Installation/Packages
rsync -aAEHW -P /mnt/installesd/Packages /mnt/usbstick/System/Installation/
rsync -aAEHW -P /mnt/installesd/BaseSystem.dmg /mnt/usbstick/
rsync -aAEHW -P /mnt/installesd/BaseSystem.chunklist /mnt/usbstick/
sync
E' possibile copiare con altri strumenti (tar, cpio), basta fornire i parametri preservando al massimo i metadati dei file. rsync
supporta anche -X
parametro, dovrebbe copiare gli attributi estesi HFS+, ma in pratica fallisce con l'errore "Operazione non supportata".