Chinaunix首页 | 论坛 | 博客
  • 博客访问: 353396
  • 博文数量: 49
  • 博客积分: 3229
  • 博客等级: 中校
  • 技术积分: 616
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-26 21:46
文章分类

全部博文(49)

文章存档

2011年(8)

2010年(2)

2009年(3)

2008年(36)

我的朋友

分类:

2008-08-26 22:24:22

   移植了2.6.20的内核,打上yaffs2的补丁,配置好。用vivi下载制作好的yaffs文件系统映像,发现不能启动,听网友说这是mkyaffsimage这个制作工具有问题,怎奈何没有vivi的yaffs补丁,也就不能修改其与内核相符合。但yaffs文件系统还是要用的,根据各位网友提供的资料,用另一个方法用上了yaffs文件系统。
   1.移植内核的时候,不要选上Let Yaffs do its own ECC。在在nand driver的里用的NAND_ECC_SOFT
   2.通过nfs启动系统后,mount -t yaffs /dev/mtdblock2 /mnt。 /dev/mtdblock2当然是我将要使用yaffs的root分区了。这时会在/mnt下看到lost+fount目录
   3.cp文件系统到/mnt目录中。注意了,不要cp那些busybox的链接文件。否则文件太大会超过nand的容量(我的nand 64m)
   4.上一步没有cp哪些链接文件,但这样是不能启动系统的,现在我们来建立这些命令的链接:

cd /mnt/bin

ln /mnt/bin/busybox ed
ln /mnt/bin/busybox length
ln /mnt/bin/busybox ps
ln /mnt/bin/busybox tar
ln /mnt/bin/busybox egrep
ln /mnt/bin/busybox less
ln /mnt/bin/busybox pscan
ln /mnt/bin/busybox pcpsvd
ln /mnt/bin/busybox addgroup
ln /mnt/bin/busybox env
ln /mnt/bin/busybox linux32
ln /mnt/bin/busybox pwd
ln /mnt/bin/busybox tee
ln /mnt/bin/busybox adduser
ln /mnt/bin/busybox envdir
ln /mnt/bin/busybox linux64
ln /mnt/bin/busybox readlink
ln /mnt/bin/busybox test
ln /mnt/bin/busybox realpath
ln /mnt/bin/busybox expand
ln /mnt/bin/busybox login
ln /mnt/bin/busybox basename
ln /mnt/bin/busybox resize
ln /mnt/bin/busybox ls
ln /mnt/bin/busybox rmdir
ln /mnt/bin/busybox touch
ln /mnt/bin/busybox bzip2
ln /mnt/bin/busybox find
ln /mnt/bin/busybox mesg
ln /mnt/bin/busybox true
ln /mnt/bin/busybox cat
ln /mnt/bin/busybox chmod
ln /mnt/bin/busybox chown
ln /mnt/bin/busybox mknod
ln /mnt/bin/busybox more
ln /mnt/bin/busybox mountpoint
ln /mnt/bin/busybox tty
ln /mnt/bin/busybox umount
ln /mnt/bin/busybox uname
ln /mnt/bin/busybox grep
ln /mnt/bin/busybox cp
ln /mnt/bin/busybox dd
ln /mnt/bin/busybox date
ln /mnt/bin/busybox id
ln /mnt/bin/busybox nice
ln /mnt/bin/busybox sleep
ln /mnt/bin/busybox setuidgid
ln /mnt/bin/busybox setsid
ln /mnt/bin/busybox sort
ln /mnt/bin/busybox vi
ln /mnt/bin/busybox unzip
ln /mnt/bin/busybox usleep
ln /mnt/bin/busybox last
ln /mnt/bin/busybox sync
ln /mnt/bin/busybox kill
ln /mnt/bin/busybox wget
ln /mnt/bin/busybox which
ln /mnt/bin/busybox who
ln /mnt/bin/busybox xargs

ln /mnt/bin/busybox ash

ln /mnt/bin/busybox sh

ln /mnt/bin/busybox hostname

ln /mnt/bin/busybox id

cd ../sbin

ln /mnt/bin/busybox  ifconfig
ln /mnt/bin/busybox modprobe
ln /mnt/bin/busybox chroot
ln /mnt/bin/busybox sulogin
ln /mnt/bin/busybox poweroff
ln /mnt/bin/busybox insmod
ln /mnt/bin/busybox halt
ln /mnt/bin/busybox reboot
ln /mnt/bin/busybox rmmod
ln /mnt/bin/busybox route
ln /mnt/bin/busybox swapon
ln /mnt/bin/busybox swapoff
ln /mnt/bin/busybox mdev

ln /mnt/bin/busybox getty

ln /mnt/bin/busybox init

注意了,这里建立的硬链接,开始我用ln -s建立软链接,启动系统的时候提示could not run '/etc/init.d/rcS': No such file or directory。后来改为硬链接就好了。不知这时为何。。。
   5.vivi中输入param set linux_cmd_line "noinitrd console=ttySAC0,115200 init=/linuxrc root=/dev/mtdblock2 rootfstype=yaffs mem=64M"启动系统,OK。
阅读(1921) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~