
之前我们介绍过Lean Openwrt/Lede路由器固件源码的编译过程,具体可以参考:小白也会!Lean OpenWrt/Lede 固件编译教程
Lienol的Openwrt固件源码,则是在Lean源码的基础上,进行了一系列修改和定制。两套源码整体上比较相似,主要的区别在于:
- Lean源码可选SSR Plus+,作为Shadowsocks/SSR/V2Ray/Trojan等工具的客户端,实现路由器科学上网。
 - Lienol源码可选Passwall,作为Shadowsocks/SSR/V2Ray/Trojan等工具的客户端,实现路由器科学上网。
 
下面我们介绍下Lienol源码的编译过程。
编译前的准备工作
在编译Openwrt固件前,我们需要提前做一些准备工作。
1.在Vultr搭建一台高频率VPS服务器,安装Ubuntu 18.04系统,作为编译路由器固件的环境,原因见下文。
Vultr官方网站:https://www.vultr.com
Vultr购买和使用教程:Vultr VPS服务器购买及使用教程 可支付宝哦
2.在Ubuntu系统中创建非root用户,并使用新用户登录进行编译过程。
以上两条要求的原因,以及具体实施过程,可以点此进入Lean固件编译教程,参考文章中的以下部分:
- 编译环境要求
 - 编译环境的搭建
 - 编译前最后一步:创建非root用户。(下文以新用户名为free为例,进行介绍)
 
Lienol 路由器固件编译教程
Lienol源码在最近的更新后,删除了原有的Passwall模块。根据一些网友的反馈,下文会提供解决方法,在固件中重新添加Passwall。
具体编译流程:
1.使用Putty,以刚才创建的free用户登录VPS,右键复制以下命令运行:
| 
					 1  | 
						sudo apt-get update  | 
					
2.运行以下命令安装所需依赖:
| 
					 1  | 
						sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3.5 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 device-tree-compiler g++-multilib antlr3 gperf  | 
					
3.下载Lienol源码:
| 
					 1  | 
						git clone -b dev-19.07 https://github.com/Lienol/openwrt  | 
					
4.修改配置文件,重新添加Passwall。
具体方法:
用Winscp打开/home/free/openwrt/feeds.conf.default文件,另起一行添加如下参数后保存:
| 
					 1  | 
						src-git laohu https://github.com/huchanghui123/Lienol-openwrt-packages-backup  | 
					
5.用Putty依次运行如下命令更新feeds:
| 
					 1 2 3  | 
						cd /home/free/openwrt ./scripts/feeds clean ./scripts/feeds update -a && ./scripts/feeds install -a  | 
					
6.运行如下命令,开始配置编译参数:
| 
					 1  | 
						make menuconfig  | 
					
7.在编译参数配置界面,首先选择你的路由器型号,其中:
- Target System:可以选择路由器的CPU品牌、架构等信息。
 - Subtarget:进一步精确选择,一般可以精确到CPU型号(部分路由器可能不显示此项)。
 - Target Profile:可以选择具体的路由器型号。
 

如果你不清楚自己路由器的CPU品牌、架构、型号等信息,那么可以进入以下文章链接,按Ctrl+F5,根据路由器型号进行反查。
哪些路由器支持刷OpenWrt/LEDE固件实现科学上网?品牌型号及CPU架构查询列表
8.选好路由器型号后,进入Luci——Application菜单项,即可找到luci-app-passwall。
如果你需要安装passwall,那么上下键移动选中此项,按Y键即可添加。

9.如果你需要对passwall进行更详细的设置,那么可以进入Configuration项,添加或删除部分功能:

Pallwall可选功能如下:
- ipt2socks
 - Shadowsocks Redir(ss-redir)
 - ShadowsocksR Redir(ssr-redir)
 - Shadowsocks Socks(ss-local)
 - ShadowsocksR Socks(ssr-local)
 - V2ray
 - Trojan
 - Brook
 - kcptun
 - haproxy
 - ChinaDNS-NG
 - pdnsd
 - dns2socks
 - v2ray-plugin(Shadowsocks plugin)
 - simple-obfs(Shadowsocks plugin)
 
10.各项功能设置完毕后,左右键选择save并回车保存设置,保存过程中一路OK回车即可。
11.保存完毕后,左右键选择exit并回车,一路退出配置界面。
12.运行以下命令下载dl库:
| 
					 1  | 
						make -j8 download v=s  | 
					
13.运行以下命令开始编译固件,第一次编译可能耗时较长,耐心等待2—3个小时。
| 
					 1  | 
						make -j1 V=s  | 
					
常见问题
1.编译成功后的固件,位于/home/free/openwrt/bin/targets/你的CPU架构/,我们一般选择名称中带有factory的固件下载使用。
2.如果需要单独下载编译好的passwall ipk,那么可以在 /home/free/openwrt/bin/packages/你的CPU架构/ 下面的各目录,查找luci-app-passwall开头的ipk文件。其它各插件的ipk,也可以在此查找下载。
3.路由器固件刷写成功后,默认配置如下:
- IP地址:192.168.1.1
 - 登录用户名:root
 - 登录密码:无
 
SSR中文网














