Lean 大神 OpenWRT 固件精简版编译教程

文章目录 「隐藏」
  1. 高速稳定便宜机场服务推荐老牌机场
  2. 编译 OpenWrt 固件环境
  3. OpenWrt 固件精简版
  4. 一、升级及安装必要组件
  5. 二、克隆 lean 的源代码到本地
  6. 三、开始定制与编译
  7. 编外:给 openwrt 固件添加 Passwall 插件的方法
  8. 四、再次编译
  9. 五、刷写 OpenWrt 软件由固件方法

网上有很多编译 OpenWrt 固件的教程,我自己整理一下方便自已往后使用,并且提供给想自已编译 OpenWRT 固件的朋友。 OpenWrt 源码来自 Lean 大神。

自已编译软路由 OpenWrt 固件可以满足自己需求,一个符合自己需求,简洁及稳定的固件。有很多插件对于我们有时候没什么用。

高速稳定便宜机场服务推荐老牌机场

[table id=45 /]

编译 OpenWrt 固件环境

事先需要一台安装好 Ubuntu 64 位操作系统的 VPS 。

需要注意以下三点:

  1. 不要用 root 用户 git 和编译,安装好操作系统后。先新建一个用户
  2. 使用 SSH 连接服务器后进入非 Root 用户帐号进行代码操作
  3. 国内用户编译前最好准备好梯子:高性价比的 SS/SSR/V2ray/Trojan 等老牌高速低价稳定便宜机场服务推荐
  4. 默认登陆 IP 192.168.1.1, 密码 password

OpenWrt 固件精简版

本固件只保留以下常用插件,无广告:

LuCI —> Applications —> luci-app-accesscontrol #访问时间控制 LuCI —> Applications —> luci-app-arpbind #IP/MAC 绑定 LuCI —> Applications —> luci-app-autoreboot #定时重启 LuCI —> Applications —> luci-app-filetransfer #文件传输(可 web 安装 ipk 包) LuCI —> Applications —> luci-app-firewall #添加防火墙 LuCI —> Applications —> luci-app-sfc #最新版 Turbo ACC 网络加速 LuCI —> Applications —> luci-app-nlbwmon #网络带宽监视器 LuCI —> Applications —> luci-app-ramfree #释放内存 LuCI —> Applications —> luci-app-sqm #流量智能队列管理(QOS) LuCI —> Applications —> luci-app-55R 饮料 #不忘初心 LuCI —> Applications —> luci-app-upnp #通用即插即用 UPnP(端口自动转发) LuCI —> Applications —>luci-app-wol 网络唤醒

Extra packages —> ipv6helper #支持 ipv6

固件的初始访问地址:192.168.1.1;用户名:root 登陆密码:password

img 格式下载地址:https://drive.google.com/file/d/16BuXadbBfM3lpcauUFR7GJ1B9O2LiLn7/view?usp=sharing vmdk 格式载地址:https://drive.google.com/file/d/1CDSgZ5pp9fVPrJ7OdF0LeUBte-zXJZk2/view?usp=sharing

一、升级及安装必要组件

命令行输入 sudo apt-get update 后回车,然后输入:

sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint

二、克隆 lean 的源代码到本地

git clone https://github.com/coolsnowwolf/lede

三、开始定制与编译

进入克隆下来的目录后执行下面的命令

1. cd lede/
2. ./scripts/feeds update -a
3. ./scripts/feeds install -a
4. make menuconfig

敲下回车键后,稍等片刻进入如下菜单

fe7201607462b61

进入 Target System 和 Subtarget 勾选你需要编译的平台,默认的是 X86,并且是 64 位的,所以你需要选择自助选择。

4b581f8ae7a783f 进入 Target Images 勾选你需要的固件格式等,img 、 vmdk 等保持默认

接下来是最重要也是最核心部份,选择编译的插件。进入 LuCI–>Applications 内选中你需要的插件。

58a8edfac2bafaf 0b79434d6ab012b 72367995857284f 这里按 Y 勾选,N 取消勾选,M 编译而不安装。连按两次 Esc 键返回上一界面。 ( ‘*’ 代表编入固件,‘M’ 表示编译成模块或者 IPK 包, ‘空’ 不编译 ) 。

关于 Applications 添加插件应用说明,请看这一篇文章:OpenWrt 编译 LuCI -> Applications 添加插件应用说明【2019.09.22】

勾选完需要的插件后就可以退回第一个界面按 Y 保存退出,保存按默认的文件名称 (.config)保存即可,不需要修改。编译会根据.config 的内容编译,想要恢复到初始配置删掉.config 文件即可。

最后选好你要的路由,输入: make -j1 V=s

注意:-j1 后面是线程数。第一次编译推荐用单线程,国内请尽量全局科学上网。

即可开始编译你要的固件了。首次编译大概需要两三个小时,之后基本上只需要十多分钟既可。编译过程中不要断开 SSH 。若断开,请清除整个 lede 文件夹重新开始。

编译完成后,前往:/home/lede/bin/targets/x86/64 这个目录获取编译成功的固件。

7a0fb5fdb92d062

编外:给 openwrt 固件添加 Passwall 插件的方法

有人喜欢 Lienol 的 Passwall 的插件,那以下是给 openwrt 固件添加 Passwall 插件的方法。

1 、克隆 lean 的源代码到本地;

git clone https://github.com/coolsnowwolf/lede

2 、然后 cd lede 进入目录;

3 、添加 src-git lienol https://github.com/Lienol/openwrt-package 到 OpenWRT 源码根目录 feeds.conf.default 文件。 feeds.conf.default 文件在 lede 根目录中,使用文本编辑器打开既可。

4 、执行下面的命令

./scripts/feeds clean
./scripts/feeds update -a
rm -rf feeds/lienol/lienol/ipt2socks
rm -rf feeds/lienol/lienol/shadowsocksr-libev
rm -rf feeds/lienol/lienol/pdnsd-alt
rm -rf feeds/lienol/package/verysync
rm -rf feeds/lienol/lienol/luci-app-verysync
rm -rf package/lean/kcptun
rm -rf package/lean/trojan
rm -rf package/lean/v2ray
rm -rf package/lean/luci-app-kodexplorer
rm -rf package/lean/luci-app-pppoe-relay
rm -rf package/lean/luci-app-pptp-server
rm -rf package/lean/luci-app-v2ray-server
./scripts/feeds install -a

然后 make menuconfig 进入编译菜单。

最后按以上教程选择所需的插件后。退出编译菜单运行命令:make -j1 V=s 进行编译。 #n=线程数+1,例如 4 线程的 I5 填-j5,开始编译

给 openwrt 固件添加 Passwall 插件的方法结束,建议 plus+与 passwall 二选一吧,如果选择 passwall 的话,那建议把 plus+以下的其它组件都取消掉。

四、再次编译

完成首次编译 再编译可大大缩短时间,只输入以下代码,十几分钟的事情。

OpenWrt 编译方式:
cd lede      #进入 LEDE 目录
git pull      #同步更新大雕源码
./scripts/feeds update -a && ./scripts/feeds install -a       #更新 FEEDS
rm -rf ./tmp && rm -rf .config        #清除编译配置和缓存
make menuconfig     #进入编译配置菜单
make -j1 V=s      #n=线程数+1,例如 4 线程的 I5 填-j5,开始编译

以上代码一行一行操作。

注意:编译丰富插件时,建议修改下面两项默认大小,留足插件空间。(x86/64)!!!

Target Images —> (16) Kernel partition size (in MB) #默认是 (16) 建议修改 (256) Target Images —> (160) Root filesystem partition size (in MB) #默认是 (160) 建议修改 (512)

五、刷写 OpenWrt 软件由固件方法

如何把固件刷到软路由上面,建议使用以下两个方案。

1. DiskImage 直接刷写(最直接方便)

c4ea5c0b0a8fd06 刷写方法:制作一个 PE 盘,把 DiskImage 和 LEDE 固件拷贝到 PE 盘,插到路由上,启动 PE,然后和方法一差不多,打开 DiskImage,选择软路由上的那块硬盘,选 OpenWrt.img,点开始,等进度条结束,然后关机,拔掉 U 盘,再开机就可以了

2. 用 physdiskwrite 刷写

刷写方法:制作一个 PE 盘,把 physdiskwrite 和 LEDE 固件拷贝到 PE 盘(同一个目录下,建议放在根目录,就是打开 U 盘就能看到的那个目录),插到路由上,启动 PE,然后查看下存放固件的盘符(这里举例为 U: 盘),打开 cmd(不懂的就按 Win 建+r 键,输入 cmd 回车,Win 键就是键盘左下方是 Windows 图标的那个按键)

  输入 U:(回车确定,切换到 U 盘的目录)
  输入 physdiskwrite -u OpenWrt.img(回车确定)

然后会显示目前检测到的硬盘,输入 0 或者 1 选择要刷写到哪个盘(看容量,选择硬盘的那个编号),按 Y 确定,之后等待刷写结束就可以了,然后关机,拔掉 U 盘,再开机就可以了.

常用插件列表

一般来说只要选对你的机器型号其他按默认就行了,有特殊需要可以勾选需要的插件即可

luci-app-accesscontrol 上网时间控制 luci-app-adbyby-plus 广告屏蔽大师 Plus + luci-app-amule 电驴下载–我一般精简掉 luci-app-aria2 Aria2 下载–我一般精简掉 luci-app-arpbind IP/MAC 绑定 luci-app-ddns 动态域名解析 luci-app-flowoffload Turbo ACC FLOW 转发加速 luci-app-frpc 内网穿透 Frp–我一般精简掉,因为我的是公网 IP luci-app-hd-idle 硬盘休眠 luci-app-ipsec-vpnd IPSec 服务端 luci-app-mwan3 MWAN 负载均衡 luci-app-nlbwmon 网络带宽监视器 luci-app-openvpn OpenVPN 客户端 luci-app-openvpn-server OpenVPN 服务端 luci-app-pptp-server PPTP 服务端 luci-app-ramfree 释放内存 luci-app-samba 网络共享 (samba) luci-app-sfe Turbo ACC 网络加速 (开启 Fast Path 转发加速) luci-app-sqm 流量智能队列管理 (QOS) luci-app-ssr-plus 介绍 神秘代码:echo 0xDEADBEEF > /etc/config/google_fu_mode luci-app-transmission BT 下载–我一般精简掉 luci-app-upnp 通用即插即用 UPnP(端口自动转发) luci-app-usb-printer USB 打印服务器–我一般精简掉 luci-app-vlmcsd KMS 服务器(WIN 激活工具)–我一般精简掉 luci-app-vsftpd FTP 服务器–我一般精简掉 luci-app-webadmin Web 管理 luci-app-wireguard VPN 服务器 WireGuard 状态 luci-app-wol 网络唤醒 luci-app-wrtbwmon 实时流量监测

支持 iPv6:

Extra packages —> ipv6helper(选定这个后下面几项自动选择了) Network —> odhcp6c Network —> odhcpd-ipv6only LuCI —> Protocols —> luci-proto-ipv6 LuCI —> Protocols —> luci-proto-ppp

《Lean 大神 OpenWRT 固件精简版编译教程》留言数:0

发表留言