V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
OpenWrt 是一个专门面向嵌入式设备的 Linux 发行版。你可以将 OpenWrt 支持的型号的嵌入式设备,比如各种路由器上的系统,换成一个有更多可能性可以折腾的 Linux 系统。
OpenWrt 官方网站
magicdog20
V2EX  ›  OpenWrt

我也分享 WNDR4300 14.07 固件,官方 ImageBuilder 编译,完全使用 128M flash,集成中文 Luci

  •  1
     
  •   magicdog20 · 2014-11-17 01:26:52 +08:00 · 8679 次点击
    这是一个创建于 3667 天前的主题,其中的信息可能已经有所发展或是发生改变。
    完全使用128M flash补丁来自http://www.right.com.cn/forum/thread-144982-1-1.html,感谢zhouruixi大大!

    官方ImageBuilder完全可以实现100M flash空间利用,同时可安装官方kmod开头的软件。有图有真相:
    http://pan.baidu.com/s/1o6FQZSQ

    附我用官方ImageBuilder编译的BB版4300和3700v4的固件,其他跟官方版一样,只是打了flash扩容补丁和集成了中文luci(没有luci还是不方便啊),我只测试了WNDR4300的。
    http://pan.baidu.com/s/14eo7G
    第 1 条附言  ·  2014-11-17 08:26:02 +08:00
    说的可能不太清楚,上面说的所谓”官方版“不是Netgear官方版,二是说”OpenWrt"官方版:-)
    37 条回复    2015-08-11 18:11:56 +08:00
    abelyao
        1
    abelyao  
       2014-11-17 07:59:05 +08:00 via Android
    楼主你咋知道我刚买了一台 4300 …
    话说这东西刷不刷,区别在哪啊?我没刷简单用了一下也觉得挺强大的了
    snachx
        2
    snachx  
       2014-11-17 08:16:38 +08:00 via Android
    @abelyao 如果自己会折腾,或者想学折腾,刷,然后你会重新定义强大
    snachx
        3
    snachx  
       2014-11-17 08:27:15 +08:00 via Android
    楼主刷128M固件是openwrt升级刷还是先刷回原厂再刷的呢?

    我也用image builder做了,直接升级刷的,发现/proc/mtd和/proc/partitions都成功改变了,但是df 结果仍然没变…

    后来又升级刷了一次别人从源码编译的版本,df输出也对了,但是再次升级刷我自己image builder做的版本也没问题了。

    以至于我不知道一开始不行的原因了,是第一次刷之后ubi自动扩容还没刷新呢?还是只用image builder不行呢?懒得折腾了…
    magicdog20
        4
    magicdog20  
    OP
       2014-11-17 08:31:09 +08:00
    没特殊要求建议不刷,不要为了刷机而刷机,所谓不作死就不会死。我刷是为了科学上网和多拨提速。不过话说Netgear官方固件实在不咋地,反应极慢,启动要等1分钟以上...
    magicdog20
        5
    magicdog20  
    OP
       2014-11-17 08:34:25 +08:00
    @snachx 可以从官方固件直接刷,也可以从其他openwrt升级,我都试过。只用image builder应该没问题,我就是直接用的image builder。不过我没看过df的结果,只在luci里看了一下就觉得应该没问题了。中午回去用df再看下。
    snachx
        6
    snachx  
       2014-11-17 08:49:25 +08:00 via Android
    @magicdog20 luci里面对df应该就没问题了,手上没有多余的路由器可以试试了,真搞不懂什么原因…

    就第一次从非128刷到128有问题…
    debiansid
        7
    debiansid  
       2014-11-17 09:45:08 +08:00 via iPhone
    源码编译的飘过
    lbp0200
        8
    lbp0200  
       2014-11-17 17:01:02 +08:00
    我刚买了3800,看到4300,这个悔啊
    magicdog20
        9
    magicdog20  
    OP
       2014-11-17 19:19:35 +08:00
    @lbp0200 其实我也是买了3800,后来正好看到4300也被支持了,就退货了
    Yamade
        10
    Yamade  
       2014-11-18 17:15:26 +08:00
    楼主可以把搞个多拨+ss+chinaDNS 的版本不?
    magicdog20
        11
    magicdog20  
    OP
       2014-11-18 18:36:56 +08:00
    @Yamade 这些软件都可以直接安装,mwan3,shadowssocks都可以从官方源里找到,直接在luci下安装就行了。我用的是VPN,你用ss,每个人的要求不一样的。
    debiansid
        12
    debiansid  
       2014-11-18 18:43:16 +08:00 via iPhone
    我自己编译了ss chinadns 进去。网络配置 等。reset后什么都不弄就直接用了
    Tonni
        13
    Tonni  
       2014-11-27 11:50:07 +08:00
    楼主,我现在的是BARRIER BREAKER (14.07, r42625),我下载你编译的openwrt-ar71xx-nand-wndr4300-squashfs-sysupgrade.tar,然后在WEB界面下上传附件升级,升级完成后可用空间还是13M,这是为什么?
    Tonni
        14
    Tonni  
       2014-11-27 23:06:33 +08:00
    搞定了,升级的时候没选中清空配置,晚上清空配置升级后一切正常升级后空间终于不再着急了,谢谢!
    efin
        15
    efin  
       2014-11-28 00:11:46 +08:00
    @magicdog20 我的4300 怎么在LUCI下搜不到shadowsocks。。。
    我的源配置:
    dest root /
    dest ram /tmp
    lists_dir ext /var/opkg-lists
    option overlay_root /overlay
    src/gz barrier_breaker_base http://downloads.openwrt.org/snapshots/trunk/ar71xx.nand/packages/base
    src/gz barrier_breaker_luci http://downloads.openwrt.org/snapshots/trunk/ar71xx.nand/packages/luci
    src/gz barrier_breaker_management http://downloads.openwrt.org/snapshots/trunk/ar71xx.nand/packages/management
    src/gz barrier_breaker_oldpackages http://downloads.openwrt.org/snapshots/trunk/ar71xx.nand/packages/oldpackages
    src/gz barrier_breaker_packages http://downloads.openwrt.org/snapshots/trunk/ar71xx.nand/packages/packages
    src/gz barrier_breaker_routing http://downloads.openwrt.org/snapshots/trunk/ar71xx.nand/packages/routing
    src/gz barrier_breaker_telephony http://downloads.openwrt.org/snapshots/trunk/ar71xx.nand/packages/telephony

    请问是否正确?
    另外,我用你的这个方法自己编译了一个版本,装所有的软件,都会提示错误:
    Collected errors:
    * satisfy_dependencies_for: Cannot satisfy the following dependencies for openvpn-polarssl:
    * kernel (= 3.14.18-1-571611b205d8eae83adf1c2fef4eed94) *
    * opkg_install_cmd: Cannot install package openvpn-polarssl.

    不知道你是否遇到过这个问题?
    magicdog20
        16
    magicdog20  
    OP
       2014-11-28 00:26:24 +08:00
    @efin 你用的是trunk版吗?看你的源是trunk版的。你是用ImageBuilder编译的?还是源码编译的?如果不是用同样的版本的编译的软件不能通用的。可能的原因:1)可能Trunk版更新比较快,ImageBuilder和Package对应的Kernel版本不一致。2)或者你没有清空配置,源配置还是你原来固件的。
    我用的是BB版,安装软件试过没问题。ss我还没用过,查找了一下有一个客户端
    shadowsocks-client 0.5-d8ef02715f40de0fb7ba0f7267d3f8260f38ba80 shadowsocks client for router
    不知道你说的是不是这个。
    magicdog20
        17
    magicdog20  
    OP
       2014-11-28 00:29:54 +08:00   ❤️ 1
    @efin 试了一下shadowsocks-client可以安装的
    Installing shadowsocks-client (0.5-d8ef02715f40de0fb7ba0f7267d3f8260f38ba80) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/packages/shadowsocks-client_0.5-d8ef02715f40de0fb7ba0f7267d3f8260f38ba80_ar71xx.ipk.
    Installing libopenssl (1.0.1j-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/libopenssl_1.0.1j-1_ar71xx.ipk.
    Installing zlib (1.2.8-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/zlib_1.2.8-1_ar71xx.ipk.
    Configuring zlib.
    Configuring libopenssl.
    Configuring shadowsocks-client.

    建议不要用trunk版,各种不稳定。
    efin
        18
    efin  
       2014-11-28 00:40:07 +08:00
    谢谢哈,我是个openwrt的纯新手,昨天用svn下了代码:
    svn co svn://svn.openwrt.org/openwrt/branches/barrier_breaker
    改了Makefile为了充分利用WNDR4300的128M Flash.
    然后用make menuconfig,增加了LuCi和中文包,然后运行make编译了代码。
    这种方式算是imagebuilder还是源码编译?呵呵,我有点小白啊。

    源确实是用错了,已改回。
    我因为改了makefile 好像造成这个kernel和官方不一样,每次安装应用都报错如下:
    Collected errors:
    * satisfy_dependencies_for: Cannot satisfy the following dependencies for mwan3:
    * kernel (= 3.10.49-1-41123e63bc43f61af09d064504300966) * kernel (= 3.10.49-1-41123e63bc43f61af09d064504300966) *
    * opkg_install_cmd: Cannot install package mwan3.
    所以为了尝试,把源换成trunk的源了。。。
    magicdog20
        19
    magicdog20  
    OP
       2014-11-28 01:03:47 +08:00
    @efin 你这是源码编译。源码编译的问题就是这个,*所有*用的kmod软件都要自己重新编译
    简易用ImageBuilder编译,速度快,还可以安装官方软件。不明白为什么那么多人用源码编译,真的很高大上吗?

    如果是为了学用linux或者开发openwrt模块,可以学习一下编译过程,最好还是有点unix或linux基础。大部分人只是为了增加点功能,或者说固件里预装一些软件(比如shadowsocks),那么ImageBuilder完全够用,使用很简单,生成固件快(只要几秒)。比如我生成WNDR4300固件,就用了一个命令:
    make image PROFILE=WNDR4300 PACKAGES="luci luci-i18n-chinese" FILES=files/

    学用ImageBuilder可以参考:
    http://hi.baidu.com/cokebar/item/bcaa7d02f9fd96f3a0103494
    magicdog20
        20
    magicdog20  
    OP
       2014-11-28 01:07:18 +08:00
    @efin 似乎用源码编译,每台机器编译出来的核心的版本都会不一样,不管你改了还是没改
    efin
        21
    efin  
       2014-11-28 01:09:07 +08:00 via iPhone
    @magicdog20 那这样的话,如何在编译之后再增加新软件呢?每次安装都报错呀,是不是得重新编译新固件,然后sysupgrade?你是如何操作的呢
    magicdog20
        22
    magicdog20  
    OP
       2014-11-28 01:16:18 +08:00
    @efin 如果用源码编译,如果要增加新软件,就要在make menuconfig的时候,把要编译的软件标记成M,然后用命令单独编译这个软件。编译出来的ipk就可以安装了。比较麻烦。

    用ImageBuilder编译出来的就可以直接安装官方软件。如果官方没有,那么就要下载SDK,用SDK单独编译这个软件就行了。

    我编译的这个版本有什么问题吗?为什么不直接用这个?
    magicdog20
        23
    magicdog20  
    OP
       2014-11-28 01:19:25 +08:00
    @efin 测试一下,安装没问题
    Installing openvpn-polarssl (2.3.4-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/openvpn-polarssl_2.3.4-1_ar71xx.ipk.
    Installing kmod-tun (3.10.49-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/kmod-tun_3.10.49-1_ar71xx.ipk.
    Installing liblzo (2.08-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/liblzo_2.08-1_ar71xx.ipk.
    Installing libpolarssl (1.3.8-2) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/libpolarssl_1.3.8-2_ar71xx.ipk.
    Configuring kmod-tun.
    Configuring liblzo.
    Configuring libpolarssl.
    Configuring openvpn-polarssl.
    magicdog20
        24
    magicdog20  
    OP
       2014-11-28 01:21:02 +08:00
    @efin mwan3也没问题
    Installing mwan3 (1.5-4) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/packages/mwan3_1.5-4_all.ipk.
    Installing ip (3.15.0-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/ip_3.15.0-1_ar71xx.ipk.
    Installing iptables-mod-conntrack-extra (1.4.21-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/iptables-mod-conntrack-extra_1.4.21-1_ar71xx.ipk.
    Installing kmod-ipt-conntrack-extra (3.10.49-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/kmod-ipt-conntrack-extra_3.10.49-1_ar71xx.ipk.
    Installing iptables-mod-ipopt (1.4.21-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/iptables-mod-ipopt_1.4.21-1_ar71xx.ipk.
    Installing kmod-ipt-ipopt (3.10.49-1) to root...
    Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/nand/packages/base/kmod-ipt-ipopt_3.10.49-1_ar71xx.ipk.
    Configuring ip.
    Configuring kmod-ipt-conntrack-extra.
    Configuring kmod-ipt-ipopt.
    Configuring iptables-mod-ipopt.
    Configuring iptables-mod-conntrack-extra.
    Configuring mwan3.
    efin
        25
    efin  
       2014-11-28 01:30:04 +08:00
    @magicdog20 感谢哈!我正在学imagebuilder,然后就用这个编译。
    我是看网上的教程都是svn,我不知道还有这么个东西简便实现哈。
    这个imagebuilder配置pkg包的过程看起来有点复杂呀。
    magicdog20
        26
    magicdog20  
    OP
       2014-11-28 08:06:55 +08:00
    @efin 那篇里说的往files里放配置文件的办法只是一种办法,也可以用其他办法,比如用winscp拷贝,或者你直接新建文件手工编辑。只要你把需要替换的配置文件放到files里就行。注意修改文件权限,有的要有可执行权限。

    用scp拷贝的好处是直接从linux到linux,文件权限不会有问题,如果从windows拷贝进去,权限需要重新设置。
    efin
        27
    efin  
       2014-11-28 08:45:16 +08:00
    @magicdog20 多谢,基本明白了,还有个问题,如果想把某个包加入到image builder的编译中,如:luci,mwan3,我怎样知道该加那些依赖包呢?
    magicdog20
        28
    magicdog20  
    OP
       2014-11-28 11:55:45 +08:00   ❤️ 1
    @efin 一般来说不需要知道,编译过程自动会处理的。比如你PACKAGES=“openvpn-polarssl”,openvpn-ssl依赖kmod-tun,那编译会自动加上kmod-tun,不需要手工添加。

    如果你想知道的话,就要看openvpn-ssl的Makefile文件,其中有说明依赖哪些包。
    efin
        29
    efin  
       2014-11-28 14:31:44 +08:00
    @magicdog20 了解,在网上看到说要自己确定依赖包,我还挺晕的,如果说只需要添加需要的包,那就方便多了,谢谢答复了这么多问题!
    debiansid
        30
    debiansid  
       2014-11-29 12:25:29 +08:00
    wndr4300 这种不需要经常reset的,不用自己编译吧,装好不会怎么再改的。
    我的703n不是特别稳定,而且要带着外出,所以自己折腾下编译,还是可以的
    luckyfatpig
        31
    luckyfatpig  
       2014-12-28 13:29:29 +08:00
    用了樓主的固件,安裝資源庫沒有的軟件(gevent)就會出現以下錯誤:

    已失敗並回傳代碼 255 和錯誤訊息
    //user/lib/opkg/info/python-greenlet.postinst:line 4: default_postinst: not found
    //user/lib/opkg/info/gevent.postinst:line 4: default_postinst: not found
    Collected errors;
    *pkg_run_script: package "python-greenlet"postinst script returned status 127.
    *opkg_configure: python-greenlet.postinst returned 127.
    *opkg_run_script: package "gevent"postinst script returned status 127.
    *opkg_configure: gevent.postinst returned 127.

    但安裝其它資源庫有的軟件就正常,路由器跑goagent,現在就剩下libevent2,python-greenlet,gevent這三個無法安裝,求解答!!!!!!!!!!!!!!!
    6556004
        32
    6556004  
       2015-01-11 23:13:21 +08:00
    @magicdog20
    正在使用,很方便,已经关注.
    debiansid
        33
    debiansid  
       2015-01-21 18:15:46 +08:00 via iPhone
    从源码编译有12m ,你这有.config么 参考下
    jianng
        34
    jianng  
       2015-02-23 00:27:34 +08:00
    df了一下,看size是99.9M,这个是正常的吗?不是有128M吗?df出来的这99M的Size应该是整个空间大小,而不是可用空间大小吧。
    lutasa43210
        35
    lutasa43210  
       2015-02-23 22:13:41 +08:00
    @magicdog20 楼主好 我刚入了4300 咨询一个问题 OpenWrt有好用的限速软件 或者脚本吗 相对指定IP的上传 下载速度做限制 谢谢
    pipi95
        36
    pipi95  
       2015-04-02 19:34:13 +08:00
    太棒了,刷了您的这个,与Freerouter V2成功部署。不像https://www.v2ex.com/t/128585中的,与freerouter不兼容!感谢!
    mike163
        37
    mike163  
       2015-08-11 18:11:56 +08:00
    从官方版本升级到你这个版本,菜单还是英文的。空间已经99M了,我是直接从官方的factory 升级到你的这 sysupgrade的。另外 dhcp似乎也分配不了IP了。搞不明白。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1011 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 19:40 · PVG 03:40 · LAX 11:40 · JFK 14:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.