UBIイメージで単一のファイルを変更する方法

UBIイメージで単一のファイルを変更する方法

ubiイメージファイル(.ubi)があり、そのイメージで単一のファイルを変更したい(/etc/network/interfaces正確に言えば)。

ubiイメージで単一のファイルを変更するには?

私はOS Xを使用していますが、Ubuntu VMもあります。

答え1

まあ、私は多くの本を読んだ後、ついにUbuntuでこれを行う方法を見つけました。

1.) NAND MTデバイスシミュレーションnandsim

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 ubi

4.)MTデバイスを消去する(このステップをスキップできます)

flash_erase /dev/mtdX 0 0

5.) UBI イメージの更新ubiformat

ubiformat /dev/mtdX -y -f /path/to/ubi -O XXXX -s XXXX

6.)MTデバイスをUBIに接続し、ubiattachUBIデバイス番号をメモします。

ubiattach -p /dev/mtdX

7.) インストールmount

mount -t ubifs ubiX /path/to/mount-point/

8.) 変更します。

9.) UBIFSの生成mkfs.ubifs

mkfs.ubifs -o ubifs.img -m XXXX -e XXXX -c XXXX -v -r /path/to/mount-point/

10.) UBIイメージの生成ubinize

ubinize -o final.ubi -p XXXX -m XXXX -s XXXX -v ubinize.cfg

XXXX=使用されているNANDフラッシュチップに固有のパラメータ。

ubinize.cfg次のようになります。

[rootfs]
mode=ubi
image=ubifs.img
vol_name=rootfs
vol_flags=autoresize
vol_type=dynamic
vol_id=0

関連情報