Mídia de instalação USB do macOS High Sierra (10.13.6) pelo Linux
Consiste em criar uma única partição HFS+, colocar o conteúdo de
BaseSystem.dmg
dentro e depois copiar alguns arquivos para o
diretório
Install macOS High Sierra.app/Contents/SharedSupport
(incluindo o
próprio BaseSystem.dmg
). Para nossa sorte, o Linux tem suporte
razoável, de leitura e escrita, ao HFS+, desde que não tenha journal.
Instale o pacote hfsplus-tools
(Fedora) ou
hfsprogs
(Debian).
Não funciona em Hackintosh. Rode como root e adapte USBDEV
.
#!/bin/bash set -e # dispositivo a ser usado # apagará tudo! USBDEV=/dev/sdx # para outras versões, pesquisar em # https://swscan.apple.com/content/catalogs/others/index-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz # https://swscan.apple.com/content/catalogs/others/index-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz # https://swscan.apple.com/content/catalogs/others/index-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz # https://swscan.apple.com/content/catalogs/others/index-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz # https://swscan.apple.com/content/catalogs/others/index-12-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz # procurando pelo elemento <key>xxx-xxxxx</key> (ProductID) adequado # # aqui tem um script que automatiza o download, porém é para macOS: # https://github.com/munki/macadmin-scripts # # somas de verificação: # https://github.com/notpeter/apple-installer-checksums # wget http://swcdn.apple.com/content/downloads/06/50/041-91758-A_M8T44LH2AW/b5r4og05fhbgatve4agwy4kgkzv07mdid9/AppleDiagnostics.chunklist wget http://swcdn.apple.com/content/downloads/06/50/041-91758-A_M8T44LH2AW/b5r4og05fhbgatve4agwy4kgkzv07mdid9/AppleDiagnostics.dmg wget http://swcdn.apple.com/content/downloads/06/50/041-91758-A_M8T44LH2AW/b5r4og05fhbgatve4agwy4kgkzv07mdid9/BaseSystem.chunklist wget http://swcdn.apple.com/content/downloads/06/50/041-91758-A_M8T44LH2AW/b5r4og05fhbgatve4agwy4kgkzv07mdid9/BaseSystem.dmg wget http://swcdn.apple.com/content/downloads/06/50/041-91758-A_M8T44LH2AW/b5r4og05fhbgatve4agwy4kgkzv07mdid9/InstallESDDmg.pkg wget http://swcdn.apple.com/content/downloads/06/50/041-91758-A_M8T44LH2AW/b5r4og05fhbgatve4agwy4kgkzv07mdid9/InstallInfo.plist mv InstallESDDmg.pkg InstallESD.dmg # torçamos para que a posição das linhas não mude em outras versões sed -i '30,33d' InstallInfo.plist sed -i 's/InstallESDDmg.pkg/InstallESD.dmg/' InstallInfo.plist sed -i 's/com.apple.pkg.InstallESDDmg/com.apple.pkg.InstallESD/' InstallInfo.plist # 7za não tem todos os recursos do 7-Zip oficial # binário estático 7zzs funcionará em qualquer distribuição wget https://www.7-zip.org/a/7z2201-linux-x64.tar.xz tar -xf 7z2201-linux-x64.tar.xz # queremos o sistema de arquivos ./7zzs e BaseSystem.dmg 4.hfs -t\* # única partição do tipo Apple HFS/HFS+ echo ',,48465300-0000-11AA-AA11-00306543ECAC' | sfdisk --lock=yes --wipe=always --wipe-partitions=always --label=gpt $USBDEV udevadm settle mkfs.hfsplus -v 'OS X Base System' ${USBDEV}1 mkdir -pv /mnt/{mac-base,mac-usb} mount -rv 4.hfs /mnt/mac-base mount -v ${USBDEV}1 /mnt/mac-usb # driver hfsplus trava copiando xattr (alguém disposto a reportar o bug?) cp -avT --no-preserve=xattr /mnt/{mac-base,mac-usb} mkdir -v "$(compgen -G /mnt/mac-usb/Install\*.app)/Contents/SharedSupport" cp -v AppleDiagnostics.* BaseSystem.* InstallESD.dmg InstallInfo.plist /mnt/mac-usb/Install*.app/Contents/SharedSupport umount -v /mnt/{mac-base,mac-usb} rmdir -v /mnt/{mac-base,mac-usb}
Comentários
Postar um comentário