Телефон завис на логотипе после неудачного обновления, а под рукой только компьютер с Ubuntu или другим дистрибутивом Linux — эта ситуация решается через fastboot или ADB, которые работают в Linux нативно, без эмуляторов и виртуальных машин. В отличие от Windows, здесь не нужно искать драйверы: достаточно установить пакеты android-tools и настроить правила udev, чтобы система видела устройство.
В этой статье разберём полный цикл: от подготовки системы и разблокировки загрузчика до прошивки разделов и проверки результата. Отдельно затронем специфику устройств Samsung, для которых вместо fastboot используется утилита Heimdall, и типичные ошибки, с которыми сталкиваются при прошивке из Linux.
Что нужно знать перед прошивкой
Прошивка — это запись образа операционной системы в постоянную память смартфона. Процедура стирает пользовательские данные при разблокировке загрузчика, а при ошибке может превратить устройство в «кирпич». Поэтому первый шаг — не команды, а подготовка.
Определите точную модель и кодовое имя устройства: например, у Google Pixel и Xiaomi прошивки строго привязаны к ревизии аппарата. Образ от другой модели, даже внешне похожей, с высокой вероятностью приведёт к нерабочему состоянию. Кодовое имя обычно указано на странице загрузки прошивки или определяется командой fastboot getvar product в режиме загрузчика.
- 🔋 Зарядите аккумулятор минимум до 50–60%, чтобы телефон не отключился в процессе записи разделов.
- 💾 Сделайте резервную копию фотографий, контактов и мессенджеров — разблокировка загрузчика полностью очищает память.
- 🔌 Используйте качественный USB-кабель и порт напрямую на материнской плате, без хабов.
- 📄 Скачивайте прошивку только с официального источника производителя или проверенного репозитория вроде проекта вашей кастомной ROM.
⚠️ Внимание: разблокировка загрузчика на большинстве устройств аннулирует гарантию и отключает часть функций безопасности (например, платежи через NFC могут перестать работать на некоторых прошивках). Уточните политику производителя для вашей модели до начала процедуры.
Установка ADB и Fastboot в Linux
Инструменты Android Platform Tools есть в репозиториях большинства дистрибутивов. В Debian, Ubuntu и производных установка выполняется одной командой:
sudo apt update && sudo apt install android-tools-adb android-tools-fastboot
В Fedora пакеты называются android-tools, в Arch Linux — android-tools из официального репозитория. Альтернатива — скачать свежую версию Platform Tools с официального сайта для разработчиков Android и распаковать в домашний каталог; это даёт самую актуальную версию утилит.
Чтобы система видела телефон без sudo, настройте правила udev. Создайте файл /etc/udev/rules.d/51-android.rules с параметрами производителя (Vendor ID) вашего устройства, затем перезагрузите правила командой sudo udevadm control --reload-rules. Список Vendor ID доступен в официальной документации Android. Без этого шага adb devices может показывать пустой список или статус no permissions.
Проверка подключения устройства
Включите на телефоне отладку по USB: откройте «Настройки» → «О телефоне», семь раз нажмите на «Номер сборки» для активации режима разработчика, затем в разделе «Для разработчиков» включите отладку по USB. Точные названия пунктов могут отличаться в зависимости от оболочки — сверьтесь с документацией вашей модели.
Подключите смартфон кабелем и выполните adb devices. На экране телефона появится запрос на разрешение отладки с этого компьютера — подтвердите его, отметив «Всегда разрешать». В списке устройство должно отображаться со статусом device. Если статус unauthorized — подтверждение на телефоне не было дано; если список пуст — проверяйте кабель и правила udev.
Для перевода в режим загрузчика используется команда:
adb reboot bootloader
После перезагрузки проверьте видимость устройства командой fastboot devices. Телефон в режиме fastboot определяется системой иначе, чем в обычном режиме, поэтому отдельная проверка обязательна.
Разблокировка загрузчика
Загруженный в режим fastboot телефон с заблокированным загрузчиком откажется принимать прошивку. Разблокировка выполняется командой:
fastboot flashing unlock
На старых устройствах вместо неё используется fastboot oem unlock. На экране телефона появится предупреждение — подтвердите действие кнопками громкости и питания. После этого устройство выполнит сброс до заводских настроек, и все данные будут удалены.
У некоторых производителей процедура сложнее. Xiaomi требует привязки аккаунта Mi и ожидания разрешения на разблокировку через фирменную утилиту, которая официально работает только под Windows — это одно из немногих мест, где Linux-пользователю может понадобиться обходной путь в виде виртуальной машины. Устройства Google Pixel и большинство моделей OnePlus разблокируются напрямую, без дополнительных разрешений.
⚠️ Внимание: команда разблокировки необратимо стирает раздел данных. Если на телефоне есть несохранённые фото, переписки или двухфакторные токены — перенесите их заранее, восстановить информацию после wipe практически невозможно.
Прошивка телефона через Fastboot
Официальные заводские образы для многих устройств распространяются в виде архива с набором .img-файлов и готовым скриптом flash-all.sh, который автоматически прошивает все разделы в правильном порядке. Для ручной прошивки последовательность выглядит так:
fastboot flash boot boot.img
fastboot flash system system.img
fastboot flash vendor vendor.img
Набор разделов зависит от устройства: у современных моделей с архитектурой A/B (seamless updates) разделы дублируются, а system и vendor могут входить в состав динамического раздела super.img. В таком случае прошивка выполняется через режим fastbootd — ориентируйтесь на инструкцию, приложенную к конкретному образу.
☑️ Порядок прошивки через fastboot
После записи всех разделов перезагрузите устройство командой fastboot reboot. Первая загрузка после прошивки занимает заметно больше времени, чем обычно — система оптимизирует приложения и создаёт структуру данных. Прерывать её выключением не стоит: дождитесь экрана приветствия.
Прошивка Samsung через Heimdall
Устройства Samsung не поддерживают fastboot — вместо него используется фирменный режим Download Mode (Odin mode). Под Linux проприетарный Odin заменяет открытая утилита Heimdall, доступная в репозиториях большинства дистрибутивов:
sudo apt install heimdall-flash
Телефон переводится в Download Mode комбинацией кнопок, которая различается между поколениями Galaxy — точную комбинацию для вашей модели уточните в официальной документации или на профильном форуме. После подключения проверьте обнаружение командой heimdall detect.
Прошивка отдельного раздела выполняется так:
heimdall flash --RECOVERY recovery.img --no-reboot
Параметр --no-reboot важен, когда нужно сразу после прошивки загрузиться в новый recovery, не дав стоковой системе перезаписать его. Полные многокомпонентные прошивки Samsung (файлы AP, BL, CP, CSC) через Heimdall прошиваются посекционно, что требует распаковки архивов и знания схемы разделов — для таких задач многие пользователи предпочитают виртуальную машину с Windows и Odin.
Почему Samsung не работает с fastboot
Samsung использует собственный протокол загрузчика, несовместимый со стандартным fastboot от Google. Исторически прошивка выполнялась только через фирменную программу Odin под Windows. Heimdall — это открытая реализация того же протокола, созданная методом обратной разработки, поэтому она поддерживает не все новые модели и разделы.
Сравнение инструментов прошивки под Linux
Выбор утилиты зависит от производителя смартфона и типа прошивки. Сводная таблица поможет сориентироваться:
| Инструмент | Устройства | Режим | Типичная задача |
|---|---|---|---|
| Fastboot | Google Pixel, OnePlus, многие другие | Bootloader | Прошивка разделов, разблокировка |
| ADB | Любые Android | Загруженная система | Sideload OTA, диагностика |
| Heimdall | Samsung Galaxy | Download Mode | Прошивка recovery и разделов |
| fastbootd | Устройства с динамическими разделами | Userspace fastboot | Прошивка super.img |
Для установки OTA-обновлений вручную удобен режим ADB sideload: телефон загружается в recovery, выбирается пункт «Apply update from ADB», после чего пакет отправляется командой adb sideload update.zip. Этот способ не требует разблокировки загрузчика, если пакет подписан производителем.
Типичные ошибки и их решение
Чаще всего процесс останавливается на этапе обнаружения устройства. Пустой вывод fastboot devices при подключённом телефоне означает проблему с правами udev, кабелем или портом. Попробуйте запустить команду через sudo — если устройство появилось, дело точно в правах.
Ошибка FAILED (remote: 'Flashing is not allowed') указывает на заблокированный загрузчик — вернитесь к шагу разблокировки. Сообщение о несовпадении размера или подписи образа означает, что файл прошивки повреждён при скачивании или предназначен для другой ревизии устройства: сверьте контрольную сумму архива с опубликованной на странице загрузки и проверьте кодовое имя модели.
Если после прошивки телефон уходит в bootloop — циклическую перезагрузку — не паникуйте. Загрузитесь обратно в fastboot и прошейте заведомо рабочий стоковый образ. Бутлуп после прошивки почти всегда обратим, если загрузчик отвечает на команды fastboot. Критична только ситуация, когда устройство вообще не входит в режим загрузчика — тогда потребуется низкоуровневое восстановление, специфичное для чипсета (Qualcomm EDL, MediaTek Download), и здесь безопаснее обратиться к профильным инструкциям именно для вашей модели.
Часто задаваемые вопросы
Можно ли прошить телефон под Linux без разблокировки загрузчика?
Только официальные OTA-пакеты через adb sideload в стоковом recovery — они подписаны производителем. Полная прошивка разделов через fastboot требует разблокированного загрузчика практически на всех устройствах.
Нужны ли драйверы для прошивки телефона в Linux?
Отдельные драйверы, как в Windows, не требуются — ядро Linux поддерживает ADB и fastboot из коробки. Нужно лишь установить пакеты android-tools и настроить правила udev для доступа без root-прав.
Что делать, если телефон не определяется в fastboot?
Проверьте кабель (он должен поддерживать передачу данных, а не только зарядку), смените USB-порт, выполните sudo fastboot devices для исключения проблемы с правами и убедитесь, что телефон действительно в режиме загрузчика, а не просто выключен.
Подойдёт ли прошивка от похожей модели телефона?
Нет. Образы строго привязаны к кодовому имени и аппаратной ревизии устройства. Прошивка чужого образа — один из самых частых способов получить нерабочий аппарат. Всегда сверяйте кодовое имя модели с именем файла прошивки.
Как вернуть стоковую прошивку после кастомной?
Скачайте официальный заводской образ для вашей модели и прошейте его через fastboot тем же способом, что и кастомную. Для устройств с готовым скриптом достаточно запустить flash-all.sh. После этого загрузчик можно заблокировать обратно командой fastboot flashing lock — но только на полностью стоковой прошивке, иначе телефон не загрузится.