линукс прошивка для телефона

Как прошить Андроид в Ubuntu c помощью ADB и Fastboot

Как прошить Андроид в Ubuntu c помощью ADB и Fastboot. Несмотря на то, что Android и Ubuntu основаны на одном ядре Linux, но к сожалению прошить смартфон или планшет в последней крайне проблематично!

Что можно прошить в Ubuntu?

Прошивка Android в Ubuntu явно не совсем удачное занятие, так как большинство производителей просто-напросто не выпускают официальных программ для данной операционной системы. Все дело в том, что это ОС не такая популярная как Windows и выпускать и поддерживать программное обеспечение многие не считают нужным.

Но не все так печально как кажется, благодаря утилитам ADB и Fastboot можно прошить устройства некоторых производителей:

и большинство других, если процессор на вашем устройстве установлен от Qualcomm, то почти 80% случаях прошить можно с помощью Fastboot.

Как установить ADB и Fastboot в Ubuntu?

В репозиториях Ubuntu уже имеется необходимые утилиты ADB и Fastboot, скачивать ничего не надо! Все что вам необходимо, так это загрузить их и установить утилиты в систему. Для этого нужно открыть терминал и ввести следующие команды:

После чего ADB и Fastboot установятся на ваш компьютер Ubuntu Linux, проверить так ли это можно прописав по очереди команды в терминале:

Если вы все сделали правильно, то после ввода каждой из команд будет выводиться информация утилит adb и fastboot.

Подготовка Android и прошивка в Ubuntu

Для того чтобы можно было работать с устройством Android, вначале вам будет необходимо будет включить в настройках режим разработчика и отладку по USB иначе adb не уведет ваш смартфон или планшет.

Источник

Устанавливаем Flash Tool в Linux для прошивки смартфонов

Некоторые пользователи своих девайсов предпочитают перепрошить свой смартфон на Android кастомной прошивкой, самая популярная прошивка – LineageOS. В подавляющем большинстве прошиваются смартфоны в Windows, но, сегодня мы разберемся как прошить ваш девайс в Linux с помощью утилиты Flash Tool. Данная утилита прошивает Android смартфоны работающие на процессоре MTK. Утилита Flash Tool является одной из самых популярных утилит в своем роде, установить ее можно так же и в операционной системе Linux, все действия мы будем выполнять в Ubuntu 20.04, но, инструкция подойдет и для всех производных от Ubuntu, как вариант Pop OS, Linux Mint и так далее. Насчет Fedora и других RPM ориентированных систем, ничего сказать не могу, так как не проверял.

P.S. Все действия которые вы совершаете с телефоном, выполняются на ваш страх и риск. За не рабочий аппарат, в результате всех описанных действий в данной статье автор ответственности не несет. Данная инструкция проверена на телефоне Blackview BV5800, прошивался сей девайс в Ubuntu 20.04, а точнее в Kubuntu.

Подготовительный этап

Первым делом необходимо скачать саму утилиту Flash Tools для Linux, рекомендую скачивать именно с 4pda, а не с левых сайтов. Так же, если вдруг по какой-то причине 4pda не доступен, то Flash Tool версий 5.2020, 5.2016, 5.2012 вы можете скачать по ссылке ниже:

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

Установка зависимостей и запуск FlashTool

Теперь необходимо открыть терминал, перейти в директорию с распакованным FlashTool и дать права на исполнение файлам flash_tool, flash_tool.sh, выполнив команды:

Как перемещаться по директория в терминале вы можете прочесть в этой статье.

Следующим шагом добавляем вашего пользователя в группу uucp, это делается для получения прав на запись в виртуальный COM-порт. Я буду добавлять пользователя “cyber-x”, вы же замените данное имя на имя вашего пользователя:

Когда все выше описанные действия сделаны, необходимо выйти из системы и снова зайти, либо, как вариант, перезагрузить компьютер. Следующем этапом будет установка пакета “51-android.rules”, данный пакет можно получить с GitHub. Это делается для того, что бы ваш Android девайс определился в системе Linux COM-порту. Для получения с GitHub мы воспользуемся утилитой git и клонируем данный репозиторий, предварительно сменив директорию на домашнюю, выполнив команду “cd”:

Если вдруг у вас не установлена утилита “git”, то выполните команду “sudo apt install git”.

Заходим в директорию “android-udev-rules” и тут нам нужно скопировать файл под названием “51-android.rules” в директорию вашей системы “/etc/udev/rules.d/”, копировать мы будем командой “cp”, о которой вы можете прочесть тут. И так, переходим в директорию и копируем данный файл, копировать необходимо с правами root пользователя:

Далее перезагружаем правила udev командой:

Выключаем ваш Android девайс и в выключенном состоянии подключаем его к компьютеру под управлением Linux. Нам необходимо, что бы телефон определился в системе, для этого выполним команду:

В конце вывода полученных данных должно быть примерно следующее, тут главное ttyACM0, если это значение имеется, значит все OK:

Возвращаемся к Flash Tool и запускаем из терминала скрипт от имени root пользователя выполнив команду:

Перед началом прошивки в утилите необходимо выставить настройки, заходим в Options- Download и ставим галочки напротив всех 2-х пунктов:

В строке “Scatter-loading File” указываем путь к scatter файлу, который прилагается к прошивкам. Выбираем один из режимов – Download Only или Firmware Upgrade и нажимаем кнопку Download:

Режим Download Only (прошивка без потери данных) – снимаем галочки с Preloader и Userdata в Flash Tool, при этом произойдёт обычное обновление прошивки. Если оставить галочку на пункте Userdata – все пользовательские данные будут стерты.
Режим Firmware Upgrade (прошивка всех разделов), при этом IMEI не слетает, используется в случае, если хотите получить чистый Android смартфон с новой прошивкой.

Заключение

Прошивка телефонов – рисковое занятие, при неправильно выбранной прошивке можно получить неработоспособный телефон. Зачем вообще прошивают телефоны? Хотя бы для того, что бы получить кастомную прошивку, или получить root права на телефоне.

Данная инструкция лишь воссоздает все действия, которые я проделывал прошивая свой Android смартфон в Linux, основана она на инструкции взятой с 4pda. Более подробно о работе с утилитой Flash Tool читайте все на том же форуме перейдя по ссылке.

Что касаемо остальных дистрибутивов Linux, то вероятней всего данную инструкцию придется адаптировать, в зависимости от вашего дистрибутива Linux. А так как я пользуюсь Kubuntu и Pop OS, то с уверенностью могу сказать, что все описанные действия работоспособны.

В любом случае читайте внимательно инструкцию которая прилагается к прошивке, так как в данной статье основной упор был сделан исключительно на установку Flash Tool в операционной системе Linux. Безусловно, перепрошить телефон в Linux можно и без Flash Tool, но, с ней это сделать намного удобней.

А на этом сегодня все, надеюсь, данная статья будет вам полезна.
Хотелось бы выразить огромную благодарность тем, кто принимает активное участие в жизни и развитии журнала, огромное спасибо вам за это.
Журнал Cyber-X

Источник

Устанавливаем Linux-дистрибутив на телефон и планшет под управлением Android

Содержание статьи

Прошло совсем немного времени с момента выпуска первых смартфонов под управлением ОС Android до того, как энтузиасты научились запускать на них полноценные дистрибутивы Linux. Сегодня методики установки Linux-дистрибутивов на Android-устройства широко известны, а в репозитории Google Play есть даже автоматизированные системы установки и запуска Linux. В этой статье я попытаюсь аккумулировать весь накопленный опыт работы с Linux на смартфонах, расскажу, зачем это нужно, и покажу, как избежать возможных подводных камней при переносе Linux на смартфон или планшет.

Зачем?

На первый взгляд может показаться странным, что кто-то пытается запустить на мобильном устройстве операционную систему, в принципе не предназначенную для работы с экраном небольших размеров и без достаточно точного манипулятора (мышь) и клавиатуры. Однако не стоит делать поспешных выводов. Дистрибутив Linux может дать владельцу смартфона достаточно много преимуществ, среди которых набор старых проверенных инструментов, таких как утилиты командной строки, продвинутые редакторы, FTP- и SSH-серверы, сетевые инструменты и средства разработки приложений. Запустив Linux без графической оболочки на смартфоне с хардварной клавиатурой (Motorola Droid, к примеру), можно достаточно комфортно всем этим пользоваться прямо на ходу без необходимости покидать сам Android. Все инструменты доступны в любой момент, а смартфон продолжает оставаться смартфоном, позволяя принимать звонки и слушать интернет-радио.

Второй аргумент за установку Linux на смартфоне — это возможность использовать его в качестве переносной рабочей станции, которую можно подключить к любому ПК и тут же получить доступ к терминалу с помощью SSH/Telnet-клиента либо клиента VNC/RDesktop. Это по определению лучше, чем флешки с установленным Linux, так как нет необходимости, во-первых, перезагружать машину, а во-вторых, гонять туда-сюда данные; результаты твоей работы будут доступны сразу после того, как отключишь смартфон от компа.

Наконец, наибольший выигрыш Linux дает на планшетах, экран которых позволяет более-менее сносно работать в графической среде, а возможность подключить мышь и клавиатуру через OTG-кабель так и вообще дает шанс превратить планшет в полноценную рабочую станцию. При этом никакой особой разницы между установкой дистрибутива Linux на планшет и смартфон нет.

Перенести Linux на Android действительно просто, и главную роль здесь играет ядро Linux. Любой Linux-дистрибутив представляет собой набор приложений и библиотек, работающих поверх ядра Linux, а так как Android сам основан на почти неизмененном ядре Linux, эти приложения и библиотеки можно без каких-либо проблем запустить внутри среды Android. Достаточно лишь подыскать дистрибутив, для которого существует порт на платформу ARM (не забываем, что 99% всех Android-девайсов работают на ARM), установить его с помощью ARM-эмулятора на виртуальный жесткий диск (то есть в файл), скинуть этот файл на SD-карту устройства, открыть терминал, смонтировать образ в качестве loopback-устройства и сделать chroot внутрь. Все! Это так же просто, как запуск FTP-сервера в chroot-окружении — простой и проверенный десятилетиями метод.

Единственный камень преткновения, когда ты решаешь запустить дистрибутив Linux внутри Android, — графическая среда. В то время как с доступом к консоли никаких трудностей не возникает благодаря наличию полноценного эмулятора терминала, с графическими приложениями начинаются проблемы — нативного X-сервера для Android нет, а запустить обычный X-сервер внутри самого дистрибутива невозможно из-за коренных отличий в архитектуре графической подсистемы зеленого робота. Несмотря на то что в основе она использует стандартный Linux Framebuffer, поверх которого можно запустить X-сервер, эксклюзивное право его использования изначально принадлежит более высокоуровневым библиотекам Android, поэтому остается либо загружать Linux-дистрибутив вместо Android (что совершенно непрактично), либо придумывать обходные пути.

Проверка работы необходимых модулей

Энтузиасты вышли из этой ситуации, используя простой метод «удаленного» подключения к рабочему столу с помощью любого доступного для Android VNC-клиента. Внутри chroot-окружения запускается X-сервер Xvnc, и все приложения работают под его управлением. Пользователю остается лишь установить VNC-клиент, вбить локальный адрес — и вуаля, на экране появляется полноценный рабочий стол.

Единственное узкое место при использовании удаленного рабочего стола — это производительность. Даже работая локально, VNC не может обеспечить должный ее уровень, которого бы хватило для плавной прокрутки или перемещения окон без лагов. Решить эту проблему пока не удалось, проекты разработки нативного X-сервера, который бы использовал графическую подсистему Android, еще очень сыры и не могут быть использованы для запуска полноценных графических сред. Впрочем, никто не запрещает их использовать; к примеру, X Server от Darkside Technologies Pty Ltd (goo.gl/ap3uD) вполне сгодится для запуска простого софта.

Изначально Linux для Android существовал только в виде образа с уже установленной системой, а также пояснительной инструкции, как этот образ подключить и использовать. Затем появились скрипты, которые автоматизировали процесс подключения образа и запуска Linux, но и они требовали некоторой работы головой. Наконец, в последнее время появились инсталляторы, доступные в Google Play (например, goo.gl/RSA1j), в некоторой степени автоматизирующие процесс запуска дистрибутива, хотя, по сути, это все то же руководство по установке, но интерактивное, с прямыми ссылками на скачивание образов и скриптов.

Альтернативные варианты

Выше я уже упомянул о том, что дистрибутив Linux вполне может быть загружен вместо Android, благодаря чему удастся задействовать Framebuffer для прямого доступа к видеоадаптеру и существенно ускорить работу графического интерфейса. Однако делать это на смартфоне практически бессмысленно — Linux непригоден в качестве основной системы на небольших экранах, к тому же принимать звонки и пользоваться интернетом будет невозможно. А вот на планшете Linux будет выглядеть вполне достойно.

Обычно на устройство, изначально работающее под управлением Android, так называемая нативная версия Linux-дистрибутива устанавливается следующим образом. На внутреннем NAND-накопителе планшета создается дополнительный раздел, на который копируется Linux-дистрибутив. Затем загрузчик U-Boot (он применяется в большинстве планшетов) настраивается таким образом, чтобы использовать этот раздел в качестве загрузочного. В результате планшет будет автоматически загружать Linux-систему после включения питания.

Чтобы оставить возможность загрузки Android, загрузчик U-Boot перенастраивают таким образом, чтобы раздел с Linux-системой был не основным, а выполнял функцию «раздела для восстановления» (Recovery Mode), доступного с помощью включения устройства с зажатой клавишей громкости (тот самый, который используется для перепрошивки устройства и выполнения различных восстановительных операций). Таким образом удается получить устройство с двойной загрузкой: Android по умолчанию и дистрибутив Linux при загрузке в режиме восстановления. Сам Recovery Mode при этом остается доступным только с помощью специальных инструментов.

В случае если NAND-памяти оказывается недостаточно для размещения полноценной Linux-системы, ее части (обычно раздел /usr) выносят в образ или раздел на SD-карте. Кстати, ext2-раздел на карте памяти также можно использовать для установки Linux, запускаемого в chroot-окружении.

Установить нативный Linux-дистрибутив сложнее, чем работающий в chroot-окружении, но это стоит того, если у тебя есть планшет и OTG-кабель, с помощью которого можно подключить клавиатуру и мышь.

Практическое занятие

Как я уже говорил, для запуска под управлением Android пригодны только дистрибутивы, портированные на архитектуру ARM. Прежде всего это Ubuntu и Debian, причем первый по понятным причинам пользуется гораздо большим интересом среди роботоводов. Также можно установить Gentoo и несколько специализированных дистрибутивов, например Backtrack. Рассмотрим самый типичный случай, то есть установку Ubuntu по стандартной схеме, без использования каких-либо автоматизированных инсталляторов и прочего.

BackTrack, запущенный на планшете

Хакер #164. Железный дуршлаг

Для начала нам нужен образ жесткого диска с установленным дистрибутивом. Его можно создать самому, воспользовавшись эмулятором QEMU, однако в связи с тем, что процедура установки абсолютно стандартна и типична, описывать ее я не буду, а просто направлю тебя по адресу goo.gl/9nvBi. Здесь лежит архив с образом, на который предустановлен Ubuntu 12.04 с графическим окружением LXDE (было бы неразумно запускать Unity/Gnome на телефоне/планшете). Архив следует распаковать и положить файл ubuntu.img на карту памяти.

Далее надо смонтировать образ и сделать chroot в окружение дистрибутива. Для этого нужны права root, прошивка с поддержкой блочных loopback-устройств и установленный busybox (ищем в Маркете по запросу «busybox installer», в CyanogenMod есть по умолчанию). Последовательность действий:

Собственно, на этом установка заканчивается. Теперь можно запускать консольный софт, производить обновление системы, стартовать сетевые сервисы и делать почти все, что можно сделать с обычной десктопной Linux-системой, не забывая, конечно, что некоторый софт, напрямую взаимодействующий с железом и различными специализированными псевдодевайсами, работать не будет. Также не забываем, что виртуальные ФС после завершения работы следует размонтировать.

Теперь нам необходимо установить и запустить X-сервер Xvnc, экспортирующий дисплей и устройства ввода с использованием протокола VNC. TightVNCserver уже есть в представленном образе и даже настроен, но, чтобы ты лучше понял процесс и смог решить возникшие проблемы, я подробно опишу процесс его установки и запуска.

Чтобы не заморачиваться с ручным вводом всех команд, можно использовать скрипт ubuntu.sh, расположенный здесь: goo.gl/xSpK4. Просто положи его и образ ubuntu.img в каталог ubuntu на SD-карте и запусти скрипт командой sh ubuntu.sh, а через 5–10 секунд подключись к рабочему столу с помощью AndroidVNC. Имей в виду, что скрипт монтирует образ к каталогу /data/local/mnt.

AndroidVNC — подключаемся к рабочему столу

Установка Gentoo на ext2-раздел

Итак, мы установили Ubuntu с помощью образа с файловой системой и шаманств с loopback-устройством и chroot-окружением. Сделать это оказалось несложно, а с применением скриптов так и вообще очень легко, но что, если пойти дальше и установить более хардкорный дистрибутив, и не с использованием образов, а на выделенный ext2-раздел на карте памяти? Так мы сможем решить проблему некоторых прошивок и ядер без поддержки loopback-устройств и к тому же сможем насладиться нормальным дистрибутивом, установленным по всем правилам.

Проект «Ubuntu for Android» в действии

Возьмем в качестве подопытной системы Gentoo. Чтобы установить его на ext2-раздел, нам понадобится карта памяти объемом не меньше 2 Гб и рутованный смартфон с установленным busybox. Последовательность действий следующая.

Доступ к рабочему столу производится таким же способом, как в Ubuntu, за исключением того, что теперь прямо на телефоне придется собрать кучу софта :). Впрочем, можно настроить среду для кросс-компиляции на компе, но это уже тема для отдельной статьи.

Ubuntu на Galaxy Tab 10.1

Нативная установка

Запустив Ubuntu с использованием VNC-сервера, ты заметишь неторопливость его работы, которая связана с издержками протокола VNC на передачу картинки «по сети». Чтобы избежать этой проблемы, можно установить Ubuntu в качестве основной системы рядом с Android, так, чтобы она смогла использовать видеоадаптер напрямую. К сожалению, универсального способа сделать это не существует. Каждое устройство по-своему уникально, включая различные таблицы разделов NAND-памяти, на которую производится установка, различные устройства и драйверы для их работы.

Нативный X-сервер для Android

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

В любом случае будь готов к тому, что во время установки Linux-дистрибутива все твои данные будут уничтожены. Без этого никак.

Запуск Ubuntu с помощью стартового скрипта

Что дальше

Linux-дистрибутив, установленный рядом с оригинальной Android-системой, может стать очень удобным рабочим инструментом, однако на данный момент «Linux внутри Android» считается скорее игрушкой и способом покрасоваться перед друзьями, нежели серьезным решением. Уверен, что в скором времени, когда для Android появится полноценная реализация графического сервера Wayland, ситуация начнет меняться и мы увидим дистрибутивы с адаптированным для небольших экранов интерфейсом, а также полноценные Linux-приложения, распространяемые в форме обычных APK-пакетов. Также не стоит забывать о проекте «Ubuntu for Android» — в его рамках идет работа над официальным портом Ubuntu для Android, который позволит использовать смартфон в качестве переносного системника, подключаемого к любому монитору.

Источник

Прошивка телефонов из под Linux

1) запускать через Wine
2) поставить винду в виртуалку и шить оттуда

Какой из этих вариантов надёжнее? Не хотелось бы окирпичить девайсы

Смотря какие чипсеты. MTK можно шить из под линукса легко, MTK droid tools есть для линукса натинвый, квалком тоже легко, fastboot и все, а вот остальное я боюсь windows only. ну или попробуй прокинуть usb в виртуалку.

Какой из этих вариантов надёжнее? Не хотелось бы окирпичить девайсы

Запустить винду не в виртуалке

Запустить винду не в виртуалке

Спасибо, товарищ капитан. Но я ясно написал, что в настоящее время не могу

Про MTK Droid Tools не знал, спасибо

Зависит от девайса.

Да, пробросить USB в виртуалку на QEMU-KVM. Ещё момент, когда подключаешь к прошивальщику, может меняться код устройства и надо подключать к виртуалке заново

Линукс есть, а винду в дуалбуте негде держать? Прохладная история.

Тогда из оставшихся вариантов самым надёжным видится виртуалка, причем с пробросом в неё USB контроллера.
Ну или, в зависимости от модели, нативные инструменты, как тот же MTK Droid Tools или fastboot из андроид сдк

Почти все девайсы нонче имеют fastboot. А я вам повторю, что Android даже разрабатывается исключительно под Linux или Mac.

Линукс есть, а винду в дуалбуте негде держать? Прохладная история.

У меня старая мать с BIOS, но Linux установлен на диск с GPT и разделом bios_grub. Винда не хочет устанавливаться рядом

Любую соньку можно спокойно шить Flashtool’ом, если так уж нужен гуй.
А так — я когда-то нокию шил из-под винды XP с проброшенным в VBox USB. Всё живо.

Отдельный винт пробовал?

Никак не получится. Остается

2) поставить винду в виртуалку и шить оттуда

Хз, я всегда адб прошивал. Я, правда, телефоны очень не люблю и меняю раз в тыщу лет, но пока на говно какое вин онли не попадал.

Отдельный винт решит проблему. Но у меня его пока нет

Что прошивать собираетесь? Если это смартфоны то там можно через ТПВР или как там его. Но сперва нужно его через адб установить.

Т.е. линукс или винда не имеет значения.

В основном смарты BQ, Samsung и всякую китайщину вроде Irbis или Digma.

Кастомный рекавери им ставь и оттуда прошивай.

Тоже вариант. Но при наличии этого самого рекавери

Allwinner и Rockchip шьются нативно. Свежие MTK вроде тоже. Остальные хз. Я как-то давно реверсил протокол и сделал прошивальщик за вечер, но не советую.

Самсунги сложно. Мои шьются этим: https://bitbucket.org/benjamin_dobell/heimdall/downloads/ Но говорят это не всегда и не у всех и зависит от многих факторов.

4пда или хда там много добра

Ирбис шил и рутовал описанным мною способом

Для медиатеков еще есть их SP_Flash_Tool_Linux.

MTK можно шить из под линукса легко, MTK droid tools есть для линукса натинвый

Мой старый китаец на мтк шился каким-то дерьмом от вендора под оффтопик с дичайшими матюками. И некоторые прошивки в виде exe файлов. Дали даже китайский TWRP возможность поставить, который был кастрирован и шить не умел, вообще глючный какой-то.

Второй. Шил таким образом древний кутек с100, полет нормальный.
В случае вайна может возникнуть косяк, из-за которого аппарат станет кирпичом.

У меня все смартфоны, какие были, шились из под Linux на раз-два через fastboot. Если случай экзотический, то можно загрузиться в TWRP (recovery даже не обязательно прошивать) и накатить прошивку из него.

Ну тут я думаю совсем старый чип мтк. Да, некоторые модели делали укурки а не люди. Но сейчас все стандартизировано стало. Правда телефоны на мтк от lg и sony вроде как не шьются через MDT, только фирменные утилиты под винду.

… пробрасывать не USB, а его контроллер (т.е. PCI устройство). Так сразу убираются проблемы с изменением ID.

О, спасибо Тебе добрый человек

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • линукс прошивка для андроид
  • линукс просмотр файлов в каталоге
  • линукс просмотр всех пользователей
  • линукс программирование с нуля
  • линукс программа для работы с дисками

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии