Android распаковать boot img

Android распаковать boot img

/ramdisk# gzip -dc ../boot.img-ramdisk.gz | cpio -i
986 блок
[email protected]:

#
В папке ramdisk 18 объектов, всего 514,6 КБ
Где все остальное ?? где файлы ядра ?

Какие еще файлы ядра??

boot.img-kernel — это zImage-образ ядра. Если ты имеешь ввиду исходники ядра, то с образа их никак не получишь.
boot.img-ramdisk.gz — cpio/gz архив рамдиска с init.rc и прочей хренью. Его содержимое распаковано в папку ramdisk.
А больше ничего в буте и нету. То же самое касается и recovery.img

system.img (и userdata.img) — образ файловой системы в формате yaffs2. Распаковывается утилитой unyaffs под линухом. Ну или могу под винду утилиту подкинуть.

Ну что же, мысль здравая, если знаете что к чему.

1 Скачайте/найдите в интернете исходники для своего устройства. Если устройство htc, то developer.htc.com, если другое, ищите в интернете.
2 Ввнесите нужные изменения в файл arch/arm/mach-msm/acpuclock.c,
3 Скачайте к примеру NDK с андроидовского сайта (нужно для кросс-компиляции). Как я понял, у вас убунту. Тогда дальше все просто.
4 ARCH=arm CROSS_COMPILE=/путь_куда_установили_ndk/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make zImage
5 mkbootimg —kernel arch/arm/boot/zImage —ramdisk ваш_рамдиск.gz —cmdline то_что_писало_когда_вы_извлекали_рамдиск -o boot.img
6 adb push boot.img /cache/ && adb shell flash_image boot /cache/boot.img

Нельзя ли поподробней с компиляцией ?
Вот эту строку которую вы указали, ка я понял надо вписывать в Makefile ? И вообщем у последнего NDK совсем другой путь папок ! Может дадите ссылку на ваш NDK ?
И еще можно ли делать компиляцию через arm-2007q3 как написано тут http://www.anddev.org/learning_porting_and. step-t3252.html .
Или через windows компиляцию сделать можно ?

Сообщение отредактировал bobjob — 17.02.11, 17:33

unyaffs под винду.
При распаковке:
— теряются owners, permissions и даты создания/изменения/доступа
— симлинки заменяются на файлы в фигурных скобках <>, внутри — путь куда указывает симлинк
Просто для извлечения данных этого вполне достаточно.
Написано на коленке в делфях.
Использование: unyaffs.exe файл.img
Cygwin не нужен.

Скачать: unyaffs.zip ( 12.23 КБ )

Источник

Android распаковать boot img

/ramdisk# gzip -dc ../boot.img-ramdisk.gz | cpio -i
986 блок
[email protected]:

#
В папке ramdisk 18 объектов, всего 514,6 КБ
Где все остальное ?? где файлы ядра ?

Какие еще файлы ядра??

boot.img-kernel — это zImage-образ ядра. Если ты имеешь ввиду исходники ядра, то с образа их никак не получишь.
boot.img-ramdisk.gz — cpio/gz архив рамдиска с init.rc и прочей хренью. Его содержимое распаковано в папку ramdisk.
А больше ничего в буте и нету. То же самое касается и recovery.img

system.img (и userdata.img) — образ файловой системы в формате yaffs2. Распаковывается утилитой unyaffs под линухом. Ну или могу под винду утилиту подкинуть.

Ну что же, мысль здравая, если знаете что к чему.

1 Скачайте/найдите в интернете исходники для своего устройства. Если устройство htc, то developer.htc.com, если другое, ищите в интернете.
2 Ввнесите нужные изменения в файл arch/arm/mach-msm/acpuclock.c,
3 Скачайте к примеру NDK с андроидовского сайта (нужно для кросс-компиляции). Как я понял, у вас убунту. Тогда дальше все просто.
4 ARCH=arm CROSS_COMPILE=/путь_куда_установили_ndk/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make zImage
5 mkbootimg —kernel arch/arm/boot/zImage —ramdisk ваш_рамдиск.gz —cmdline то_что_писало_когда_вы_извлекали_рамдиск -o boot.img
6 adb push boot.img /cache/ && adb shell flash_image boot /cache/boot.img

Нельзя ли поподробней с компиляцией ?
Вот эту строку которую вы указали, ка я понял надо вписывать в Makefile ? И вообщем у последнего NDK совсем другой путь папок ! Может дадите ссылку на ваш NDK ?
И еще можно ли делать компиляцию через arm-2007q3 как написано тут http://www.anddev.org/learning_porting_and. step-t3252.html .
Или через windows компиляцию сделать можно ?

Сообщение отредактировал bobjob — 17.02.11, 17:33

unyaffs под винду.
При распаковке:
— теряются owners, permissions и даты создания/изменения/доступа
— симлинки заменяются на файлы в фигурных скобках <>, внутри — путь куда указывает симлинк
Просто для извлечения данных этого вполне достаточно.
Написано на коленке в делфях.
Использование: unyaffs.exe файл.img
Cygwin не нужен.

Скачать: unyaffs.zip ( 12.23 КБ )

Источник

Как легко распаковать и перепаковать файлы boot и ramdisk

Учитывая, что модификация прошивки такая же старая, как и сама ОС Android, попасть в игру для новичков может быть довольно сложно. Например, для прошивки определенных пользовательских ПЗУ требуется несколько шагов, таких как извлечение официального загрузочного образа и его прошивка на устройстве перед окончательным завершением процесса и прошивка файлов пользовательских ПЗУ вместе с ним.

Хотя в некоторые руководства вы найдете в Интернете включенные файлы boot.img, в других случаях вам может потребоваться самостоятельно изменить загрузочный образ, а затем переупаковать его. Поскольку операционная система Android для мобильных телефонов является производной от Linux, единственный способ сделать это — использовать платформу на основе Linux или эмулировать ее на вашем ПК с Windows.

Скрипты для распаковки и перепаковки файла boot.img

Пользователь XDA CNexus просеянных через Интернет, чтобы найти и составить список инструментов для распаковки и переупаковки файла образа загрузки, все из которых можно загрузить, используя ссылку, приведенную ниже.

Команды, которые вы должны знать

  1. boot_info Файл, включенный в пакет, позволяет вам получить базовый адрес и адрес виртуального диска файла boot.img, который вам позже понадобится для повторной упаковки.
  2. split_boot (split_bootimg.pl) помогает извлечь ramdisk и zImage из файла boot.img в отдельную папку.
  3. unpack_ramdisk позволяет распаковать файл ramdisk с помощью следующей команды:
    Использование: unpack_ramdisk
  4. repack_ramdisk функция позволит вам перепаковать файл ramdisk из заданного каталога, используя следующую команду:
    Использование: repack_ramdisk [outputFile]
  5. mkbootimg Команда поможет вам создать новый файл boot.img из имеющихся у вас файлов ramdisk и zImage (полезно для создания измененных файлов boot.img).
  6. umkbootimg делает прямо противоположное и разделяет ядро ​​и загрузочный образ.
  7. распаковать просто распакует файл boot.img в один каталог, а виртуальный диск в отдельный каталог для удобства.
Читайте также:  Как работает блокировка вызовов андроид

Совместимость с Windows: что нужно знать

  1. Если у вас нет запущенной операционной системы Linux, вы можете эмулировать ее на своем ПК с Windows, используя это официальное руководство.
  2. Инструмент был протестирован для работы с Debian, но не подтвержден для работы с Cygwin.
  3. Все сценарии в файле .ZIP должны быть сохранены в папке на пути к системе Linux, в которой вы работаете, чтобы они могли быть обнаружены (пример:

Как использовать распаковку и перепаковать загрузку и распаковку файла ramdisk

Что ж, нам нужно использовать файл split_boot, поскольку он содержит сценарий, чтобы сначала распаковать файл boot.img, получить из него файл ramdisk, а затем извлечь файл ramdisk.

  1. Скачать инструмент загрузки из здесь.
  2. Сейчас, извлекать его в отдельную папку, чтобы получить эти файлы.
  3. Теперь предоставьте этим файлам необходимые разрешения. Итак, запустите команду ниже в папке, где у вас есть все файлы.

  • Поместите файл boot.img, который вы хотите извлечь, в ту же папку, что и эти файлы на вашем ПК.
  • Чтобы извлечь файл загрузочного образа и файл виртуального диска, выполните приведенную ниже команду.
  • Это создаст новую папку с именем ботинок в вашей текущей папке. Папка загрузки будет содержать файл ядра загрузочного образа, файл ramdisk и папку ramdisk, содержащую данные, извлеченные из файла ramdisk.
  • Вот и все. Вносить изменения в файл папки ramdisk, как вам нужно.
  • Копировать все основные файлы инструмента (boot_info, mkbootimg, repack_ramdisk, split_boot и unpack_ramdisk) в загрузочную папку, содержащую папку ramdisk.
  • Перепаковать файл ramdisk используя команду ниже. Это создаст новый файл ramdisk с именем new-boot.img-ramdisk.cpio.gz в папке загрузки. (Вы можете изменить имя выходного файла с new-boot.img-ramdisk.cpio.gz на любое по вашему выбору.)
  • Перепаковать загрузочный файл используя команду ниже. Это создаст новый файл образа загрузки с именем new-boot.img в папке загрузки.
  • Вот и все. Работа сделана! Вы успешно распаковали и переупаковали файлы загрузочного и RAM-диска. Теперь ваш каталог будет выглядеть так. Обратите внимание на новые файлы boot и ramdisk на скриншоте ниже.
  • Как это было? Удалось ли вам легко пользоваться инструментами?

    Источник

    Android распаковать boot img

    /ramdisk# gzip -dc ../boot.img-ramdisk.gz | cpio -i
    986 блок
    [email protected]:

    #
    В папке ramdisk 18 объектов, всего 514,6 КБ
    Где все остальное ?? где файлы ядра ?

    Какие еще файлы ядра??

    boot.img-kernel — это zImage-образ ядра. Если ты имеешь ввиду исходники ядра, то с образа их никак не получишь.
    boot.img-ramdisk.gz — cpio/gz архив рамдиска с init.rc и прочей хренью. Его содержимое распаковано в папку ramdisk.
    А больше ничего в буте и нету. То же самое касается и recovery.img

    system.img (и userdata.img) — образ файловой системы в формате yaffs2. Распаковывается утилитой unyaffs под линухом. Ну или могу под винду утилиту подкинуть.

    Ну что же, мысль здравая, если знаете что к чему.

    1 Скачайте/найдите в интернете исходники для своего устройства. Если устройство htc, то developer.htc.com, если другое, ищите в интернете.
    2 Ввнесите нужные изменения в файл arch/arm/mach-msm/acpuclock.c,
    3 Скачайте к примеру NDK с андроидовского сайта (нужно для кросс-компиляции). Как я понял, у вас убунту. Тогда дальше все просто.
    4 ARCH=arm CROSS_COMPILE=/путь_куда_установили_ndk/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make zImage
    5 mkbootimg —kernel arch/arm/boot/zImage —ramdisk ваш_рамдиск.gz —cmdline то_что_писало_когда_вы_извлекали_рамдиск -o boot.img
    6 adb push boot.img /cache/ && adb shell flash_image boot /cache/boot.img

    Нельзя ли поподробней с компиляцией ?
    Вот эту строку которую вы указали, ка я понял надо вписывать в Makefile ? И вообщем у последнего NDK совсем другой путь папок ! Может дадите ссылку на ваш NDK ?
    И еще можно ли делать компиляцию через arm-2007q3 как написано тут http://www.anddev.org/learning_porting_and. step-t3252.html .
    Или через windows компиляцию сделать можно ?

    Сообщение отредактировал bobjob — 17.02.11, 17:33

    unyaffs под винду.
    При распаковке:
    — теряются owners, permissions и даты создания/изменения/доступа
    — симлинки заменяются на файлы в фигурных скобках <>, внутри — путь куда указывает симлинк
    Просто для извлечения данных этого вполне достаточно.
    Написано на коленке в делфях.
    Использование: unyaffs.exe файл.img
    Cygwin не нужен.

    Скачать: unyaffs.zip ( 12.23 КБ )

    Источник

    Как распаковать и отредактировать boot.img для портирования ПЗУ?

    Я недавно загрузил этот диск для моего Allview P5 (Allview P5 является эквивалентом Gionee GN700W / FLY IQ441 / QMobile Noir A8). Он называется Primonex ROM и предназначен для версии телефона Gionee.

    • Сначала я попытался установить его как есть, но он застрял на экране загрузки.
    • После некоторых исследований я обнаружил, что это может быть проблема с boot.img файлом, и я не знаю, как извлечь или отредактировать его .

    Может кто-нибудь сказать мне, как это сделать?

    Выбор инструментов

    Метод, который я здесь представляю, основан на исходном коде CyanogenMod для Android.

    В то время как AOSP от Google только предоставляет инструмент для создания в boot.img файл, CyanogenMod также добавляет unpackbootimg инструмент , позволяющий вам распаковать его. Этот инструмент, похоже, не предназначен специально для CyanogenMod, так что, скорее всего, он будет работать и для других ПЗУ.

    Существует, однако, относительно большое количество альтернатив для распаковки boot.img файла, которые работают более или менее одинаково.

    По сути, такой инструмент распаковки извлечет содержимое boot.img файла и отобразит набор параметров, которые вам нужно будет передать в Google. mkbootimg инструменту для создания файла, конфигурация которого (в основном параметры ядра и адреса памяти) будет соответствовать исходному.

    Вот несколько примеров, я не проверял их лично, поэтому не могу рекомендовать их, и я представляю их только для справочных целей:

    Некоторые из них с открытым исходным кодом или на основе сценариев:

    • Android Kitchen, видимо, предназначался как своего рода швейцарский армейский нож для разработчиков Android. Первоначальный автор официально прекратил поддерживать проект, несколько других пользователей разветвляли его как javilonas или cmotc .
    • szym нацеливается на простоту , добавляя оболочки оболочки сценариев в свой набор инструментов, чтобы сделать процесс распаковки и повторной упаковки более простым.
    • osm0sis предлагает набор инструментов CyanogenMod, «разветвленных и обновленных» в соответствии с собственным описанием проекта. Этот проект, кажется, действительно все еще поддерживается, что не очень распространено в этой области, однако фактическое преимущество перед оригинальными инструментами CyanogenMod для меня остается неясным.

    Некоторые из них являются бесплатными закрытыми исходными кодами:

    • Kuisma unmkbootimg довольно часто появляется на справочных форумах и, по-видимому, хорошо справляется со странными случаями, выдает «удобочитаемые» рекомендации на английском языке, когда в mkbootimg исходном коде требуются некоторые изменения, и отображает точную командную строку, используемую для перестройки изображения.
    • Xiaolu, mkbootimg_tools кажется, также упоминается довольно часто и позволяет распаковывать и перепаковывать boot.img и файл дерева устройств dt.img . Не обманывайте себя тем , что размещен на GitHub: она является закрытым исходным кодом двоичном и только скомпилированные исполняемые файлы доступны на их хранилище ( на самом деле я даже интересно о точном интересе использования репозитория исходного кода в хранилище двоичные капли, но разные люди, разные умы . ).
    • CNexus на форуме XDA предоставляет архив с набором инструментов.
    • Этот ответ в Unix.SE рекомендует некоторые инструменты из ныне несуществующего проекта Android Serial Port. Однако имена файлов заставляют меня думать, что это должны быть старые готовые версии инструментов CyanogenMod (проект закрыт, документации и поддержки нет).

    Все эти инструменты (и другие, которые вы можете найти в любой поисковой системе) должны работать одинаково, но некоторые могут работать лучше, чем другие в обработке какого-то конкретного крайнего случая, с которым вы можете столкнуться на своем собственном устройстве. Однако большинство из них, по крайней мере на арене с открытым исходным кодом, не поддерживаются регулярно, поэтому, на мой взгляд, лучше всего иметь рабочие, поддерживаемые и документированные инструменты — использовать инструменты CyanogenMod.

    Некоторые производители выпускают ПЗУ, более или менее далекие от стандарта AOSP (необычные адреса, заголовки, формат файла и т. Д.). Если приведенная ниже стандартная процедура не работает, возможно, одно из этих альтернативных программных решений поможет. В противном случае вам придется проверять наличие проблем, характерных для вашего устройства: некоторым, кажется, требуется определенная процедура или даже специальные инструменты (например, этот вопрос относится к устройствам MediaTek).

    Установка инструментов

    Скомпилировать набор инструментов CyanogenMod для boot.img упаковки и распаковки довольно просто.

      Если вы уже установили полное дерево исходного кода Android (вы можете проверить мой другой ответ, чтобы получить больше информации об этом), перейдите в system/core/mkbootimg/ каталог (в качестве напоминания, исходный код Google AOSP предоставляет только инструмент для создания boot.img файла, они не предоставить любой инструмент для распаковки),

    Если у вас этого нет и не нужно для каких-либо других целей, более простым и быстрым решением будет клонирование только репозитория CyanogenMod android_system_core :

    Оказавшись в нужном каталоге, скомпилируйте и установите:

    Обратите внимание , что Google заменяет C mkbootimg с версией Python , так что в будущих версиях нет компиляции может потребоваться больше для этой команды.

    Вам также необходимо установить инструменты Android на свой компьютер, чтобы он мог общаться с вашим телефоном. Вам потребуются adb (Android Debug Bridge, утилита оболочки, позволяющая взаимодействовать с подсистемой отладки Android), adbd (связанный демон) и fastboot (утилита оболочки, позволяющая взаимодействовать с системой загрузчика вашего телефона).

    Ваш любимый дистрибутив Linux может предоставлять их в виде одного или отдельных пакетов, но обычно они всегда называются «android-tools»:

    • Debian / Ubuntu: sudo apt-get install android-tools-
    • Fedora / CentOS: sudo yum install android-tools
    • OpenSUSE: sudo zypper install android-tools

    Получить boot.img файл

    Извлеките файл boot.img из ZIP-файла ROM или непосредственно с устройства:

    • Из стандартного файла .zip ПЗУ: некоторые приложения, такие как SuperSU, могут изменять boot.img непосредственно на устройстве, заменяя его на стандартный, что нарушает работу таких приложений.
    • Непосредственно с устройства: некоторые люди сообщают о проблеме чтения, приводящей к повреждению boot.img . IMO, эти проблемы, скорее всего, связаны с использованием плохих USB-кабелей или USB-концентратора, и их можно просто избежать, используя качественные кабели, соединяющие телефон напрямую с компьютером. Вам также необходима возможность запуска ADB в режиме root (в зависимости от используемого ПЗУ, это может быть тривиально или нет).

    Первый способ очень очевиден: распакуйте файл .zip любым программным обеспечением ZIP, boot.img файл должен находиться прямо в корне архива.

    Для второго метода вам сначала нужно будет определить (к сожалению, для конкретного устройства) путь к устройству хранения, на котором boot.img можно извлечь контент. Я знаю два метода для этого:

    • ls /dev/block/platform/*/by-name/ (если * охватывает еще одно имя папки конкретного устройства, скорее всего , это единственный каталог ниже platform/ ), точное название для поиска также зависит от платформы , но имеет обычный смысл (некоторые примеры: boot , LNX (аббревиатура для «Linux»)). Файлы в этом каталоге на самом деле являются символическими ссылками, и некоторые люди пытаются вручную перейти к цели, но я рекомендую придерживаться пути на основе имен более высокого уровня, который, хотя и дольше, остается менее подверженным ошибкам. Таким образом, вы в конечном итоге с пути, как /dev/block/platform/sdhci-tegra.3/by-name/LNX .
    • На некоторых (старых?) Устройствах правильное устройство можно найти, изучив вывод cat /proc/mtd . Если вы видите устройство, mtd2 связанное с «boot» меткой, то вы будете использовать путь /dev/mtd2 .
    • Из меню разработчика телефона:
      • Включить отладку на вашем телефоне,
      • Разрешить root-доступ к ADB (этот шаг относится к телефонам с CynogenMod, для других устройств может потребоваться более сложная процедура),
    • Подключите его к компьютеру (и оттуда к гостевой виртуальной машине, если вы используете инструменты Android из виртуальной машины).

    Если это еще не сделано, я рекомендую вручную запустить сервер ADB на стороне компьютера, это позволит вам напрямую проверить ключ RSA на стороне устройства, не влияя на поведение следующих команд ADB:

    Затем переключите ADB в корневой режим:

    Наконец, вы должны иметь возможность напрямую извлечь boot.img файл из устройства с помощью такой команды (исходный и целевой путь и имена приведены в качестве примеров, адаптируйте их к вашим потребностям и предпочтениям):

    Команда скопирует весь раздел, как используемый, так и свободный, поэтому не удивляйтесь, что результирующий boot.img файл будет больше, чем исходный boot.img файл, поставляемый со стандартным файлом .zip ПЗУ, сам контент остается схожим

    После завершения передачи отключите телефон и не забудьте отключить отладку и root-доступ из меню разработчика.

    Распакуйте оригинальный boot.img файл

    Распакуйте сам boot.img файл, используя скомпилированную ранее команду:

    Это выведет некоторую информацию, необходимую, чтобы позволить вам перестроить новый boot.img с правильной структурой относительно запаса boot.img . Однако, не спешите с блокнотом, поскольку CyanogenMod upackbootimg также сохраняет ту же самую информацию в нескольких файлах, которые мы будем использовать позже.

    Эта команда генерирует несколько файлов с определенными суффиксами, добавленными к имени входного файла:

    • *-second : Это загрузчик второго уровня, дополнительный и редко используемый на телефонах конечных пользователей. Если этот файл пуст (наиболее распространенный случай), то загрузчик телефона будет напрямую вызывать ядро ​​Linux.
    • *-zImage : Это ядро ​​Linux.
    • *-ramdisk.gz или *-ramdisk.lz4 : RAM-диск, используемый для заполнения корневого каталога устройства. Расширение отличается в зависимости от используемого алгоритма сжатия.
    • *-dt : Дерево устройств, заполнение /dev .
    • Остальные — это небольшие файлы, каждый из которых хранит одно из значений, отображаемых в unpackbootimg выходных данных. Эти значения определяют параметр командной строки для передачи ядру Linux и адреса, по которым загрузчик должен будет загружать каждый объект во время загрузки.

    Чаще всего распаковывают, boot.img чтобы иметь возможность редактировать содержимое корневого каталога телефона. Как видно выше, этот контент хранится в файле *-ramdisk.gz или, *-ramdisk.lz4 и его можно извлечь, используя команды ниже:

    Для сжатого ОЗУ LZ4 замените последний шаг на lz4 -d ../boot.img-ramdisk.lz4 | cpio -imd .

    Теперь вы можете свободно вносить необходимые изменения, прежде чем продолжить. Однако, может быть, стоит выполнить полную процедуру распаковки — повторной загрузки — один раз, не меняя ничего, чтобы убедиться, что ваши инструменты работают должным образом. В противном случае, в случае возникновения проблемы, вы не будете уверены, что причиной является ваша модификация или какая-то несовместимость (см. Мои замечания в начале о некоторых производителях, которым требуются нестандартные процедуры или инструменты).

    Перестройте, чтобы получить новый new-boot.img файл

    Процесс создания ПЗУ CyanogenMod использует внутренний инструмент mkbootfs для создания boot.img файла (это происходит в build / tools / releasetools / common.py ). Тем не менее, шаги по созданию этого инструмента кажутся мне бесполезно сложными, в то время как использование предоставленной системы, cpio кажется, работает так же хорошо. Основное различие между ними, как я понимаю после (очень) быстрой проверки в mkbootfs исходном коде, заключается в том, что последний применяет некоторые меры безопасности, не включая точечные файлы и /root каталог в результирующий архив, в то время как cpio процедура на основе-ниже просто слепо положит все выбранное дерево каталогов в архив.

    Вывод: излишне сложный для компиляции с очень небольшим количеством преимуществ, так что давайте использовать инструменты, предоставляемые системой!

    Начните с создания нового RAM-диска, из ramdisk каталога, созданного выше, введите:

    Или, если вам нужно создать архив LZ4:

    Цель здесь — создать новый файл RAM-диска со свойствами, максимально приближенными к исходному (например, установка владельца часто отсутствует в процедурах, используемых в форумах и блогах, однако это требовалось на моем устройстве).

    Теперь перейдите в родительский каталог, чтобы создать сам new-boot.img файл.

    Как видно выше, unpackbootimg команда CyanogenMod генерирует файл, соответствующий каждому ожидаемому параметру mkbootimg . Поэтому все, что вам нужно сделать, — это нажать a, mkbootimg -h чтобы получить список всех параметров, а затем установить для каждого из них соответствующее значение, используя соответствующий файл. Обратите внимание, что некоторые параметры ожидают путь к файлу, а другие ожидают получить содержимое файла в качестве значения. Смотрите пример полученной команды ниже:

    Здесь не заданы только два параметра:

    • —board Насколько я понимаю, это просто информационное поле, позволяющее вставить название модели в полученное изображение.
    • —id : Это значение не ожидает, оно просто выводит уникальный идентификатор после построения изображения (объединяя метку времени и контрольную сумму).

    Прошить new-boot.img файл на устройство

    • Запустите устройство в режиме быстрой загрузки (он же режим загрузки, обычно удерживая кнопки питания и увеличения громкости).
    • Подключите USB-кабель.

    Убедитесь, что устройство правильно обнаружено:

    Попробуйте загрузиться с использованием нового ПЗУ (пока не перепрошивая его, поэтому в случае возникновения проблемы вам просто нужно перезагрузить телефон, чтобы вернуть его в рабочее состояние, замените ./new-boot.img имя файла своим собственным):

    Если телефон успешно работает с новым загрузочным образом, вернитесь в режим fastboot и постоянно его прошивайте:

    Вывод

    Поначалу эта процедура может показаться сложной, но как только вы ее получите, вы увидите, что на самом деле это не так.

    «Устрашающий» аспект связан с тем, что не существует единой «системы Android»: многие производители и поставщики ПЗУ вносят изменения, которые могут варьироваться от незначительной разницы в пути до совершенно нестандартной среды.

    Что вам нужно сделать, это определить положение вашего конкретного устройства, а затем, какие несколько команд, которые подходят для вашего случая. Получив их, вы можете придерживаться их и даже легко писать сценарии, если они вам часто нужны.

    Источник

    Читайте также:  Найти читалку для андроид
    Оцените статью