BPI-R1最新版全功能的openwrt系统还没有发布,等得着急啊,还是自己先来制作一个可以运行的系统吧。不过由于这里的配置文件是香蕉派的,所以有些功能路由是运行不了的,就当是热热身吧。
所有的操作都是在香蕉派Lubuntu下完成的,不需要交叉编译的环境,省了不少事。
1.下载必须的文件:
这个网站是openwrt最新的文件,已经编译好的,直接用吧。下载的时候把和香蕉派有关的东西都下载来,其他的就不用了。当然这个方法也适用于其他的板子,有兴趣可以自己做。
http://downloads.openwrt.org/snapshots/trunk/sunxi...
openwrt-sunxi-root.ext4
openwrt-sunxi-uImage
sun7i-a20-bananapi.dtb
http://downloads.openwrt.org/snapshots/trunk/sunxi...
openwrt-sunxi-Bananapi-u-boot-with-spl.bin
openwrt-sunxi-Bananapi-uEnv.txt
2.安装制作启动脚本的工具:
apt-get install u-boot-tools
这个工具后面会用到,提前把它安装好。安装过程就不说了,很简单。
3.开始向卡里写文件。在插入TF卡之前先ls /dev/sd*,
然后插入卡后再看已下,多出的那个就是新插入的卡,这样容易区分,省得弄错了:
sda就是要操作的卡。
4.清空卡最前面1M的空间:
dd if=/dev/zero of=/dev/sda bs=1M count=1
没什么可说的,就是用0来填充最前面1M的空间。
5.将openwrt-sunxi-Bananapi-u-boot-with-spl.bin写入:
清空之后就要往里面写文件了,这个文件是openwrt-sunxi-Bananapi-u-boot-with-spl.bin,其实就是uboot文件
dd if=openwrt-sunxi-Bananapi-u-boot-with-spl.bin of=/dev/sda bs=1024 seek=8
到这一步后就可以插入路由中启动了 ,不过仅仅是能启动而已,没有系统,还得进行下面的操作。
6.重新分区:
fdisk /dev/sda
这就是分区操作中所有的命令,先熟悉一下。
开始操作:
1)p查看分区,显示当前存在的分区。如果已经有分区,则把它删除;
2)d删除分区,指定分区号,有多个分区则重复执行,没有分区就跳过;
3)n建立分区,指定分区号,指定起始扇区和结束扇区,共三个参数
openwrt需要两个分区,所以要执行两遍:
a)n->默认p->默认1->默认2048->34815
b)n->默认p->默认2->默认34816->默认剩余全部
4)再次p查看分区,但第一分区要改为fat格式;
5)t更改分区类型,指定分区号,指定类型
6)L查看所有分区类型,fat的类型编号为c;
7)再次p查看分区,确认分区正确;
8)w保存所有操作。
7.分别格式化两个分区
第一个格式为fat32,第二个为ext4:
ls /dev/sda*
1)mkfs.vfat /dev/sda1
2)mkfs.ext4
/dev/sda2
8.挂载分区:
先建立两个空文件夹,名字为1和2。
1)mount /dev/sda1 /media/1
2)mount /dev/sda2 /media/2
9.创建启动脚本:
在1中新建一个文件,打开后添加:
setenv bootargs console=ttys0,115200 root=/dev/mmcblk0p2 rootwait panic=10 ${extra}
fatload mmc 0 0x46000000 uImage
fatload mmc 0 0x49000000 sun7i-a20-bananapi.dtb
fdt_high ffffffff
bootm 0x46000000 - 0x49000000
保存为boot.cmd,然后
mkimage -C none -A arm -T script -d boot.cmd boot.scr
注意大小写和空格
10.拷贝文件:
1中直接拷贝sun7i-a20-bananapi.dtb和openwrt-sunxi-uImage文件,并将文件改名为uImage,两个文件的文件名要和刚才boot.cmd中的相同;
2中的文件不能直接拷贝,应该这样:
dd if=/xxx/openwrt-sunxi-root.ext4 of=/dev/sda2 bs=1M
xxx替换为自己的路径
11.将卡插入到路由中,上电启动:
需要连接调试串口,所有的显示无输出。如果不能启动,重复以上操作
12.制作img文件:
将卡重新用读卡器插回香蕉派上,开始生成img文件,方便以后使用
dd if=/dev/sda of=/xxx/openwrt.img bs=4M
xxx替换为自己的路径。
这个步骤比较费时,大概一分钟左右。
大功告成,在官方镜像发布前自己玩玩吧。
原文地址:http://blog.csdn.net/tjcfeng/article/details/41113373