Как получить файл env.img по ADB
Здесь описан способ получения файла env.img из одноименного раздела
на загрузочном носителе TV-бокса (приставки) по локальной сети с помощью ADB.
Предполагается, что на ПК установлена утилита ADB.exe, и вам известно, для чего она нужна
и как ей пользоваться.
Порядок действий:
1. Включить приставку и загрузить Android, т.е. привести её в работающее состояние.
2. Перейти на ПК с Windows в папку C:\adb (имя папки условно, это папка, в которой находится утилита adb.exe),
т.е. сделать её текущей.
3. Отключить брандмаурер и антивирус (если они блокируют работу по сети)
4. Открыть окно консоли командой CMD, дальше все действия выполняются в этом окне
5. Подключиться к приставке по ADB консольной командой:
C:\adb> adb сonnect 192.168.0.126
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
connected to 192.168.0.103:5555
6. Проверить правильность подключения:
C:\adb> adb devices
List of devices attached
192.168.0.126:5555 device
7. Войти в командную оболочку (консоль) приставки:
C:\adb>adb shell
Transpeed_H616:/ #
Дальше будут выполняться команды Linux в консоли приставки.
8. Перейти в папку download, т.е. сделать её текущей:
Transpeed_H616:/ # cd storage/emulated/0/download
9. Сохранить в файл содержимое раздела ENV (первые 256 блоков):
1) для Android 10 (H616)
dd if=/dev/block/mmcblk0p2 of=env.img bs=512 count=256 conv=fsync
256+0 records in
256+0 records out
131072 bytes (128 K) copied, 0.019663 s, 6.3 M/s
2) для Android 12 (H618)
dd if=/dev/block/mmcblk0p3 of=env_a.img bs=512 count=256 conv=fsync
dd if=/dev/block/mmcblk0p4 of=env_b.img bs=512 count=256 conv=fsync
10. Проверить результат сохранения файла:
Transpeed_H616:/storage/emulated/0/download # ls
env.img
11. Выйти из консоли приставки:
Transpeed_H616:/ # exit
12. Скопировать файл на ПК в текущую папку:
C:\adb>adb pull storage/emulated/0/download/env.img env.img
1365 KB/s (131072 bytes in 0.093s)
ВНИМАНИЕ ! Описанные ниже процедуры разумно выполнять лишь при полном понимании сути
выполняемых команд. Любые ошибки при вводе команд dd могут привести к повреждению
прошивки и необходимости её восстановления. Поэтому опубликованный ниже текст имеет ознакомительные цели
и не является руководством к действию.
После редактирования (конвертирования, исправления) файла env и сохранения
с новым именем, например, env_cor.img его можно
записать обратно в раздел env на приставку с помощью ADB.
1. Подключиться по ADB способом, аналогичным описанному выше.
2. Скопировать исправленный файл env_cor.img из текущей папки ПК на приставку в папку download:
C:\adb>adb push env_cor.img storage/emulated/0/download/env_cor.img
3. Войти в консоль по adb shell и перейти в папку storage/emulated/0/download
C:\adb>adb shell
Transpeed_H616:/ # cd storage/emulated/0/download
4. Записать исправленный файл envcor.img
1) для Android 10 (H616)
dd if=envcor.img of=/dev/block/mmcblk0p2 conv=fsync
2) для Android 12 (H618)
dd if=envcor.img of=/dev/block/mmcblk0p3 conv=fsync
dd if=envcor.img of=/dev/block/mmcblk0p4 conv=fsync
Примечание. Копирование файла с приставки на ПК и обратно можно делать любым другим способом
(через USB-флешку, по FTP и т.д.)