Skip to content

Instantly share code, notes, and snippets.

@filippz
Last active March 2, 2025 21:28
Show Gist options
  • Save filippz/e6e494c19a32840582e66a81ab311fc0 to your computer and use it in GitHub Desktop.
Save filippz/e6e494c19a32840582e66a81ab311fc0 to your computer and use it in GitHub Desktop.
Extracting lsd.jxe from MIB2 firmware update archive

mount app.img

MIB2 firmware containts MMX2\app\70\default\app.img file which containts QNX6 filesystem1 that can be mounted in Ubuntu with

sudo mount -o loop -t qnx6 ~/MHI2_ER_AUG22_K3346_MU1438/app.img ~/app

download/compile dumpifs

For manipulating ifs files we need dumpifs and exMifsLzo (as main.stage2.ifs.lzo is LZO compressed)

git clone https://github.com/FrancisHoogendijk/dumpifs

The repo contains binaries for both dumpifs and exMifsLzo but the dumpifs wasn't working for me so I removed both and compiled them with make (some development files need to be installed with apt)

cd dumpifs
rm dumpifs
rm exMifsLzo
make

decompress main_stage2.ifs.lzo and extract lsd.jxe

Decompress the img_restore/main_stage2.ifs.lzo

./exMifsLzo ~/app/img_restore/main_stage2.ifs.lzo main_stage2.ifs
./dumpifs -z main_stage2.ifs -f ifs/lsd.jxe

lsd.jxe is now extracted in ifs/lsd.jxe

Footnotes

  1. app.img also contains imagefs section

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment