Команда fastboot getvar all — основной диагностический инструмент перед прошивкой устройства: она выводит версию загрузчика, статус разблокировки, активный слот разделов и другие системные параметры, без проверки которых легко установить несовместимый образ. Например, если вы собираетесь прошивать Xiaomi, Pixel или OnePlus и не уверены, какой слот активен или разблокирован ли загрузчик, именно эта команда даст ответ за секунды.
Ошибка на этапе проверки параметров — частая причина «окирпичивания»: прошивка не в тот слот, образ от другой ревизии платы, заблокированный загрузчик. Один короткий запрос через fastboot позволяет избежать большинства таких ситуаций. Ниже разберём, что выводит команда, как подготовить компьютер и как трактовать каждый параметр.
Что делает команда fastboot getvar all
Команда запрашивает у загрузчика устройства полный набор доступных переменных и выводит их в консоль. В отличие от точечных запросов вида fastboot getvar product, вариант с параметром all показывает всё сразу — это удобно для первичной диагностики.
Набор переменных зависит от производителя и версии загрузчика: на одних устройствах выводится пара десятков строк, на других — заметно больше. Если какого-то параметра в списке нет, это не ошибка — просто конкретный загрузчик его не публикует.
- 🔓 Статус загрузчика — разблокирован (unlocked: yes) или заблокирован.
- 📦 Активный слот — current-slot: a или b на устройствах с A/B-разметкой.
- 🏷️ Кодовое имя продукта — нужно для проверки совместимости образа прошивки.
- 🔋 Уровень заряда батареи — если загрузчик его сообщает.
- 🔢 Версии — версия загрузчика, baseband и других компонентов.
Подготовка: драйверы, ADB и перевод в режим Fastboot
Для работы нужен компьютер с установленным пакетом Android SDK Platform-Tools — в него входят утилиты adb и fastboot. На Windows дополнительно могут потребоваться USB-драйверы от производителя устройства; без них fastboot часто не видит подключённый аппарат.
Само устройство должно находиться в режиме fastboot (bootloader mode). Способ входа зависит от модели: на многих аппаратах это комбинация кнопок питания и громкости при включении, но точную комбинацию стоит уточнить в документации именно вашего устройства. Альтернативный вариант — из включённой системы с активированной отладкой по USB выполнить команду:
adb reboot bootloader
После перезагрузки в режим загрузчика проверьте, что компьютер видит устройство:
fastboot devices
Если в ответ появилась строка с серийным номером и словом fastboot — связь установлена. Пустой вывод означает проблему с драйвером, кабелем или режимом устройства.
☑️ Подготовка к работе с fastboot
Пошаговое выполнение команды
Сама процедура занимает несколько секунд. Откройте терминал (командную строку, PowerShell или консоль Linux) в папке, где находится исполняемый файл fastboot, либо добавьте его в переменную PATH.
fastboot getvar all
Вывод придёт в консоль в виде списка пар «имя: значение». Строки обычно помечаются префиксом (bootloader), а в конце появляется сообщение о завершении операции. Сохраните вывод в текстовый файл — он пригодится, если после прошивки что-то пойдёт не так и понадобится восстановить исходное состояние.
⚠️ Внимание: команда
fastboot getvar allсама по себе безопасна — она только читает данные и ничего не изменяет. Однако не выполняйте в том же сеансе командыflashилиerase, не убедившись, что образы соответствуют именно вашей модели и слоту.
Расшифровка основных переменных
Часть строк в выводе очевидна, часть требует пояснения. Ниже — наиболее значимые параметры, которые встречаются на многих устройствах. Помните: точный набор зависит от загрузчика конкретной модели.
| Переменная | Что означает | Зачем проверять |
|---|---|---|
product | Кодовое имя устройства | Сверить с образом прошивки |
unlocked | Статус разблокировки загрузчика (yes/no) | Без разблокировки прошивка невозможна |
current-slot | Активный слот (a или b) | Определить, куда ставить образ |
version-bootloader | Версия загрузчика | Совместимость с прошивкой |
battery-voltage / battery-soc-ok | Состояние батареи | Оценить, хватит ли заряда на процедуру |
serialno | Серийный номер | Идентификация устройства |
Особое внимание уделите параметру unlocked. Если загрузчик заблокирован, команды прошивки будут отклоняться с ошибкой, а попытки обойти ограничение могут привести к потере данных — разблокировка на большинстве устройств сопровождается полным сбросом.
На устройствах с A/B-разметкой (seamless updates) проверка current-slot критична: прошивка в неправильный слот — типичная причина того, что аппарат не загружается после обновления. Если слоты в выводе отсутствуют, вероятно, устройство использует классическую разметку с одним набором разделов.
Типичные ошибки и их решение
Если команда не срабатывает, причина почти всегда в окружении, а не в самой команде. Разберём распространённые сценарии.
- 🔌 Пустой ответ fastboot devices — переустановите драйверы, смените USB-порт (лучше напрямую в материнскую плату) и кабель.
- ⏳ Зависание на «waiting for device» — устройство не в режиме fastboot или драйвер не определил его; проверьте Диспетчер устройств в Windows.
- ❌ Ошибка «unknown variable» при точечном запросе — загрузчик не поддерживает эту переменную; используйте
getvar allи смотрите, что реально доступно. - 🚫 «Permission denied» на Linux/macOS — запустите команду с sudo или настройте udev-правила.
⚠️ Внимание: если устройство в режиме fastboot не определяется ни на одном компьютере и ни с одним кабелем, возможная причина — повреждение загрузчика или неисправность порта. В таком случае не предпринимайте дальнейших действий с прошивкой и обратитесь в сервисный центр или к документации производителя по аварийному восстановлению.
Почему вывод getvar all может отличаться на двух одинаковых телефонах
Даже в рамках одной модели версии загрузчика могут различаться — например, после обновлений прошивки. Некоторые переменные появляются только в новых версиях bootloader, а часть производители скрывают по соображениям безопасности. Поэтому сравнивайте вывод не «строка в строку», а по ключевым параметрам: product, unlocked, current-slot.
Безопасность и ограничения команды
Команда fastboot getvar all относится к операциям чтения: она не меняет данные, не стирает разделы и не влияет на гарантию. Это делает её идеальным первым шагом в любой диагностике — вы получаете снимок состояния устройства, не рискуя ничем.
Ограничения тоже есть. Команда не покажет содержимое разделов, не проверит целостность системы и не ответит, почему устройство не загружается — она лишь сообщает параметры загрузчика. Для глубокой диагностики потребуются другие инструменты, а для вывода конкретных выводов — сопоставление данных с документацией на вашу модель.
Ещё один нюанс: на некоторых устройствах статус unlocked не отражает реальное состояние после повторной блокировки загрузчика — формально значение может быть «no», но следы разблокировки остаются в системных флагах. Если вы покупаете устройство с рук, одной этой команды для полной проверки недостаточно.
Часто задаваемые вопросы
Работает ли fastboot getvar all на заблокированном загрузчике?
Да. Чтение переменных — базовая функция протокола fastboot, она доступна независимо от статуса разблокировки. Именно так и проверяют сам статус: значение переменной unlocked покажет текущее состояние.
Почему в выводе нет переменной current-slot?
Скорее всего, устройство использует классическую разметку разделов без A/B-схемы — в таком случае слотов просто нет. Также некоторые загрузчики не публикуют этот параметр. Отсутствие строки — норма, а не признак неисправности.
Можно ли выполнить команду без ПК, прямо с телефона?
Для этого нужно второе Android-устройство с поддержкой USB OTG и приложением-терминалом с бинарником fastboot. Это возможно, но менее надёжно, чем полноценный компьютер: качество OTG-соединения и питание могут мешать стабильной работе.
Что означает «FAILED (remote: unknown command)» в ответ на getvar all?
Такая ошибка встречается на устройствах, где загрузчик не поддерживает запрос all. Решение — запрашивать переменные по одной: fastboot getvar product, fastboot getvar unlocked и так далее.
Стирает ли команда какие-либо данные на устройстве?
Нет. fastboot getvar all выполняет только чтение информации из загрузчика. Пользовательские данные, настройки и разделы остаются нетронутыми.