1.详细错误报告如下:

ubi0 error: validate_ec_hdr: bad VID header offset 256, expected 64

ubi0 error: validate_ec_hdr: bad EC header

ubi0 error: ubi_io_read_ec_hdr: validation failed for PEB 0

2. 为什么会出现这种情况?

由于给ubinize传递的参数有误

3.解决方法

给ubinize传递正确的参数,需要指定的参数有逻辑擦除块大小,最大物理擦除块数目,最小输入输出单元的大小(有可能需要指定subpage大小,这与使用的flash有关,只有支持subpage的nand flash才需要指定这一参数)

举例:

指定使用的根文件系统大小为32MiB (这个根文件系统是使用的ubifs),当前使用的flash为nor flash,从该flash的手册中获知:物理擦除块大小为128KiB,页面大小为256字节.

3.1 最小输入输出单元的大小是多少?

由于当前使用的是nor flash,那么最小输入输出单元的大小为1 (如果使用的是nand flash,那么这个大小就是页面大小)

3.2 最大物理擦除块数目如何计算?

最大物理擦除块数目=根文件系统大小/物理擦除块大小

由于当前指定ubi文件系统大小为32MiB,那么32MiB/128KiB=256

3.3 逻辑擦除块大小如何计算?

逻辑擦除块大小=物理擦除块大小-EC头结构体大小-VID头结构体大小 (EC头和VID头是ubi中的概念,这两个结构体描述逻辑擦除块的相关信息;这是nor flash中的逻辑擦除块的计算方法,那么nand flash的逻辑擦除块大小如何计算呢?请看拓展)

那么128KiB-64B-64B=130944

4.拓展

4.1 nand flash的逻辑擦除块大小如何计算呢?

一个物理擦除块包含的页面数=物理擦除块大小/页面大小

逻辑擦除块大小=(一个物理擦除块包含的页面数-2)* 页面大小=物理擦除块大小-(2*页面大小)

5.参考资料

ubi相关问题

linux内核启动时报错ubi0 error: validate_ec_hdr: bad VID header offset 256, expected 64的更多相关文章

  1. linux内核启动时报错ubi0 error: validate_ec_hdr: bad data offset 256, expected 128

    1.错误解析 ubi的EC header中有一个字段data_offset来记录数据偏移,数据偏移必须正确才能正确读取每一个物理擦除块中的数据 2.解决方法 擦除整块flash,然后再重新烧写包含ub ...

  2. Android 开发环境 —— Eclipse 启动时报错:Error when loading the SDK

    简述: Eclipse 启动时报错:Error when loading the SDK 错误信息: Error when loading the SDK: Error: Error parsing  ...

  3. tomcat在linux服务器启动时报错Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000794500000, 576716800, 0) failed; error='Cannot allocate memory' (errno=12)

    原因是内存不足了 解决办法:1.top命令查看后台进程,看哪些可以关闭 2.ps -ef |grep tomcat看哪些不用的tomcat起着,也可以从这里关 3.加大这个tomcat的内存, 在ca ...

  4. Tomcat启动时报错:“ Error starting static Resources”问题解决

    部署测试环境的时候,需要用到Tomcat.故在Linux上部署了Tomcat,并将开发提供的工程包部署到Tomcat的webapps目录下,启动Tomcat,部署成功.第二天修改工程配置文件时,发现w ...

  5. zookeeper启动时报错:Error contacting service. It is probably not running问题

    查看zookeeper.out发现启动日志报错未找到java路径. 启动日志位于zookeeper-4.0.10/bin目录下 修改/etc/profile中环境变量得以解决.

  6. MySQL 从 5.5 升级到 5.6,启动时报错 [ERROR] Plugin 'InnoDB' init function returned error

    MySQL 从 5.5 升级到 5.6,启动时报错: [ERROR] Plugin 'InnoDB' init function returned error. [ERROR] Plugin 'Inn ...

  7. SpringBoot发布WAR启动报错:Error assembling WAR: webxml attribute is required

    Spring Boot发布war包流程: 1.修改web model的pom.xml <packaging>war</packaging> SpringBoot默认发布的都是j ...

  8. 008-SpringBoot发布WAR启动报错:Error assembling WAR: webxml attribute is required

    一.Spring Boot发布war包流程: 1.修改web model的pom.xml <packaging>war</packaging> SpringBoot默认发布的都 ...

  9. mysql启动时报错:Starting MySQL... ERROR! The server quit without updating PID file (/opt/mysql/data/mysql.pid)

    mysql启动报错Starting MySQL... ERROR! The server quit without updating PID file (/opt/mysql/data/mysql.p ...

随机推荐

  1. android基础---->NDK的使用

    NDK的发布,使“Java+C”的开发方式终于转正,成为官方支持的开发方式.NDK将是Android平台支持C开发的开端,今天我们开始ndk的学习. NDK的简要说明 ndk是什么: The Nati ...

  2. Linux下TCP延迟确认(Delayed Ack)机制导致的时延问题分析

    版权声明:本文由潘安群原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/105 来源:腾云阁 https://www.qclo ...

  3. Cordova 3.0 初步使用

    主要参考 http://docs.phonegap.com/en/3.0.0/guide_cli_index.md.html#The%20Command-line%20Interface Cordov ...

  4. java - OutOfMemoryError: Java heap space 堆空间不足

    Error occurred during initialization of VM Could not reserve enough space for object heap Error: Cou ...

  5. Thrift入门之mac下的安装流程

    新建一个maven项目,先下载maven依赖  http://thrift.apache.org/download <dependency> <groupId>org.apac ...

  6. 二维坐标系极角排序的应用(POJ1696)

    Space Ant Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3170   Accepted: 2029 Descrip ...

  7. 03Del.ashx(删除班级)

    03Del.ashx 数据库里定义个BOOL型,TRUE表示正常FALSE表示删除 using System; using System.Collections.Generic; using Syst ...

  8. Oracle数据库类型date

    date日期类型 说明 oracle dd-mm-yyyy create table test1(birthday date); timestamp(n) 说明:邮戳的时间类型 于date的区别,邮戳 ...

  9. VirtualBox vbox not found

    VirtualBox vbox file not found Problem When I opened virtualbox, Today, it showed "inaccessible ...

  10. stark - 数据列表

    一.效果图 二.数据列表 知识点: 完成(list_display)(list_display_links) 1.根据str,拿字段对象,取中文 val = self.model._meta.get_ ...