建立一个Openwrt软件源的镜像
说明
Openwrt trunk版本更新实在太快了,我昨天刚刷最新的固件,今天安装软件时就提示不兼容了。没办法,只能升级到最新的固件来j兼容要装的软件了。
为装个软件而刷固件是在是太劳民伤财了!虽然系统有备份还原,但是刷机、装软件、还原这个过程还是要不少时间和精力。在网上搜了下,不少朋友都遇到同样的问题。看到有位朋友通过为Openwrt建立本地镜像的方法来解决:搭建一个openwrt的本地镜像,这真是个一劳永逸的解决方案!
实现
实现OpenWrt软件源镜像非常简单,大概分3步:
- 下载所有软件
- 搭建web服务
- 设置OpenWrt软件源
下载所有软件
由于Openwrt的软件实在太多,当然不可能一个个手动下载,我们可以写个爬虫来实现自动下载:
1 | #!/usr/bin/env python |
我的路由器是WR703N,Openwrt官方源接近4000个应用,总共还不到300M。在Openshift上大概半个小时就全部下载完毕,速度还是比较快的。
搭建WEB服务
下载完成之后我们需要将整个目录部署成一个web应用,并开发文件列表,这样就可以作为镜像源使用了。这里使用nginx作为前端,并加载了FancyIndex
模块,所以下面的列表比官方的要漂亮一些。
更改软件源
最后将Openwrt的软件源地址设为这个镜像地址就行了,这样相当于将官方的trunk源freeze了一个版本。以后下载应用都是从这个源下载,再也不用当心官方源频繁升级带来的不兼容问题了。
如果有需要的话,你也可以添加我的软件源:http://robots.shuyz.com/openwrt/wr703n/2014-06-13/,软件源里包含WR703N 官方trunk源6/11所有的软件,共3965个。
参考资料
- 搭建一个openwrt的本地镜像打造成真正的AirPlay播放器](http://www.right.com.cn/forum/thread-115634-1-1.html)
建立一个Openwrt软件源的镜像
https://www.shuyz.com/posts/setup-openwrt-package-src-mirror/