Nebyl jsem si jistý, zda toto vlákno zveřejnit zde nebo v jablečné komunitě. Protože však používám počítač se systémem Ubuntu, zveřejňuji to zde.
Můj macbook pro (polovina roku 2015) je mimo provoz. Potřebuji na něj přeinstalovat OS X. Všimněte si, že nemám přístup k oddílu pro obnovení; byl také vymazán.
Mám soubor InstallESD.dmg
soubor, který jsem našel online; Zkontroloval jsem hodnotu hash.
Chtěl bych vědět, jak vytvořit spouštěcí zařízení USB s tímto souborem. Všimněte si, že mám USB klíč s oddílem MBR. Nejsem si jistý, ale měl by používat GUID, aby jej můj macbook pro rozpoznal?
Co jsem zkusil:
-
Převeďte
.dmg
soubor do.iso
pomocídmg2img
:$ dmg2img -v -i Downloads/InstallESD.dmg -o Downloads/ElCapitan.iso
-
Zkopírujte
ElCapitan.iso
soubor na mém USB klíči:$ dd if=Downloads/ElCapitan.iso of=/dev/sdb bs=16M && sync
-
Zapojte klíč USB a spusťte systém.
Výsledek:nic se neděje, USB klíč se nezobrazí.
Přijatá odpověď:
K dispozici je připravený skript, který celý tento proces automatizuje. Manuálně je to tak, jak je uvedeno v MacWorld, ale pomocí nástrojů Linuxu:
InstallESD.dmg
je obraz disku GPT s oddílem HFS+, který obsahuje instalační soubory, ale sám o sobě nelze zavést.
Pracuje jako root
, převeďte InstallESD.dmg
do formátu obrazu raw a připojte jej pomocí kpartx
:
dmg2img InstallESD.dmg InstallESD.img
kpartx -a InstallESD.img
mount /dev/mapper/loop0p2 /mnt/installesd
InstallESD.dmg
obsahuje jiný obraz disku, BaseSystem.dmg
, což je spouštěcí instalační disk. Ale zápis přímo na USB disk nefunguje, protože by to vytvořilo oddíl s téměř žádným volným místem a stále by postrádal některé důležité soubory.
Rozbalte základní obraz systému BaseSystem.dmg
, převést na raw a také připojit:
dmg2img /mnt/installesd/BaseSystem.dmg BaseSystem.img
kpartx -a BaseSystem.img
mount /dev/mapper/loop1p1 /mnt/basesystem
Naformátujte jednotku USB flash jako 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
Zkopírujte chybějící instalační soubory (pozor na koncovku /
):
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
Je možné kopírovat pomocí jiných nástrojů (tar, cpio), stačí zadat parametry zachovávající většinu metadat souboru. rsync
podporuje také -X
parametr, který má zkopírovat rozšířené atributy HFS+, ale v praxi selže s chybou „Operace není podporována“.