Ok, depois de muita leitura, finalmente descobri como fazer isso no Ubuntu:
1.) Simule um dispositivo NAND MT com nandsim
modprobe nandsim first_id_byte=... second_id_byte=.. third_id_byte=.. fourth_id_byte=...
2.) Descubra o id do dispositivo MT
cat /proc/mtd | grep -i "NAND Simulator"
3.) Carregar módulo do kernel do UBI
modprobe ubi
4.) Apagar dispositivo MT (você pode pular este passo)
flash_erase /dev/mtdX 0 0
5.) Flash a imagem UBI com ubiformat
ubiformat /dev/mtdX -y -f /path/to/ubi -O XXXX -s XXXX
6.) Anexe o dispositivo MT ao UBI com ubiattach
e anote o número do dispositivo UBI
ubiattach -p /dev/mtdX
7.) Monte com mount
mount -t ubifs ubiX /path/to/mount-point/
8.) Faça as alterações.
9.) Crie UBIFS com mkfs.ubifs
mkfs.ubifs -o ubifs.img -m XXXX -e XXXX -c XXXX -v -r /path/to/mount-point/
10.) Crie uma imagem UBI com ubinize
ubinize -o final.ubi -p XXXX -m XXXX -s XXXX -v ubinize.cfg
XXXX
= Parâmetro específico do chip flash NAND usado.
ubinize.cfg
é algo como isto:
[rootfs]
mode=ubi
image=ubifs.img
vol_name=rootfs
vol_flags=autoresize
vol_type=dynamic
vol_id=0