网上有很多jffs2文件的挂载教程,一般都是从编译安装所需的库文件开始的,在不同版本的linux下总是遇到各种问题,今天找到了更好的办法,只需要编译mtd-utils就可以实现挂载jffs2文件的目的了.
从光猫中用binwalk提取出的xxx.jffs2文件,一般对应光猫内linux中的文件系统,如果想修改光猫中的界面/配置/启动项等等都要从此下手,但是一般的linux中是不支持jffs2的文件挂载的,所以总结一下在ubuntu中挂载jffs2文件的过程
一.前期准备
1.我下载的是ubuntu的最新版本Ubuntu20.04 desktop:
https://ubuntu.com/download/desktop
2.安装git,目的是为了clone出mtd-utils.git:
apt install git
3.从git上获取mtd-utils的源码
git clone git://git.infradead.org/mtd-utils.git
4.安装必要的编译环境
apt install -y libssl-dev libzstd-dev liblzo2-dev liblzo2-dev zlibc uuid-dev zlib1g-dev libtool
二.编译jffs工具
1.进入下载好的mtd-utils目录并依次执行
autoreconf -i
automake
autoconf
./configure --host=$(CROSS_COMPILE_PRIV) CFLAGS=
make
make install
三.挂载xxx.jffs2文件
sudo modprobe mtdram total_size=50720
sudo modprobe mtdblock
sudo dd if=待挂载的文件路径和文件名.jffs2 of=/dev/mtdblock0
mkdir /mnt/mtd 创建挂载点
sudo mount -t jffs2 /dev/mtdblock0 /mnt/mtd
然后就可以进入/mnt/mtd文件夹内访问需要挂载的xxx.jffs2中的文件了