Access Your Account
Login
Register
Only administrators can add new users.
Your personal data will be used to support your experience throughout this website, to manage access to your account, and for other purposes described in our privacy policy.
If the device is checking a plaintext hash (common in non-secure-boot models or specific partition updates), you must update the image header after modifying the file.
Tools Required:
binwalk (for extraction)imgrepacker or mkimage (for reconstruction)Procedure:
binwalk -e original_image.bin to extract the kernel and rootfs.squashfs-root).mksquashfs squashfs-root rootfs.bin -b 4096 -comp xz| Cause | Explanation | |-------|-------------| | Corrupted download | File transfer error or incomplete image. | | Version mismatch | Trying to downgrade to an unsigned or older version. | | Modified repack | User unpacks, changes content (e.g., busybox, scripts), and repacks without resigning. | | Wrong image type | Flashing an image intended for a different Huawei device variant. | huawei s7721u recovery image verify failed repack
If you extracted a signature earlier, re‑append it:
cat recovery_nosig.img signature.bin > recovery_new.img
After modifications:
mksquashfs recovery_root/ new_recovery.squashfs -comp lzo -b 131072 -noappend
You cannot simply "repair" a corrupted image by renaming it. You must source a clean copy. Linux environment (WSL or VM) binwalk (for extraction)
UPDATE.APP file within the firmware folder.UPDATE.APP file.RECOVERY.img entry in the list.recovery_stock.img.# If you have update.bin
unpack_update.py -f update.bin -o extracted/
3.4 Mounting and Modifying the Recovery Image
Use binwalk to find the SquashFS start offset:
binwalk original_recovery.img
Output example:
DECIMAL HEXADECIMAL DESCRIPTION
0 0x0 U-Boot uImage header
64 0x40 LZMA compressed data
262144 0x40000 Squashfs filesystem
Extract the SquashFS part:
dd if=original_recovery.img of=recovery.squashfs bs=1 skip=262144
Mount it (or use unsquashfs):
sudo mount -t squashfs -o loop recovery.squashfs /mnt/recovery
# Or:
unsquashfs -d recovery_root recovery.squashfs
Now modify the contents. Common fixes:
- Replace a corrupted
rcS or init script.
- Add
dropbear SSH binary for remote recovery.
- Remove password checks from
passwd.