• 已有 UBI文件的修改


    1. UBI/UBIFS不是一个东西。。。

    ubifs使用mkfs.ubifs工具直接生成的image(文件系统镜像),可以使用uboot来升级系统。

    ubi是直接可以烧写再flash的文件(带有UBI文件系统镜像卷标),二者需要转化!

    2. 这里修改的是已有的ubi的文件!

    3. Mount过程

    3.1 首先,虚拟一个nandflash

    modprobe nandsim first_id_byte=0x2c second_id_byte=0xda third_id_byte=0x00 fourth_id_byte=0x15

    可以使用下面命令查看:cat /proc/mtd,mtdinfo /dev/mtd0

     

    3.2 将 ubi 与 /dev/mtd0 关联

    modprobe ubi mtd=0

    3.3 格式化前先解绑定

    ubidetach /dev/ubi_ctrl -m 0

    3.4 把rootfs.ubi格式化到mtd0

    ubiformat /dev/mtd0 -s 2048 -f rootfs.ubi

    3.5 绑定

    ubiattach /dev/ubi_ctrl -m 0 -O 2048

     这样设备为ubi0

    3.6 挂载设备到本地目录(已经存在的目录)

    mount -t ubifs ubi0 ./targer_dir

     至此,完成了ubi文件的mount。

    也可以使用umount ubifs卸载。

    3.7 可以复制文件再新的目录,修改之!

    cp -r ./target/* /new/directory

    4. 重新生成ubi文件

    4.1 生成ubifs(rootfs.ubifs

    mkfs.ubifs -r ./target -m 0x800 -e 0x1F000 -c 2024 -o ./rootfs.ubifs

    4.2 转换为ubi文件

    ubinize -o rootfs.ubi -m 2048 -p 128KiB -s 512 -O 2048 ubinize.cfg

    其中ubinize.cfg文件,是ubinize工具的配置文件,直接编辑一个即可(image=rootfs.ubifs指的是要转换的文件,命令行中是输出文件)

    [ubifs]  
    mode=ubi  
    image=rootfs.ubifs          #这里指的是需要输入的ubifs文件
    vol_id=0  
    vol_size=100MiB  
    vol_type=dynamic 
    vol_name=rootfs
    vol_flags=autoresize
    博客园:http://www.cnblogs.com/linux-farmer/
  • 相关阅读:
    修改windows系统cookie、favorites、desktop等的位置到非系统盘
    第三章 多维随机变量及其分布4
    谈谈Ironpython的应用
    提问的智慧
    第三章 多维随机变量及其分布2
    用C#做 UG NX 二次开发 / NX Secondary Dev. with C#
    第六章 样本与抽样分布
    ufun视频教程(合) / Movie of UFUN
    第四章 随机变量的数字特征2
    第一章 概率论的基本概论
  • 原文地址:https://www.cnblogs.com/linux-farmer/p/14831677.html
Copyright © 2020-2023  润新知