我有一个ubi图像文件(.ubi),我希望从该图像中更改一个文件(准确地说,是/etc/network/interfaces)。
如何从这个ubi映像中更改一个文件?
我正在使用OS,但我也有一个Ubuntu。
发布于 2018-03-06 12:55:11
好的,在阅读了很多之后,我终于想出了如何在Ubuntu上完成它:
1.)用nandsim模拟NAND器件
modprobe nandsim first_id_byte=... second_id_byte=.. third_id_byte=.. fourth_id_byte=...NAND芯片ID列表.
2.)查找MT-设备id
cat /proc/mtd | grep -i "NAND Simulator"3.)加载UBI内核模块
modprobe ubi4.)擦除MT-设备(您可以跳过这一步)
flash_erase /dev/mtdX 0 05.)用ubiformat闪存UBI图像
ubiformat /dev/mtdX -y -f /path/to/ubi -O XXXX -s XXXX6.)用ubiattach将MT-设备附加到UBI上,并记下UBI设备号。
ubiattach -p /dev/mtdX7.)用mount安装它
mount -t ubifs ubiX /path/to/mount-point/8.)做些改变。
9.)用mkfs.ubifs创建UBIFS
mkfs.ubifs -o ubifs.img -m XXXX -e XXXX -c XXXX -v -r /path/to/mount-point/10.)用ubinize创建UBI图像
ubinize -o final.ubi -p XXXX -m XXXX -s XXXX -v ubinize.cfgXXXX =特定于所使用的NAND闪存芯片的参数。
ubinize.cfg看起来如下所示:
[rootfs]
mode=ubi
image=ubifs.img
vol_name=rootfs
vol_flags=autoresize
vol_type=dynamic
vol_id=0https://unix.stackexchange.com/questions/428238
复制相似问题