Конвертор файла переменных окружения ENV


Как получить файл 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 и т.д.)