Other Linux 2.6.x kernel.vmdk
Other Linux 2.6.x kernel-0.vmdk(2gb splitted)
initramfs可以写成img.cpio文件,也可以写成一个文件夹。
其实昨天最正确的方式是设置新的PATH.
http://www.ibm.com/developerworks/cn/linux/l-k26initrd/
突然想起来不通的kernel编译器不一样
把initrd.img.cpio添加到kernel外层,编译,挂在nfs 2.0文件系统,可以提取里面文件。
ping不通的时候service network restart一下就可以了
交叉编译要加--host arm-linux
recv_image.c:129: error: storage size of 'rq' isn't known
recv_image.c:129: warning: unused variable 'rq'
停住先不编这个
ubifs -r
-r, -d, --root=DIR build file system from directory DIR
-m, --min-io-size=SIZE minimum I/O unit size
-e, --leb-size=SIZE logical erase block size
通常是physical erased block size - 一个page(对于slc成立,对于mlc不成立)
subpage必须比mini io小,必须是2的n次方。
-c, --max-leb-cnt=COUNT maximum logical erase block count
-c 是总空间比如50M除以-e得到的结果
200 * 1024 * 1024 / 258048 = 812
256 NO
512 NO
2048 NO
mkfs.ubifs -r root -m 2048 -e 258048 -c 812 -o ubifs.img
ubinize -o ubi.img -m 2048 -p 256KiB -s 2048 /etc/ubinize.cfg
现在mtd-utils目录下面都是在pc使用的库
但是2005那个下面还是在arm上使用的。
lzo文件install的在lzo-pc外层。
开始不知道install的时候还会把头文件install出来,后来知道了,把其拷贝出来了。
可能还是不行,看到网上别人说直接烧录是用问题的
先看下nand的参数
这里可以看到physical erased size
dev: size erasesize name
mtd0: 00040000 00040000 "misc"
mtd1: 00500000 00040000 "recovery"
mtd2: 00300000 00040000 "kernel"
mtd3: 00100000 00040000 "ramdisk"
mtd4: 04300000 00040000 "system"
mtd5: 04300000 00040000 "cache"
mtd6: 37000000 00040000 "userdata"
EC: erased count
VID header:volume identifier header
LEB:logical erased block
PEB:physical erased block
非常重要的一组数据:
(initramfs):/# ubiattach /dev/ubi_ctrl -m 4
UBI: attaching mtd4 to ubi0
UBI: physical eraseblock size: 262144 bytes (256 KiB)
UBI: logical eraseblock size: 258048 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 mtd4 to ubi0
UBI: MTD device name: "system"
UBI: MTD device size: 67 MiB
UBI: number of good PEBs: 268
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: 262
UBI: total number of reserved PEBs: 6
UBI: number of PEBs reserved for bad PEB handling: 2
UBI: max/mean erase counter: 0/0
UBI: background thread "ubi_bgt0d" started, PID 2270
UBI device number 0, total 268 LEBs (69156864 bytes, 66.0 MiB), available 262 LEBs (67608576 bytes, 64.5 MiB), LEB size 258048 bytes (252.0 KiB)
yaffs用专门的工具来擦写?···在邮件中看到的
/etc/ubinize.cfg
[ubifs]
mode=ubi
image=ubifs.img
vol_id=0
vol_size=200MiB
vol_type=dynamic
vol_name=rootfs
vol_flags=autoresize
这里面指定了volume size
K9G8G08U0A
Other Linux 2.6.x kernel-0.vmdk(2gb splitted)
initramfs可以写成img.cpio文件,也可以写成一个文件夹。
其实昨天最正确的方式是设置新的PATH.
http://www.ibm.com/developerworks/cn/linux/l-k26initrd/
突然想起来不通的kernel编译器不一样
把initrd.img.cpio添加到kernel外层,编译,挂在nfs 2.0文件系统,可以提取里面文件。
ping不通的时候service network restart一下就可以了
交叉编译要加--host arm-linux
recv_image.c:129: error: storage size of 'rq' isn't known
recv_image.c:129: warning: unused variable 'rq'
停住先不编这个
ubifs -r
-r, -d, --root=DIR build file system from directory DIR
-m, --min-io-size=SIZE minimum I/O unit size
-e, --leb-size=SIZE logical erase block size
通常是physical erased block size - 一个page(对于slc成立,对于mlc不成立)
subpage必须比mini io小,必须是2的n次方。
-c, --max-leb-cnt=COUNT maximum logical erase block count
-c 是总空间比如50M除以-e得到的结果
200 * 1024 * 1024 / 258048 = 812
256 NO
512 NO
2048 NO
mkfs.ubifs -r root -m 2048 -e 258048 -c 812 -o ubifs.img
ubinize -o ubi.img -m 2048 -p 256KiB -s 2048 /etc/ubinize.cfg
现在mtd-utils目录下面都是在pc使用的库
但是2005那个下面还是在arm上使用的。
lzo文件install的在lzo-pc外层。
开始不知道install的时候还会把头文件install出来,后来知道了,把其拷贝出来了。
可能还是不行,看到网上别人说直接烧录是用问题的
先看下nand的参数
这里可以看到physical erased size
dev: size erasesize name
mtd0: 00040000 00040000 "misc"
mtd1: 00500000 00040000 "recovery"
mtd2: 00300000 00040000 "kernel"
mtd3: 00100000 00040000 "ramdisk"
mtd4: 04300000 00040000 "system"
mtd5: 04300000 00040000 "cache"
mtd6: 37000000 00040000 "userdata"
EC: erased count
VID header:volume identifier header
LEB:logical erased block
PEB:physical erased block
非常重要的一组数据:
(initramfs):/# ubiattach /dev/ubi_ctrl -m 4
UBI: attaching mtd4 to ubi0
UBI: physical eraseblock size: 262144 bytes (256 KiB)
UBI: logical eraseblock size: 258048 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 mtd4 to ubi0
UBI: MTD device name: "system"
UBI: MTD device size: 67 MiB
UBI: number of good PEBs: 268
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: 262
UBI: total number of reserved PEBs: 6
UBI: number of PEBs reserved for bad PEB handling: 2
UBI: max/mean erase counter: 0/0
UBI: background thread "ubi_bgt0d" started, PID 2270
UBI device number 0, total 268 LEBs (69156864 bytes, 66.0 MiB), available 262 LEBs (67608576 bytes, 64.5 MiB), LEB size 258048 bytes (252.0 KiB)
yaffs用专门的工具来擦写?···在邮件中看到的
/etc/ubinize.cfg
[ubifs]
mode=ubi
image=ubifs.img
vol_id=0
vol_size=200MiB
vol_type=dynamic
vol_name=rootfs
vol_flags=autoresize
这里面指定了volume size
K9G8G08U0A
