最新开始接触到刷路由器固件的小伙伴瞬间多了起来,为什么多了起来你肯定是知道的。
不过在不能刷路由器第三方固件的情况下,对于路由器自带的系统大家都是本着不能折腾就这么用着吧。
那么现在能进行刷第三方固件了,各种功能要求也就瞬间多了起来了,各种插件诸如广告屏蔽、代理、多拨等等。
但是对于别人编译的固件总有人会觉得功能上不能满足,其实常刷的例如RT-AC54和PandoraBox也都是可以通过插件实现各种功能的。
不过一方面路由器本身硬件配置限制,不可能直接集成太多的东西;另一方面不少功能也可以通过自定义代码的形式进行实现,然而搞不定代码也成为一个问题。
如果你有兴趣的话还可以自行进行编译各种固件,本身这些开源路由器固件就可以按照设备的不同、功能的不同进行定制,那么对于有需要的功能我们也可以进行定制。
以下为一些基本的操作流程,难点在于你得各种查询参数和功能方面的配置,不然每一个配置都不知道是干嘛的,定制也就没戏了。
另外你至少得基本了解Linux操作系统的一些知识,例如root权限、命令行操作等,如果你连Linux系统(Ubuntu、Cent OS、RedHat等等)都没用过,那么难度指数暴增。。
一、基本环境:Linux操作系统
Linux系统诸如Ubuntu、Cent OS、RedHat等等都可以,如果你是新手建议安装带桌面的,至少操作起来可能会方便一些。
你也不一定非得在物理机上安装,比如鸭子哥就在VMware里装了个Ubuntu就可以开搞了。
二、软件环境:以Ubuntu为例
进入Ubuntu桌面后通过Ctrl+Alt+T调出终端,为了防止在整体操作时发生权限不足的情况,所以可以先输入sudo su切换成root权限。
在执行以下命令时提醒:Ubuntu服务器在海外、安装软件时速度较慢,建议最好挂上个速度快的代理,不然可能几十K的速度你得下一天。
在终端内依次执行以下安装命令来安装软件:
sudo apt-get install g++ sudo apt-get install libncurses5-dev sudo apt-get install zlib1g-dev sudo apt-get install bison sudo apt-get install flex sudo apt-get install unzip sudo apt-get install autoconf sudo apt-get install gawk sudo apt-get install make sudo apt-get install gettext sudo apt-get install gcc sudo apt-get install binutils sudo apt-get install patch sudo apt-get install bzip2 sudo apt-get install libz-dev sudo apt-get install asciidoc sudo apt-get install subversion sudo apt-get install sphinxsearch sudo apt-get install libtool sudo apt-get install sphinx-common sudo apt-get install libssl-dev sudo apt-get install libssl0.9.8
再次提醒国内下载安装速度较慢,不要中断。如果中断某一个软件的安装则仍然需要执行安装命令进行重新安装,不然后面的操作会直接报错。
三:创建本地存放路径并修改权限,执行以下命令:
mkdir openwrt sudo chmod 777 openwrt cd openwrt
四、获取资源列表
(首选)Trank版:git clone git://git.openwrt.org/openwrt.git
Branch版:git clone git://git.openwrt.org/15.05/openwrt.git
注意:
1、版本可按自己需求进行选择,如果你并不知道版本之间的区别那就选择Trank版吧;
2、网上许多OpenWRT编辑教程获取资源的地址写的是SVN,目前已经换成Git了且SVN的地址似乎已经直接报错了;
3、如果使用Git获取时提示Git为安装则执行sudo apt-get install git-core
进行安装;
五、修改扩展并更新与安装
首先进入OpenWRT包所在位置cd /home/landian/openwrt/openwrt
(landian是我的Ubuntu名字,你操作时注意改成自己的系统名称)
修改配置文件扩展名称并更新安装 ,执行以下命令:
cp feeds.conf.default feeds.conf ./scripts/feeds update -a ./scripts/feeds install -a
六:测试环境,OK的话就可以进入定制界面了:执行命令
make defconfig
如下图:全部检查OK,点击图片可查看大图:
七:进入定制化界面按需进行设置:
首先执行以下命令进入定制化界面,在该页面可以通过键盘的上下左右方向键进行移动:
make menuconfig
如图:以下所有图片点击均可查看大图:
上述各项功能与设置估计你需要各种百度、Google进行查了,既然愿意折腾了就不要怕麻烦慢慢查去吧。
设置好记得先转到<Save>上回车下进行保存,保存好转到<Exit>上回车退出定制化界面。
八、开始编译固件包:
在退出定制化界面后我们又来到了终端界面,开始输入编译命令进行编译:
make //(直接编译) make V=99 //(带输出debug信息编译) make -j V=99 //(带输出debug信息并进行全速编译、不推荐!)
编译时建议选择第二种,在编译时输出debug信息如果出错可以容易排查;第三种全速编译不推荐使用,全速编译会耗尽大量CPU资源并持续2~3个小时。
第一次编译时耗时较长且需要联网下载部分资源,所以为了能顺利编译成功建议你全程代理防止出现资源下载不了而中断。
第一次编译时快的话大半个小时、慢的话2~3个小时都正常,所以还是需要耐心等待的。
编译完成后会在之前的文件夹里出现编译后的固件包,比如我们之前的路径是/home/landian/openwrt/openwrt。
至于刷固件这里就不再说了,估计各位已经是分分钟就可以刷几次了都。
九、附注资源:
OpenWRT官方网站:https://openwrt.org/
GitSources:https://dev.openwrt.org/wiki/GetSource
十、引用资源:本文参考以下链接中的内容,感谢原作者
1、JackieGemini:http://blog.csdn.net/fyh2003/article/details/44564219
2、zy900114:http://www.right.com.cn/forum/thread-83746-1-1.html