基于网上帖子修改(原贴http://www.openwrt.org.cn/bbs/thread-14787-1-1.html)
现在能刷固件的路由器太多了,买来路由器,网上找一下教程,分分钟搞定。如果固件不合适,有人还会自己下载代码,编译固件,真是折腾无止境。可编译固件可不是闹着玩的,需要很长时间编译不说,里面好多配置,也不是那么容易搞清楚的,那么,怎样在不重新编译固件的前提下对固件进行修改呢?这就是本文要介绍的,在不重新编译固件的前提下,对已有的固件进行修改。这样做一可以省去繁琐的编译工作,二可以精简不需要的功能,减小固件体积,节省路由器空间,也可以增加软件,放进固件里(固件压缩后,也会节省不少空间),减少刷固件后安装软件的麻烦。
言归正传,下面开始。开始之前,简单介绍一下本文以MT7620为例,使用Ubuntu系统(12.10),一个解压合并脚本,解压合并程序(程序来自于 openwrt-sdk,如https://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/OpenWrt-SDK-ramips-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2.tar.bz2),使用本文提供的脚本和程序可以直接对MT7620系列固件进行修改,其余系列固件不保证。
以下操作基于Ubuntu 12.10
1. 拷贝程序mksquashfs4,padjffs2,unsquashfs4至/bin目录,同时,给与可执行权限,如sudo chmod 755 mksquashfs4
2. 拷贝固件bin(本文固件)和modify.sh,脚本也需要可执行权限。至同一目录下,如~/Desktop/Pandora
3. 解压固件(需要root权限)。
cd ~/Desktop/Pandora
./modify.sh e mt7620.bin
4. 修改固件(需要root权限), 删掉或增加相应的功能。
5. 合并固件。
cd ~/Desktop/Pandora
./modify.sh c mt7620_new.bin
拷贝程序后,可以一劳永逸的使用这几个程序,解压合并固件也很快,主要的工作都是在第四步,修改固件。另外,固件体积是以128kb为单位增加的。也就是说,如果你精简或增加的软件体积很小的话,可能不会引起固件体积的变化。
假设需要从mt7620.bin(http://downloads.openwrt.org.cn/PandoraBox/Xiaomi-Mini-R1CM/testing/PandoraBox-ralink-mt7620-xiaomi-mini-squashfs-sysupgrade-r1216-20150721.bin)固件中删除samba。解压./modify.sh e mt7620.bin,进入squashfs-root目录,查找相关samba的目录,(find ./ -name *samba*),基本可以确认,查找出来的这些文件(确认是否有别的程序依赖于这些程序),然后全部删除。从./squashfs-root/usr/lib/opkg/status文件里删除相应的samba块(由于samba删除了,smb相关功能可能会影响,这里不深入了)。然后合并 ./modify.sh c mt7620_new.bin。比较一下新老固件大小,7864324 mt7620.bin, 7077892 mt7620_new.bin,小了0.75M。按照这个思路,可以去精简比如usb,print,ss,smb等等。增加的话,需要从别的固件找到对应文件,拷贝到对应目录。
一、如果您发现本站侵害了相关版权,请附上本站侵权链接和您的版权证明一并发送至邮箱:yehes#qq.com(#替换为@)我们将会在五天内处理并断开该文章下载地址。
二、本站所有资源来自互联网整理收集,全部内容采用撰写共用版权协议,要求署名、非商业用途和相同方式共享,如转载请也遵循撰写共用协议。
三、根据署名-非商业性使用-相同方式共享 (by-nc-sa) 许可协议规定,只要他人在以原作品为基础创作的新作品上适用同一类型的许可协议,并且在新作品发布的显著位置,注明原作者的姓名、来源及其采用的知识共享协议,与该作品在本网站的原发地址建立链接,他人就可基于非商业目的对原作品重新编排、修改、节选或者本人的作品为基础进行创作和发布。
四、基于原作品创作的所有新作品都要适用同一类型的许可协议,因此适用该项协议, 对任何以他人原作为基础创作的作品自然同样都不得商业性用途。
五、根据二〇〇二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可不经软件著作权人许可,无需向其支付报酬!
六、鉴此,也望大家按此说明转载和分享资源!本站提供的所有信息、教程、软件版权归原公司所有,仅供日常使用,不得用于任何商业用途,下载试用后请24小时内删除,因下载本站资源造成的损失,全部由使用者本人承担!