u-boot中nand相关命令使用---- ubi, ubifsls, ubifsmount, ubifsumount
[Version: 2013-01-rc2]
[Author: Bo Shen <voice.shen@gmail.com>]
1. 帮助信息
1.1 ubi
-------------------------------------
U-Boot> ubi
ubi - ubi commands
Usage:
ubi part [part] [offset]
- Show or set current partition (with optional VID header offset)
ubi info [l[ayout]] - Display volume and ubi layout information
ubi create[vol] volume [size] [type] - create volume name with size
ubi write[vol] address volume size - Write volume from address with size
ubi read[vol] address volume [size] - Read volume to address with size
ubi remove[vol] volume - Remove volume
[Legends]
volume: character name
size: specified in bytes
type: s[tatic] or d[ynamic] (default=dynamic)
-------------------------------------
1.2 ubifsls
------------------------------------
U-Boot> ubifsls
UBIFS not mounted, use ubifsmount to mount volume first!
ubifsls - list files in a directory
Usage:
ubifsls [directory]
- list files in a 'directory' (default '/')
------------------------------------
1.3 ubifsmout
------------------------------------
U-Boot> ubifsmount
ubifsmount - mount UBIFS volume
Usage:
ubifsmount <volume-name>
- mount 'volume-name' volume
------------------------------------
1.4 ubifsumount
------------------------------------
U-Boot> ubifsumount
No UBIFS volume mounted!
ubifsumount - unmount UBIFS volume
Usage:
ubifsumount - unmount current volume
------------------------------------
2. 具体使用方法
如果board配置文件中有设置mtdids和mtdparts,则可以直接用mtdparts查看,如果没有,可以通过设置环境变量来使能。
U-Boot> setenv mtdids 'nand0=atmel_nand'
U-Boot> setenv mtdparts 'mtdparts=atmel_nand:8M(bootstrap)ro,-(rootfs)'
U-Boot> mtdparts
---------------------------------------------------------------
device nand0 <atmel_nand>, # parts = 2
#: name size offset mask_flags
0: bootstrap/uboot/kernel0x00800000 0x00000000 1
1: rootfs 0x0f800000 0x00800000 0
active partition: nand0,0 - (bootstrap/uboot/kernel) 0x00800000 @ 0x00000000
defaults:
mtdids : nand0=atmel_nand
mtdparts: mtdparts=atmel_nand:8M(bootstrap/uboot/kernel)ro,-(rootfs)
---------------------------------------------------------------
U-Boot> ubi part rootfs
---------------------------------------------------------------
U-Boot> ubi part rootfs
Creating 1 MTD partitions on "nand0":
0x000000800000-0x000010000000 : "mtd=1"
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size: 131072 bytes (128 KiB)
UBI: logical eraseblock size: 126976 bytes
UBI: smallest flash I/O unit: 2048
UBI: VID header offset: 2048 (aligned 2048)
UBI: data offset: 4096
UBI: empty MTD device detected
UBI: create volume table (copy #1)
UBI: create volume table (copy #2)
UBI: attached mtd1 to ubi0
UBI: MTD device name: "mtd=1"
UBI: MTD device size: 248 MiB
UBI: number of good PEBs: 1984
UBI: number of bad PEBs: 0
UBI: max. allowed volumes: 128
UBI: wear-leveling threshold: 4096
UBI: number of internal volumes: 1
UBI: number of user volumes: 0
UBI: available PEBs: 1961
UBI: total number of reserved PEBs: 23
UBI: number of PEBs reserved for bad PEB handling: 19
UBI: max/mean erase counter: 1/0
---------------------------------------------------------------
U-Boot> ubi create rootfs
---------------------------------------------------------------
U-Boot> ubi create rootfs
No size specified -> Using max size (248999936)
Creating dynamic volume rootfs of size 248999936
---------------------------------------------------------------
U-Boot> tftpboot 0x20000000 rootfs.ubi
U-Boot> ubi write 0x20000000 rootfs 0x1911000
---------------------------------------------------------------
U-Boot> ubi write 0x20000000 rootfs 0x1911000
26284032 bytes written to volume rootfs
---------------------------------------------------------------
U-Boot> ubifsmount rootfs
---------------------------------------------------------------
U-Boot> ubifsmount rootfs
UBIFS: mounted UBI device 0, volume 0, name "rootfs"
UBIFS: mounted read-only
UBIFS: file system size: 247603200 bytes (241800 KiB, 236 MiB, 1950 LEBs)
UBIFS: journal size: 9023488 bytes (8812 KiB, 8 MiB, 72 LEBs)
UBIFS: media format: w4/r0 (latest is w4/r0)
UBIFS: default compressor: LZO
UBIFS: reserved for root: 0 bytes (0 KiB)
---------------------------------------------------------------
U-Boot> ubifsls
---------------------------------------------------------------
U-Boot> ubifsls
<DIR> 5368 Mon Dec 24 08:18:48 2012 bin
<DIR> 288 Mon Oct 29 07:56:14 2012 dev
<DIR> 2128 Mon Dec 24 08:18:47 2012 etc
<DIR> 2408 Mon Dec 24 08:18:47 2012 lib
<DIR> 160 Tue Dec 18 03:07:01 2012 mnt
<DIR> 160 Tue Dec 18 03:07:01 2012 opt
<LNK> 3 Tue Nov 27 02:10:35 2012 run
<DIR> 304 Tue Dec 18 03:30:12 2012 tmp
<DIR> 160 Tue Dec 18 03:07:01 2012 sys
<DIR> 672 Mon Oct 29 07:56:14 2012 var
<DIR> 480 Wed Dec 19 01:41:33 2012 usr
<DIR> 288 Tue Dec 18 03:30:26 2012 home
<DIR> 160 Tue Dec 18 03:07:01 2012 proc
<DIR> 3720 Mon Dec 24 08:18:48 2012 sbin
<DIR> 376 Tue Dec 18 03:07:01 2012 root
<LNK> 11 Tue Dec 18 03:15:34 2012 linuxrc
<DIR> 160 Tue Dec 18 03:07:01 2012 media
---------------------------------------------------------------
U-Boot> ubifsumount
---------------------------------------------------------------
U-Boot> ubifsumount
Unmounting UBIFS volume rootfs!
3. FAQ
3.1 如何从ubifs image中读取Linux kernel然后boot呢?
--> ubi part rootfs; ubifsmount rootfs; ubifsload 0x20000000 boot/uImage; bootm 0x20000000;
如何确保每一步都正常执行呢? (将;全部改为&&除最后一个)
--> ubi part rootfs && ubifsmount rootfs && ubifsload 0x20000000 boot/uImage && bootm 0x20000000;
u-boot中nand相关命令使用---- ubi, ubifsls, ubifsmount, ubifsumount相关推荐
- 在Spring Boot中实现相关ID(用于SOA /微服务中的分布式跟踪)
上周参加了在Geecon上Sam Newman的微服务讨论后,我开始思考更多有关用于监视,报告和诊断的面向服务/微服务平台最可能的基本功能:相关ID. 关联ID允许在面向服务的复杂平台中进行分布式跟踪 ...
- php redis命令大全,redis中key相关命令详解
一.概述: 本文将主要讲述与Key相关的Redis命令.学习这些命令对于学习Redis是非常重要的基础,也是能够充分挖掘Redis潜力的利器.(推荐:redis视频教程) 二.相关命令列表: 命令原型 ...
- Linux中磁盘存储相关命令
du 命令 Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的. **1.**命令格式: du [选项][ ...
- linux中文件系统相关命令,linux磁盘、文件系统相关命令介绍
分区管理工具介绍 1. fdisk:列出指定磁盘设备上的分区情况 格式:fdisk -l [-u] [device...] fdisk device 子命令:管理功能 p: print, 显示已有分区 ...
- 【Linux系列】centos7中防火墙相关命令
目录 查看防火墙状态 查看已开放端口 防火墙开放端口 firewalld的基本使用 配置firewalld-cmd CentOS7 端口的开放关闭查看都是用防火墙来控制的,具体命令如下: 查看防火墙状 ...
- 连接状态_TCP 连接状态及相关命令学习
在平时的开发工作中,我们都使用被封装完好的 TCP/HTTP 库去完成需求开发,很少关心底层 TCP 的连接状态,但是一旦遇到较难定位的线上事故,往往都是因为 TCP 连接参数或者使用姿势不对导致的, ...
- Linux中的MAN命令
学习Linux的同学,都会使用man来查阅一些命令的帮助信息,常见的使用方法就是"man 命令名称"这样简单的格式.本文就对man命令简要介绍一下. l man命令的章节 man就 ...
- linux的man命令功能,Linux中的MAN命令
学习Linux的同学,都会使用man来查阅一些命令的帮助信息,常见的使用方法就是"man 命令名称"这样简单的格式.本文就对man命令简要介绍一下. l man命令的章节 man就 ...
- TCP 连接状态及相关命令学习
在平时的开发工作中,我们都使用被封装完好的 TCP/HTTP 库去完成需求开发,很少关心底层 TCP 的连接状态,但是一旦遇到较难定位的线上事故,往往都是因为 TCP 连接参数或者使用姿势不对导致的, ...
最新文章
- 在循环中正确找到对应DOM元素的索引
- RH033 Unit 9 vim: An Advanced Text Editor
- 浅谈线程池(下):相关试验及注意事项
- 再深一点:面试工作两不误,源码级理解Spring事务
- IE8 Beta2 已经放出来了
- 3D模型欣赏:斯巴达女将军 长枪圆盾战士 性感美女
- (WSI分类)WSI分类文献小综述
- ROS单线多拨后负载均衡配置
- rabbit 的使用方法
- 分分钟安装VMware,并安装linux操作系统
- Java. JFrame简单画图
- 结算机网络的tracert和route命令
- 多媒体技术 第一章 多媒体技术概述
- C#连接MySQL数据库详细步骤
- java ext.dirs_关于-Djava.ext.dirs使用问题
- 惯性室内导航入门之PDR (步行者航位推算)
- CS61A Lab 1
- Scrapy 爬取起点中文网存储到 MySQL 数据库(自定义 middleware)
- 【TencentOS tiny学习】源码分析(2)——调度器
- python版本之间的区别_Python各版本之间的区别