心想事成 发表于 2006-12-22 16:31:13

自己解压修改dd-wrt的固件

先下载解压和压缩工具的源代码,地址是:
http://www.bitsum.com/files/firmware_mod_tools.tar.gz
在linux下解开后,进入它的src目录,然后make,会自动编译这个工具,编译好以后,可以执行以下的步骤。

解压 firmware (extract_firmware.sh)

只需要简单的运行extract_firmware.sh和两个参数。

$ ./extract_firmware.sh firmware.bin working_directory/

firmware.bin
               需要解开的固件文件名

working_directory
               文件解开后保存的目录
It doesn't matter which firmware image you supply, i.e. for a WRT54G or an ASUS WL-500G. These images are usually all the same and differ only in the header format. The rebuilding process will create images for the various models.
An extraction log is created as extract.log.


修改firmware (手动或者用 ipkg_install.sh脚本)

解开后的全部文件保存在先前指定的目录中,进入目录,可以看到两个目录,一个是rootfs,一个是image_parts。




[*]rootfs/[*][*]这个目录中保存的是固件中的文件,可以修改这里[*]image_parts/[*][*]其中保存的是固件的引导内核你可以直接在rootfs目录中添加和删除文件。

也可以使用ipkg_install.sh脚本来安装一个你所需要的软件包到rootfs中。
更多的软件包可以看后面的网址 (不一定会全部工作), http://ftp.selfnet.de/pub/openwrt/backports/rc5/ . 命令如下e:
$ ./ipkg_install.sh some_package-1.2.5.ipk working_directory/

some_package-1.2.5.ipkg
                你所要安装的软件包名
working_directory
                执行extract_firmware.sh 时指定的目录


重新打包 firmware (使用build_firmware.sh)

重新打包仍然简单,直接运行build_firmware.sh 和参数就行了。

$ ./build_firmware.sh output_directory/ working_directory/

output_directory
                     修改后的固件文件保存目录。
working_directory
                     是执行extract_firmware.sh时指定的目录

打包会建立一个叫 build.log的文件,你可以看一下打包是否成功。


通过此功能,可以在现有的固件中加入自己喜欢的功能,或者修改程序的界面、文字等,达到定制的作用。

ee007 发表于 2006-12-25 12:10:51

需然我不懂...但是还要顶!!!!!!!!!!!!!!

Hansxia 发表于 2007-1-12 17:54:47

哈哈,太美厉害,这个要看看了,最近路由器就是刷了V24,感觉还不错,界面做的比较好

Hansxia 发表于 2007-1-24 22:46:22

嗯,用你的工具试了试解压西红柿的Firmware, 没成功,和dd-wrt一样的硬件支持,居然不是统一的文件结构?

jiabin22 发表于 2007-3-8 13:01:46

iabin@jiabin-desktop:~/Desktop/firmware/src$ make
gcc -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -O2   -c -o asustrx.o asustrx .c
gcc asustrx.o -lz -o asustrx
/usr/bin/ld:找不到 -lz
collect2: ld 返回 1
make: *** 错误 1

编译不成功?????

jiabin22 发表于 2007-3-9 20:14:08

少了一个库晕!加了就好了!

hotwjp 发表于 2007-3-20 16:09:52

我也遇到你的问题。少了那个库呀!能告诉我吗?

=AMD= 发表于 2007-4-24 06:22:09

:)

xiapp 发表于 2007-7-18 21:44:37

原帖由 jiabin22 于 2007-3-9 20:14 发表 http://bbs.routerclub.com/images/common/back.gif
少了一个库晕!加了就好了!
老大!少那个库?如何加载?

boyhill 发表于 2007-9-23 23:02:56

zlib

zlib,zlib

hitro 发表于 2008-4-28 11:06:08

dd-wrt固件修改问题

版主您好:
    我是一个无线发烧友,对使用方面没有问题,但是想要研究研究内部结构以及自己想在自己家里的router上修改成自己做的页面,不知道
怎么样才能实现呢?
    我看了您的文章,非常好,但是不知道   
* rootfs/
          o
                + 这个目录中保存的是固件中的文件,可以修改这里
    * image_parts/
          o
                + 其中保存的是固件的引导内核
rootfs/image_parts里写什么内容,我用asp写的小程序怎么样才能被调用呢?
我看dd-wrt源码有很多都是用asp写的,所以我就修改了几个文件,但是就是找不到存放的位置
也不知道怎么样才能把我修改的asp文件加载到设备里面呢?
我用的是netcore nw618设备
请高手们多多指点

herowav 发表于 2008-5-5 09:32:02

先支持下
在慢慢看
不晓得看不看的懂

MAX110 发表于 2008-6-2 15:08:01

牛B

nivada 发表于 2008-7-18 18:03:31

慢慢学习,还不敢自己修改。。。。。。。。

8827143 发表于 2008-7-27 07:10:38

不是很懂,太复杂了,简单点好,最好有做好的,发来共享
页: [1] 2
查看完整版本: 自己解压修改dd-wrt的固件