Шьем кастомное рекавери на android через терминал — Блог Debian
Всем привет!
В сети уйма гайдов по прошивке смартфонов на базе андроид. Но написаны они исключительно под Windows. А это очень тягомотно, как говорится. То драйвера не те, то не встают как надо, то телефон не определяется, то прошивальщик зависает. Эх, винда… В топку её) наш выбор: терминал linux’a.
Сейчас коротко, но доступно расскажу о возможностях терминала линукс при прошивке смартфона на базе android.
Начну с проверенных способов и моделей: zte, xiaomi, meizu, haier, huawei…
Сейчас почти на всех современных смартфонах, по умолчанию заблокирован загрузчик. На старых моделях и версиях андроида, такого не встречалось. Без разблокированного загрузчика мы рискуем получить кирпич, либо пожизненный бутлуп аппарата. Тогда придется нести в СЦ, платить денюжку, а там еще не факт, получится ли у мастеров откачать Ваш аппарат.
ВНИМАНИЕ! Перед какими-либо действиями с Вашим аппаратом, позаботьтесь о создании бэкапа данных и его сохранности на стороннем носителе(пк, флеш-карта).
Поэтому первым шагом разблокируем загрузчик на Вашем аппарате. Инфу искал на популярных ныне сайтах: 4pda.ru и xda-developers.com. Там подробно написано, как разблокируется загрузчик на устройствах. Труда найти способ не составит. И так как мне довелось руками разблокировать аппарат ZTE, то по нему и буду делиться опытом. Принцип на остальных аппаратах примерно похож.
Что нам нужно? В первую очередь нужно установить пакеты для работы с андроидом:
apt install android-tools-fastboot apt install fastboot
apt install android-tools-fastboot apt install fastboot |
Устанавливается все быстро, не занимая много времени.
Далее ищем набор утилит adb и fastboot для своего аппарата. Обычно они идут архивом вместе. Распаковываем архив. Я для удобства распаковывал в корень линукса. Далее ищем кастомный рекавери, для своего аппарата. Утилиты adb, fastboot, а так же кастомный рекавери, можно найти на всем знакомом 4pda.
Драйвера…какие еще драйвера? Мы в линуксе, алё!
Переводим аппарат в режим fastboot. Выключаем телефон. Одновременно зажимаем кнопку питания и качельку громкости -. Телефон переходит в режим fastboot(на устройствах zte, кнопкой громкости -, выбираем нужный нам пункт и подтверждаем кнопкой громкости +(иногда наоборот, зависит от аппарата)(на устройствах xiaomi появляется заяц в ушанке и знакомый нам робот андроид)).
Коннектим телефон к линуксу. Открываем терминал, переходим в папку adb. И разлочиваем загрузчик(zte, huawei, hair):
sudo fastboot oem unlock
sudo fastboot oem unlock |
Ждем ОК в терминале. Отсоединяем телефон, зажимаем кнопки Питание и Громкость- и ждем отключения аппарата. Включаем его и видим робота Android.
На этом этапе будут удалены все данные с телефона.
Ждем полной загрузки телефона.
Идем в настройки — О телефоне. Находим пункт Версия Ядра (иногда Версия Прошивки) и жмем 5-7 раз подряд. Появится уведомление о том, что вы стали разработчиком. Выходим в общие настройки и находим пункт Для Разработчиков. Входим и ищем Отладку по USB. Включаем. Соглашаемся. НИ В КОЕМ СЛУЧАЕ НЕ ОТКЛЮЧАЕМ РАЗБЛОКИРОВКУ ЗАГРУЗЧИКА.
Отключаем телефон. Вводим его в режимFastBoot. Коннектим с Linux. Идем в терминал и прошиваем recovery(здесь команда одинакова для всех аппаратов):
sudo fastboot flash recovery имя_рекавери.img
sudo fastboot flash recovery имя_рекавери.img |
И ждем, пока зальется кастомный рекавери. Как только рекавери установится, телефон сам перезагрузится в него. Либо:
fastboot recovery reboot
fastboot recovery reboot |
По умолчанию в TWRP рекавери включен MTP, что очень хорошо: можно закинуть кастомную прошивку, а так же патчи для получения root-прав(superSU, magisk).
P.S: за все действия со своим аппаратом ответственность несете Вы сами. Хорошо подумайте, прежде чем браться за это!
Всем удачного шитья!
ставим Kali Linux на смартфон
Неважно, хакер вы или безопасник. Эта статья – то, что вы искали! Погнали разбираться, как установить Kali Linux на смартфон.
Начнем с азов. Kali Linux – десктопная версия ОС, а нас интересует версия, адаптированная под мобильные девайсы. Этот дистрибутив называется Kali Linux (NetHunter), вот его мы и будем устанавливать. Он ставится поверх «родного» Android в виде программы, что дает возможность пользоваться телефоном, как и раньше (звонки, SMS и прочие функции остаются доступны).
Если вы уже пытались найти инструкцию по установке Kali Linux на смартфон, то, скорее всего, это были туториалы с использованием Multirom. Инструмент позволяет установить на телефон сразу две независимые прошивки (как две ОС на обычном десктопе), переключаться между которыми можно во время ребута смартфона.![]()
Этот способ нам не подходит, поскольку загрузчик от Multirom не сможет правильно прошить ядро, а если случится так, что на «подопытном» будет стоять не то ядро, большая часть функций NetHunter (эмуляция клавиатуры, поддержка USB-WiFi, Frame Injection, Bad USB и т. д.) окажется недоступной.
Официально установка Kali Linux на смартфон подходит далеко не для всех девайсов. Среди поддерживаемого: Google Nexus, немного Samsung и One+ – список невелик, но он увеличивается сопоставимо росту популярности Kali NetHunter.
На перечисленные устройства все ставится просто, быстро и без напильника. А вот неофициальный список девайсов огромен. Все потому, что NetHunter – это обычное apk приложение, которое может работать на любой версии Android, начиная с 4.4. Установка дистрибутива – дело нехитрое, а вот проблемы с обновлением и установкой правильного ядра могут испортить весь кайф мероприятия.
Рабочие нюансы
Предостережение:
- перед началом каких-либо манипуляций сохраните все данные с телефона на свой ПК;
- создайте резервную копию в облаке;
- вы должны понимать, что подобные действия лишают девайс гарантии.

Официально поддерживаемые девайсы мы разбирать не будем, т. к. проблем они не вызывают. Если вы обладатель смартфона из списка неофициальной поддержки, то читаем дальше.
Для начала нужно определить, какая прошивка стоит сейчас на смартфоне, ведь большинство версий «родных» прошивок практически несовместимы с ядром NetHunter. В идеале, можно использовать lineage-os или AOSP – это два проекта, с которыми установка Kali Linux на смартфон должна пройти гладко.
Этапы установки Kali Linux на смартфон
Дочитав до этого места, вы уже должны уметь прошивать телефон, знать, как получить root-права и установить кастомное recovery (TWRP или TouchWiz). Разберемся с терминами:
- root-права – это права суперпользователя на телефоне.
- recovery – специальное меню для установки или восстановления прошивки. Если загрузиться с recovery, можно работать с ФС телефона, даже если на нем не установлен Android.
Как установить root и актуальное recovery конкретно на испытуемый телефон очень подробно описано на xda.
Находим ветку с нужным устройством и читаем мануалы.
После этого обязательно установите приложение SuperSu и BusyBox, а далее запустите их по одному разу для инициализации в системе.
На сайте качайте нужное ядро (kernel) под ваш смартфон (не перепутайте кодовое имя ядра). Если повезет и там найдется ядро на нужный девайс – качайте его и устанавливайте (если не повезло, то ниже разобран этот вариант).
В конце списка расположены дистрибутивы Kali. Качайте full-версию (что мы и рекомендуем) с расширением arm64 или arfhf, и перекидывайте ее в корень карты памяти. После этого перегружайтесь в recovery, жмите на кнопку Install
На данном этапе NetHunter неспроста ставится без ядра. Если что-то пойдет не так, то будет очевидно, что беда со сборкой, а не с ядром или в связке ядра с дистрибутивом.
Если после перезагрузки вы увидите заставку Kali, значит пока все сделано правильно. Заставка может «висеть» от 3 до 7 минут. В случае более долгого зависания перезагрузите телефон. Войдите в recovery и почистите Dalvik Cache. Проверьте «загружаемость» системы и создайте бекап.
После удачной установки вы сразу заметите изменение внешнего вида и появление кучи новых приложений. При запуске любого из них может возникнуть ситуация, при которой не хватает root-доступа для работы. Для выдачи прав предоставьте их в диалоговом окне или в приложении SuperSu. Такие же манипуляции нужно реализовать и с приложением NetHunterTerminal (чтобы он появился в списке SuperSu, терминал нужно запустить хотя бы раз).
Почти готово
После вышеописанных действий у вас почти все должно работать. Но почти, ведь вы еще не установили новое ядро, а без него не видать ни BadUSB, ни эмуляции клавиатуры.
Тут выплывает одна особенность: некоторые прошивки lineage-os или AOSP могут содержать в себе ядро, которое подойдет вашему смартфону, что позволит использовать весь функционал Kali NetHunter, и ядро не придется ставить отдельно (но может быть и наоборот, и вы будете откатываться). Обо всех этих плюшках пишут в описании к релизу.
Рассмотрим ситуацию, когда все плохо, т. е. будем ставить ядро. Его поиск лучше начинать на xda. Многие сталкиваются в этом месте с проблемой поэтому сразу уточняем. Пишете в адресной строке браузера такой запрос: модель устройства nethunter kernel site:xda-developers.com. В необходимой ветке сайта в строке поиска введите два ключа “kernel nethunter” – они выделят необходимые ядра из списка. Выбирайте ядро под вашу версию Android, скачивайте и перекидывайте его в корень карты телефона.
Поступаем так же, как и с прошивкой: перегружайтесь в recovery, жмите на кнопку Install и устанавливайте скачанный архив.
После завершения установки процесс включения может длиться от 5 до 15 минут. Если увидели заставку Kali, ядро было выбрано правильно. Ждите еще примерно 20 минут. Если заставка не пропала, перезагрузите смартфон и в recovery восстановите раздел boot из бекапа, созданного ранее.
Напоследок
В самом конце осталось обновить всю систему Linux целиком. Это обязательное правило даже для десктопной версии обычного линукса. В терминале Kali используйте команду apt update и apt upgrade, ждите около часа (зарядка – наше все).
Данный способ установки Kali Linux на смартфон проще первого, ибо установка на виртуалку, и не придется ковыряться с получением root-прав.
Для начала убедитесь, что на девайсе есть 4GB свободного места, все заряжено, и открыт доступ в интернет.
1. Скачивайте образ Kali Linux Light 32-Bit с официального сайта.
2. Перекидывайте скачанный образ в пустую (нужно создать) папку в корне карты памяти.
3. Для виртуализации понадобится приложение. По ссылке найдете подробное описание и инструкции.
4. устанавливайте Limbo, запускайте и создавайте учетку своего юзера.
5. В Architecture укажите x86, в CPU Cores – 4, а RAM ставьте не менее 512MB (лучше больше, если память позволяет).
6. Создайте хранилище (Hard Disk) размером не меньше 4GB.
7. В CD-ROM откройте меню и найдите скачанный iso-файл Kali.
8. В разделе Network отметьте галочкой пункт User.
9. Ниже в секции Boot Settings укажите загрузку с привода.
10. Все готово к установке. Жмите на кнопку запуска и ожидайте окончания процесса.
Попробовали? А вы знаете другой рабочий способ установки Kali на Android?
Как прошить образ для восстановления с помощью Heimdall на Linux: Android
У меня на ноутбуке работает Linux Mint, я долго искал способ получить root права на свой Samsung Galaxy s7edge с помощью моей ОС Linux.
Как известно, для Linux нет ODIN. Но есть хорошая альтернатива, она называется HEIMDALL и это бесплатная программа.
Я дам вам краткое пошаговое руководство.
С помощью графического интерфейса:
Загрузите и установите Heimdall.
Он с открытым исходным кодом (как я уже упоминал) и поддерживает Windows, Mac, GNU/Linux (включая Ubuntu и Fedora) и несколько других операционных систем, в отличие от ODIN, который является проприетарным и поддерживает только Windows.
2. Перезагрузите телефон в режиме загрузки (или ODIN) (обычно удерживая нажатой клавишу уменьшения громкости, дома и питания и следуя инструкциям на экране) и подключите его к компьютеру.
Дождитесь загрузки драйверов устройств.
3. Запустите Heimdall от имени администратора/root (sudo heimdall-frontend).
4. Если вы впервые прошиваете что-то на свой телефон с помощью Heimdall, выполните следующие шаги, чтобы получить файл PIT; если у вас уже есть PIT, пропустите их.
A. Перейдите на вкладку «Утилиты».
B. Нажмите «Обнаружить», чтобы убедиться, что телефон распознан.
C. Нажмите «Сохранить как» в разделе «Загрузить PIT» и выберите место для хранения нового файла.
D. Нажмите Загрузить.
E. Когда это будет сделано, выключите телефон и вернитесь в режим загрузки.
5. Перейдите на вкладку Flash и найдите PIT, который вы только что скачали.
6. Нажмите «Добавить» в разделе «Разделы (файлы)».
7. В меню «Имя раздела» выберите «ВОССТАНОВЛЕНИЕ» или аналогичный для вашего телефона (названия обычно достаточно понятны: ЗАГРУЗКА – обычно ядро (никогда не касайтесь ABOOT, если вы не знаете, что делаете), СИСТЕМА – /system, USERDATA – /data. , так далее.).
8. Нажмите «Обзор» в разделе «Файл» и откройте загруженный образ восстановления. Он должен быть в формате «.img».
9. Повторите шаги с 6 по 8 для любых других разделов, которые необходимо прошить, если таковые имеются. Если все готово, нажмите Start, чтобы начать прошивку
10.
Наслаждайтесь!!!
Использование командной строки (намного быстрее):
Командная строка работает быстрее, почти всегда.
Если вы хотите сэкономить 2 минуты своей жизни, просто запустите (от root/admin) следующую команду:
heimdall flash –RECOVERY filename.img
Замените «filename.img» файлом образа для восстановления.
Написание команды до –RECOVERY и перетаскивание файла на терминал обычно работает.
Вы также можете заменить RECOVERY на любой другой раздел на вашем телефоне (может помочь heimdall print-pit) или прошить сразу несколько разделов, добавив —PARTITION_NAME filename.img.
Надеюсь, это было вам полезно! Если у вас есть какие-либо вопросы, дайте мне знать в комментариях ниже! 🙂
Обновление 30.10.2017:
Для пользователей Linux есть другие варианты прошивки стоковыми прошивками, пакеты CF-Root. И другие файлы .tar:
Вы все еще можете открыть ODIN с помощью вина.
Или вы можете использовать онлайн-инструмент odin.

Или вы можете скачать версию Odin на основе Java Драйверы ADB и fastboot) в вашу систему Linux. Это легко сделать:
Сначала проверьте свою версию Java, набрав:
java -version
Затем загрузите необходимые инструменты для Android:
Sudo apt-get install default-jdk
sudo apt-get update default-jdk
Чтобы загрузить драйверы adb:
Sudo apt-get install android-tools-adb
Sudo apt-get update android-tools- adb
Чтобы загрузить fastboot:
Sudo apt-get install android-tools-fastboot
Sudo apt-get upgrade android-tools-fastboot
Включите отладку по usb в настройках разработчика на вашем телефоне.
Подключите телефон через USB к компьютеру.
Напишите следующие команды, чтобы проверить, может ли Linux настроить ваш телефон:
устройства adb
Вы увидите ваше устройство с некоторыми цифрами перед ним.
Затем используйте команды adb, чтобы записать ваш образ восстановления на ваш телефон
Я не помню всех этих команд adb, но вы можете легко найти их, погуглив.

Удачи !_!
Раздел восстановления — поддержка System76
Раздел восстановления — это полная копия установочного диска Pop!_OS. Его можно использовать точно так же, как если бы живая дисковая копия Pop!_OS была загружена с USB-накопителя. Существующую операционную систему можно восстановить или переустановить из режима восстановления. Вы можете выполнить установку с обновлением, которая позволяет выполнить повторную установку без потери каких-либо пользовательских данных или данных в вашем домашнем каталоге. Восстановление также может выполнить чистую установку, которая сбрасывает все данные ОС.
Чтобы загрузиться в режиме восстановления, вызовите меню systemd-boot , удерживая нажатой клавишу ПРОБЕЛ во время загрузки системы или удерживая/нажимая любую функциональную клавишу
НЕ , используемую для доступа к меню BIOS/Boot Menu (вкл. аппаратное обеспечение, отличное от System76, попробуйте клавиши F1 по F12 ).
Примечание: В этих инструкциях предполагается, что Pop!_OS — единственная ОС, работающая в вашей системе. Если вы загружаете более одной операционной системы, вам может потребоваться сначала изменить порядок загрузки или вручную выбрать диск Pop!_OS в меню BIOS/Boot.
После отображения меню выберите Pop!_OS Recovery .
Примечание : В среде восстановления Pop!_OS не будет сохранен ваш пароль WiFi. После загрузки в живую среду вам нужно будет повторно подключиться к Wi-Fi вручную, чтобы получить доступ к Интернету.
Чистая установка
Этот параметр удаляет текущую установку вместе со всеми пользовательскими файлами. Он переформатирует разделы диска и установит версию Pop!_OS, содержащуюся в разделе восстановления.
Инструкции по резервному копированию пользовательских файлов с Live Disk/Recovery можно найти здесь.
**Примечание.
**Версия ОС раздела восстановления будет либо той же, что и версия ОС, поставляемая с вашим компьютером, либо последней версией, до которой был обновлен раздел восстановления.Обновить установку
Параметр «Обновить установку» позволяет переустановить ОС без потери информации об учетной записи пользователя и данных в домашнем каталоге.
Примечание. Установленные пользователем приложения, не хранящиеся в домашней папке (например, установленные версии .deb или apt), необходимо будет переустановить.
Если параметр
Обновить установкуотсутствует на экране установки, возможно одно из двух.Ваш диск зашифрован. Параметр «Обновить установку» может появиться после расшифровки диска. Уведомление о расшифровке диска будет отображаться над параметрами установки.
Версия Recovery устарела. См. инструкции по обновлению.
Переустановите
После загрузки Recovery Pop Installer запустится автоматически.
Если систему необходимо переустановить, продолжите установку, как показано здесь.Если существующая установка зашифрована, см. инструкции по зашифрованному диску.
Восстановление
Если существующую установку ОС необходимо восстановить, приложение установки следует закрыть. Меню приложения находится в верхнем левом углу экрана с названием запущенного в данный момент приложения (в данном случае: «Установить Pop!_OS»). Нажмите на меню приложения и выберите
Выход. Кроме того, вы можете использовать приложение установщика, чтобы выбрать настройки клавиатуры и языка, а затем нажать кнопкуTry Demo Modeв нижнем левом углу страницы установки.Примечание: Не выбирайте параметры установки или восстановления, так как это может привести к потере данных.
Следуйте приведенным ниже инструкциям, чтобы получить доступ к существующему диску ОС:
Сначала нажмите SUPER + T , чтобы открыть терминал, затем введите эту команду:
Это покажет вам имя основного внутреннего диска, на котором будет 4 раздела.
Мы будем работать с 3-м разделом. Если основным диском является диск NVMe, он будет называться /dev/nvme0n1p3, а если диск SATA или обычный диск M.2, он будет называться/dev/sda3.Затем выполните следующую команду:
Диски SATA Диски NVMe 0 0 0 0 0 00175 sudo mount /dev/sda3 /mnt sudo mount /dev/nvme0n1p3 /mntдиск был зашифрован, и для его разблокировки необходимы дополнительные команды.
Зашифрованный диск
Чтобы получить доступ к зашифрованному диску, необходимо выполнить эти дополнительные команды, чтобы разблокировать диск. Используйте описанную выше команду
lsblk, чтобы определить правильный диск и раздел.
SATA Drives NVMe Drives sudo cryptsetup luksOpen /dev/sda3 cryptdatasudo cryptsetup luksOpen /dev/nvme0n1p3 cryptdatasudo lvscan судо vgchange -ай
Примечание: Обратите внимание на то, как называется группа
cryptdata. Если его имя отличается отdata-root, введите правильную информацию в следующую команду. Убедитесь, что-rootнаходится в конце:sudo mount /dev/mapper/data-root /mnt
Теперь доступ к существующему жесткому диску можно получить, перейдя в папку
/mnt. Чтобы использовать программу Files , перейдите в «+ Другие местоположения» -> «Компьютер», а затем щелкните папку/mnt.
Chroot
Chrootзапускает команды, как если бы существующая операционная система была загружена. После выполнения этих команд диспетчер пакетов (apt) и другие команды системного уровня.Раздел EFI является следующим монтируемым разделом. Чтобы облегчить его идентификацию, этот раздел обычно имеет размер около 512 МБ и помечен как
/boot/efi.SATA Drives NVMe Drives sudo mount /dev/sda1 /mnt/boot/efisudo mount /dev/nvme0n1p1 /mnt/boot/efiдля i в /dev /dev/pts /proc /sys /run; выполнить sudo mount -B $i /mnt$i; Выполнено судо chroot/mnt
С помощью этой последней команды вы получите root-доступ к установленной системе. После доступа к диску в установленной системе можно запускать команды обслуживания.






**Версия ОС раздела восстановления будет либо той же, что и версия ОС, поставляемая с вашим компьютером, либо последней версией, до которой был обновлен раздел восстановления.
Если систему необходимо переустановить, продолжите установку, как показано здесь.
Мы будем работать с 3-м разделом. Если основным диском является диск NVMe, он будет называться 

