Я не был уверен в регистрации этого потока здесь, или на сообществе яблока. Однако, поскольку я использую ПК под управлением Ubuntu, я отправляю это здесь.
Мой MacBook Pro (середина 2015) является не работающим. Я должен переустановить OS X на нем. Обратите внимание, что я не могу получить доступ к разделу восстановления; это было вытерто также.
Я имею InstallESD.dmg
файл, который я нашел онлайн; я проверил значение хэш-функции.
Я хотел бы знать, как сделать загрузочное USB-устройство с тем файлом. Обратите внимание, что у меня есть флеш-карта с разделом MBR. Я не уверен, но это должно использовать GUID, который будет распознан моим MacBook Pro?
Что я попробовал:
Преобразуйте .dmg
файл к a .iso
файл, с помощью dmg2img
:
$ dmg2img -v -i Downloads/InstallESD.dmg -o Downloads/ElCapitan.iso
Скопируйте ElCapitan.iso
файл на моей флеш-карте:
$ dd if=Downloads/ElCapitan.iso of=/dev/sdb bs=16M && sync
Включите флеш-карту и начальную загрузку.
Результат: ничего не происходит, флеш-карта не появляется.
Если Вы не можете запустить от Восстановления OS X (Опция-R), попробуйте удержание (Option-Command-R) для запуска от интернет-Восстановления OS X.
Ваш Mac (середина 2015) должен инициировать восстановление по Интернету.
Read больше в https://support.apple.com/en-us/HT201314
Существует готовый сценарий, который автоматизирует этот целый процесс. Вручную это как упоминается в MacWorld, но использовании инструментов Linux:
InstallESD.dmg
изображение диска GPT с HFS + раздел, который содержит файлы установщика, но не является загрузочным сам.
Работа a root
, преобразовать InstallESD.dmg
в необработанный формат изображения и монтируют его использование kpartx
:
dmg2img InstallESD.dmg InstallESD.img
kpartx -a InstallESD.img
mount /dev/mapper/loop0p2 /mnt/installesd
InstallESD.dmg
содержит другой образ диска, BaseSystem.dmg
, который является загрузочным диском установщика. Но при записи это непосредственно в Карту памяти не работает, потому что это создало бы раздел почти ни с каким свободным пространством и все еще испытывающий недостаток в некоторых важных файлах.
Образ системы основы извлечения BaseSystem.dmg
, преобразуйте в сырые данные и смонтируйтесь также:
dmg2img /mnt/installesd/BaseSystem.dmg BaseSystem.img
kpartx -a BaseSystem.img
mount /dev/mapper/loop1p1 /mnt/basesystem
Отформатируйте карту флэш-памяти с интерфейсом USB как 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
Недостающие файлы установщика копии (остерегаются окончания /
):
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
Возможно скопировать с другими инструментами (tar, cpio), просто предоставить параметры, сохраняющие большинство метаданных файла. rsync
поддержки также -X
параметр, который, как предполагают, скопировал HFS + расширенные атрибуты, но на практике, это приводит к сбою с ошибкой "Операцию, не поддерживаемую".
После нескольких часов проб и ошибок я наконец смог установить OSX 10.11 "El Capitan" на свой подержанный iMac (середина 2009 г.)! Я попытался использовать прилагаемый к нему интернет-установщик, но он не работал без входа в AppleID первоначального владельца (хотя я специально зашел в iTunes, чтобы «Деавторизовать этот компьютер» перед очисткой исходной установки)
Вместо этого , я скачал файл .dmg установщика «El Capitan» со страницы поддержки Apple: https://support.apple.com/en-us/HT206886
Однако он содержит файл с именем «InstallMacOSX.dmg», а не «InstallESD.dmg». Итак, мне нужно было сначала преобразовать этот файл в изображение: dmg2img InstallMacOSX.dmg InstallMacOSX.img Затем смонтируйте образ: в Linux Mint я использовал щелкните правой кнопкой мыши --> "Открыть с помощью другого приложения..." --> "Установщик образа диска" (но есть много других способов сделать это) Внутри был большой файл под названием «InstallMacOSX.pkg», который я мог извлечь с помощью p7zip или (в Linux Mint): щелкните правой кнопкой мыши --> "Открыть с помощью другого приложения" --> Менеджер архива" Внутри ТАМ можно было найти файл InstallESD.dmg!
Однако хэш sha1 действительно соответствовал любому из значений по адресу: https://github.com/notpeter/apple-installer-checksums#mac-osx-installers-sha1-checksums 6198647687 байт, openssl sha1 УстановитьESD.урон --> 732f873cbcf38d9e544e659d2429bd4444416cda Я почти уверен, что файл является законным (поскольку я загрузил его непосредственно из службы поддержки Apple), поэтому я отредактировал сценарий «mkosxinstallusb.sh» и добавил его в одобренный список. --> увидеть строку, начинающуюся с "supported_checksums="...", и просто добавить ее в конец перед последней закрывающей кавычкой) Кроме того, перед запуском скрипта убедитесь, что ваш USB-накопитель полностью пуст. В моем случае я фактически подключил его к Mac и отформатировал с помощью Дисковой утилиты в «OS X Extended (Journaled)» (таблица разделов GUID) перед тем, как начать. (Я пробовал это однажды раньше с частично занятым USB-накопителем, и на нем закончилось место, прежде чем он смог закончить). Я не уверен, насколько велика разница в форматировании с помощью Дисковая утилита, но это то, что сработало для меня! Затем я запустил «sudo bash mkosxinstallusb.sh /dev/sdX «InstallESD.dmg», а сценарий позаботился обо всем остальном. Наконец, я смог загрузить Mac, удерживая «option/alt», и мой USB-накопитель появился как загрузочное устройство! Через 17 минут я могу запустить OSX!
Я могу продолжить и повторно загрузить установщик и создать новый загрузочный USB с помощью «createinstallmedia», на случай, если возникнут проблемы с образом, который я использовал, но, по крайней мере, теперь я могу загрузить компьютер!
Это работает! Я использовал его для создания USB-накопителя из установщика El Capitan, используя InstallESD.dmg, который вы найдете внутри InsallMacOSX.dmg. Нет необходимости пытаться использовать скрипт, так как он работает со списком команд в файле readme. так что это:
mkdir -p /mnt/OSX_InstallESD /mnt/OSX_BaseSystem /mnt/usbstick # convert installer disk image to raw format dmg2img "Install OS X .app/Contents/SharedSupport/InstallESD.dmg" InstallESD.img kpartx -a InstallESD.img mount /dev/mapper/loop0p2 /mnt/OSX_InstallESD # convert base system disk image to raw format dmg2img /mnt/OSX_InstallESD/BaseSystem.dmg BaseSystem.img kpartx -a BaseSystem.img mount /dev/mapper/loop1p1 /mnt/OSX_BaseSystem # partition the USB flash drive, /dev/sdX sgdisk -o /dev/sdX sgdisk -n 1:0:0 -t 1:AF00 -c 1:"disk image" -A 1:set:2 /dev/sdX mkfs.hfsplus -v "OS X Base System" /dev/sdX1 mount /dev/sdX1 /mnt/usbstick # copy installer files rsync -aAEHW /mnt/OSX_BaseSystem/ /mnt/usbstick/ rm -f /mnt/usbstick/System/Installation/Packages rsync -aAEHW /mnt/OSX_InstallESD/Packages /mnt/usbstick/System/Installation/ rsync -aAEHW /mnt/OSX_InstallESD/BaseSystem.chunklist /mnt/usbstick/ rsync -aAEHW /mnt/OSX_InstallESD/BaseSystem.dmg /mnt/usbstick/ sync
Только вещи, которые необходимо принять во внимание, это: Выполняйте все команды от имени root! так что используйте "sudo su" kpartx вам нужно добавить -v (подробно), чтобы увидеть, какой цикл создан так: kpartx -av InstallESD.img на моих машинах было уже 12 петель время от времени используйте «df», чтобы увидеть, какие разделы и имена у вас есть в вашей системе. Единственное, что вам нужно изменить на линиях. «loop0p2», «loop1p1» и «dev/sdX» в соответствии с вашим креплением USB.
В какой-то момент вам нужно размонтировать USB-накопитель, если появляется сообщение «Точка монтирования занята».
в я только что вставил свою историю терминала, которая дала мне работающий USB-накопитель. спасибо всем вышеперечисленным за указание в правильном направлении! начинается с "судо су" я уже извлек из установщика файл InstallESD и лежит в рабочем каталоге
38 dmg2img InstallESD.dmg InstallESD.img 39 kpartx -av InstallESD.img 40 mount /dev/mapper/loop14p2 /mnt/OSX_InstallESD 41 dmg2img /mnt/OSX_InstallESD/BaseSystem.dmg BaseSystem.img 42 kpartx -av BaseSystem.img 43 mount /dev/mapper/loop15p1 /mnt/OSX_BaseSystem 44 df 45 history 46 sgdisk -o /dev/sdb 47 sgdisk -og /dev/sdb 48 man partprobe #got a message that the partition was not going to be visible untill I use partprobe or reboot 49 partprobe -s 50 sgdisk -n 1:0:0 -t 1:AF00 -c 1:"disk image" -A 1:set:2 /dev/sdb 51 partprobe -s 52 man kpartx 53 kpartx -u 54 kpartx -ul 55 mkfs.hfsplus -v "OS X Base System" /dev/sdb1 56 mount /dev/sdb1 /mnt/usbstick 57 df 58 umount /dev/sdb 59 mount /dev/sdb1 /mnt/usbstick 60 rsync -aAEHW /mnt/OSX_BaseSystem/ /mnt/usbstick/ 61 rm -f /mnt/usbstick/System/Installation/Packages 62 rsync -aAEHW /mnt/OSX_InstallESD/Packages /mnt/usbstick/System/Installation/ 63 rsync -aAEHW /mnt/OSX_InstallESD/BaseSystem.chunklist /mnt/usbstick/ 64 rsync -aAEHW /mnt/OSX_InstallESD/BaseSystem.dmg /mnt/usbstick/ 65 sync