I have some data from a NAND chip, dumped using the built in nanddump utility on the embedded device.
This is the device information: https://openwrt.org/toh/bt/homehub_v5a The NAND chip is 128MiB Spansion ML01G100BHI00
I have processed the dump using the Python ubi_reader (https://github.com/jrspruitt/ubi_reader) which shows information that fits and produces some files:
128K img-2097163413_vol-caldata.ubifs
15M img-2097163413_vol-FFS.ubifs
21M img-2097163413_vol-OpenRG.ubifs
I've tried mounting any of these (especially the last two) with commands including the below:
sudo mount -o loop img-2097163413_vol-FFS.ubifs /mnt/tmp
sudo mount -t jffs2 -o loop img-2097163413_vol-FFS.ubifs /mnt/tmp
sudo mount -t ubifs -o loop img-2097163413_vol-FFS.ubifs /mnt/tmp
But I get different errors, including:
mount: /mnt/tmp: wrong fs type, bad option, bad superblock on /dev/loop16, missing codepage or helper program, or other error
I am running Ubuntu 20.04 and have the mtd-utils installed. I don't know if I need a special kernel module (or a custom kernel build) to be able to read these on a desktop build of Linux?
Running binwalk gives quite a lot of output, but I'm not convinced it really helps:
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
0 0x0 UBIFS filesystem superblock node, CRC: 0x18587199, flags: 0x0, min I/O unit size: 2048, erase block size: 129024, erase block count: 662, max erase blocks: 662, format version: 4, compression type: lzo
129024 0x1F800 UBIFS filesystem master node, CRC: 0x2AB14864, highest inode: 64, commit number: 0
131072 0x20000 UBIFS filesystem master node, CRC: 0xB8679430, highest inode: 64, commit number: 0
133120 0x20800 UBIFS filesystem master node, CRC: 0xCFA58C39, highest inode: 68, commit number: 1
135168 0x21000 UBIFS filesystem master node, CRC: 0x49224F4A, highest inode: 68, commit number: 1
137216 0x21800 UBIFS filesystem master node, CRC: 0xF356AD50, highest inode: 68, commit number: 1
139264 0x22000 UBIFS filesystem master node, CRC: 0x1C09B66E, highest inode: 68, commit number: 2
141312 0x22800 UBIFS filesystem master node, CRC: 0x85E22D40, highest inode: 68, commit number: 3
143360 0x23000 UBIFS filesystem master node, CRC: 0xD2CCE2D1, highest inode: 100, commit number: 4
145408 0x23800 UBIFS filesystem master node, CRC: 0x4FA2D61B, highest inode: 134, commit number: 5
147456 0x24000 UBIFS filesystem master node, CRC: 0x13B828D, highest inode: 178, commit number: 6
149504 0x24800 UBIFS filesystem master node, CRC: 0x462195E8, highest inode: 219, commit number: 7
151552 0x25000 UBIFS filesystem master node, CRC: 0xA8F61781, highest inode: 219, commit number: 8
153600 0x25800 UBIFS filesystem master node, CRC: 0x3A0CCA43, highest inode: 244, commit number: 9
155648 0x26000 UBIFS filesystem master node, CRC: 0xF3B91383, highest inode: 244, commit number: 10
157696 0x26800 UBIFS filesystem master node, CRC: 0xC962E252, highest inode: 267, commit number: 11
159744 0x27000 UBIFS filesystem master node, CRC: 0xB37C99F7, highest inode: 307, commit number: 12
161792 0x27800 UBIFS filesystem master node, CRC: 0x379C342E, highest inode: 347, commit number: 13
163840 0x28000 UBIFS filesystem master node, CRC: 0x906A63C7, highest inode: 347, commit number: 13
165888 0x28800 UBIFS filesystem master node, CRC: 0x2BCBF93, highest inode: 347, commit number: 13
167936 0x29000 UBIFS filesystem master node, CRC: 0x70D2F699, highest inode: 347, commit number: 14
169984 0x29800 UBIFS filesystem master node, CRC: 0x348E6DCE, highest inode: 347, commit number: 15
258048 0x3F000 UBIFS filesystem master node, CRC: 0x2681BD79, highest inode: 64, commit number: 0
260096 0x3F800 UBIFS filesystem master node, CRC: 0x9CF55F63, highest inode: 64, commit number: 0
262144 0x40000 UBIFS filesystem master node, CRC: 0xDBF4931E, highest inode: 68, commit number: 1
264192 0x40800 UBIFS filesystem master node, CRC: 0x6DB08419, highest inode: 68, commit number: 1
266240 0x41000 UBIFS filesystem master node, CRC: 0xFF66584D, highest inode: 68, commit number: 1
268288 0x41800 UBIFS filesystem master node, CRC: 0x10394373, highest inode: 68, commit number: 2
270336 0x42000 UBIFS filesystem master node, CRC: 0x89D2D85D, highest inode: 68, commit number: 3
272384 0x42800 UBIFS filesystem master node, CRC: 0xF65E2982, highest inode: 100, commit number: 4
274432 0x43000 UBIFS filesystem master node, CRC: 0x43922306, highest inode: 134, commit number: 5
276480 0x43800 UBIFS filesystem master node, CRC: 0x156A9DAA, highest inode: 178, commit number: 6
278528 0x44000 UBIFS filesystem master node, CRC: 0x62B35EBB, highest inode: 219, commit number: 7
280576 0x44800 UBIFS filesystem master node, CRC: 0x67935A0C, highest inode: 219, commit number: 8
282624 0x45000 UBIFS filesystem master node, CRC: 0x1E9E0110, highest inode: 244, commit number: 9
284672 0x45800 UBIFS filesystem master node, CRC: 0x9213CFCB, highest inode: 244, commit number: 10
286720 0x46000 UBIFS filesystem master node, CRC: 0xC552174F, highest inode: 267, commit number: 11
288768 0x46800 UBIFS filesystem master node, CRC: 0xBF4C6CEA, highest inode: 307, commit number: 12
290816 0x47000 UBIFS filesystem master node, CRC: 0x3BACC133, highest inode: 347, commit number: 13
292864 0x47800 UBIFS filesystem master node, CRC: 0x9C5A96DA, highest inode: 347, commit number: 13
294912 0x48000 UBIFS filesystem master node, CRC: 0x47A9DC28, highest inode: 347, commit number: 13
296960 0x48800 UBIFS filesystem master node, CRC: 0x6483E9BE, highest inode: 347, commit number: 14
299008 0x49000 UBIFS filesystem master node, CRC: 0x38BE98D3, highest inode: 347, commit number: 15
9045944 0x8A07B8 MySQL MISAM compressed data file Version 10
Is it possible to mount these images? Otherwise, what is the best way to access the information on the NAND dump?