Chinaunix首页 | 论坛 | 博客
  • 博客访问: 49891
  • 博文数量: 9
  • 博客积分: 290
  • 博客等级: 二等列兵
  • 技术积分: 108
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-04 18:28
文章分类

全部博文(9)

文章存档

2012年(3)

2011年(6)

我的朋友

分类: LINUX

2011-09-04 19:32:10

制作映像
在pc上制作镜像需要mkfs.ubifs工具。安装如下
在ubuntu下面编译mtd-utils的两种方法(相信也可以用于其它发行版下):
方法一:
  从git repository获取源代码,此编译为最近更新
1. get the source code of mtd-utils
     git clone git://git.infradead.org/mtd-utils.git 
 2. cd mtd-utils
 3. make
 4. sudo make install  (需要root权限来操作)

方法二:

  从ftp网站拿打好的源代码包
1. wget ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-1.4.5.tar.bz2
2. tar -jxvf mtd-utils-1.4.5.tar.bz2
3. cd mtd-utils-1.4.5
4.  make 
5. sudo make install (需要root权限来操作)

注意: 在编译的过程中,你或许会遇到下面的问题:(In compile process, you will meet the following problem.)
 1. sys/acl.h: No such file or directory  --> sudo apt-get install libacl1-dev
 2. compr_lzo.c:29:23: error: lzo/lzo1x.h: No such file or directory  --> sudo apt-get install liblzo2-dev
 3. uuid/uuid.h: No such file or directory --> sudo apt-get install uuid-dev

在PC上运行如下命令得到UBI image

制作ubi烧写映像命令
mkfs.ubifs
ubinize
命令参数
-r:制定文件内容的位置 
-m:页面大小 
-e:逻辑擦除块大小 
-p:物理擦除块大小 
-c:最大的逻辑擦除块数量
-s:最小的硬件输入输出页面大小,如:k9f1208为256(上下半页访问)
重要提示,要根据flash加载ubifs输出的信息来用下面的命令制作镜像,否则不能启动系统

sudo mkfs.ubifs -r rootfs -m 2048 -e 129024 -c 1948 -o ubifs.img
sudo ubinize -o ubi.img -m 2048 -s 512 -p 131072 ubifs.conf

[ubifs]
mode=ubi
image=ubifs.img
vol_id=0
vol_size=200MiB
vol_type=dynamic
vol_name=ubifs(最好和uboot创建的卷标一致)
vol_alignment=1
vol_flags=autoresize 

制作出ubi.img,用于uboot烧写!
(错误,其中制作出的ubifs.img才是用于uboot烧写的,而ubi.img是用于内核烧写的ubiformat /dev/mtd4 -s 512 -f ubi.img
阅读(5984) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~