本文转自:http://lanhome.com/?id=21

  • 版权所属:蓝浤的博客
  • 文章作者:bg5hiu

首先你需要安装一台ubuntu服务器版本的操作系统,你可以在群辉的Virtual Machine Manager上安装一台,或者是直接使用阿里云、谷歌云、腾讯云的Linux主机。

本文图示编译环境以群辉 Virtual Machine Manager 上安装使用ubuntu18.0为例。

一、先配置好lean大的固件编译环境(本文假设你能访问github.com)

1、登陆ubuntu18.0

2、使用lean大傻瓜化的“复读机”模式,复制粘贴所有的预制命令

https://github.com/coolsnowwolf/lede

这里有详细的说明,我把实际的步骤写下来,同学们可以参考。

输入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 device-tree-compiler

对,就是以上所有代码区域的命令输入到PuTTY里。

输入git clone https://github.com/coolsnowwolf/lede,ok,你可以下载到最新版本的OpenWrt固件。

再输入cd lede,进入刚刚下载好的文件夹。

好,至此,编译过程告一段落。

2、我们要拼接上Lienol先生 的PassWall和tty228先生的Serverchan

先使用WinSCP登陆到我们的Ubuntu服务器

请下载刚才复制的lede文件夹里的一个叫做“feeds.conf.default”的文件到本地电脑

使用记事本打开以后,另起一行复制

src-git lienol https://github.com/Lienol/openwrt-package

这句话的功能是在接下来的更新和安装feed的时候,可以调用SRC源 Lienol先生 的Package包, Lienol先生自主开发的PassWall具有非常好的性能,强烈推荐使用。

然后就可以执行lean大页面接下来的命令了。

这里要注意,如果你是第二次编译,最好使用make clean命令和 ./scripts/feeds clean命令清除一些障碍,如果是全新安装就无须clean。

clean完以后,就可以输入以下命令./scripts/feeds update -a

因为 Lienol 的Package包 和lean大的部分 Package包 冲突,所以不好意思,要删掉 Lienol 的部分Package包 。

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

以上命令直接复制按回车确认即可。

下面我们运行新命令./scripts/feeds install -a

至此,我们已经把 Lienol先生的PassWall加载到了lean大的lede编译文件里了。

下面我们来加载tty228先生的Serverchan。serverchan是一款非常实用的服务器状态监控软件,可以支持微信推送。

我们先要使用Linux的CD命令,进入到lean的package压缩包,或者lede的package压缩包。 lean固件目录为~/lede/package/lean而openwrt的目录为~/openwrt/lede/package 。这里我以进入lean固件的package目录为例:

在这里我要加载 tty228先生的Serverchan,请输入以下命令

git clone https://github.com/tty228/luci-app-serverchan.git

回车确认,这样serverchan的编译包就加载进来了。至此,我们的基础编译素材全部加载好了,就可以快乐的进入编译过程了。

3、重头戏,如何配置make menuconfig?使用make -j1 V=s来编译

接下来,我们就要使用make menuconfig命令进入编译环境配置工具界面了。回到lede目录,输入 make menuconfig 命令。

关于 OpenWrt Configuration 有大量的官方文档可以参考。这里我就以我惯常使用的配置和大伙说一下,如果你没有特别的要求,尽量别去动它。

因为我是X86类型的软路由,所以我就默认不动第一项X86。

下面我要配置IPV6,因为我的部分使用环境需要IPV6,所以必须在软路由里配置好IPV6。经过笔者大量的阅读OpenWrt文档(全英文且生涩难懂),再加上大量的配置实践,终于知晓了IPV6配置的窍门。

选上extra packages——ipv6helper

在 Network – Firewall – ip6tables 下启用 ip6tables-extra 和 ip6tables-mod-nat 项。

接下来我们就可以配置丰富的LUCI-APP功能了。

进入LuCI-Applications,参考以下图示勾选上你要的APP

就可以使用make -j1 V=s注意V要大写。祝好运,一般初次编译需要6个小时,全局带代理服务器。

以后的编辑就简单了,你可以使用git pull获得更新,然后再次编译,线程可以加大,比如make -j99 V=s,速度会加快。

手把手教编译Lean大的OpenWrt(附Lienol先生 的PassWall和Tty228先生的Serverchan)相关推荐

  1. 独家 | 手把手教你学习R语言(附资源链接)

    作者:NSS 翻译:杨金鸿 术语校对:韩海畴 全文校对:林亦霖 本文约3000字,建议阅读7分钟. 本文为带大家了解R语言以及分段式的步骤教程! 人们学习R语言时普遍存在缺乏系统学习方法的问题.学习者 ...

  2. 超级干货 :手把手教你学习R语言(附资源链接)

    作者:NSS:翻译:杨金鸿:校对:韩海畴,林亦霖: 本文约3000字,建议阅读7分钟. 本文为带大家了解R语言以及分段式的步骤教程! 人们学习R语言时普遍存在缺乏系统学习方法的问题.学习者不知道从哪开 ...

  3. 【Python基础】手把手教你数据可视化!(附实例讲解)

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者:CrescentAI,华南理工大学,Datawhale优秀学 ...

  4. 手把手教 | 深度学习库PyTorch(附代码)

    原文标题: An Introduction to PyTorch – A Simple yet Powerful Deep LearningLibrary 作者:FAIZAN SHAIKH 翻译:和中 ...

  5. 等于x分之a的平方的导数_清华学霸丨手把手教你导数大题如何骗分(文理通用),家长为孩子收...

    文科和理科导数题差异不明显(大概就是理科有三题,文科考前两题这种难度差异),因此文科的同学也可以阅读此文章,对于导数过于难以理解的知识,跳过即可. Ⅰ.在解题之前 有几件事大家需要明白: 1.导数题作 ...

  6. 手把手教你封装exe安装程序----附打包程序资源

    有时我们需要将软件的的多个文件或者是绿色软件.非安装类软件,打包成一个可执行的exe安装程序,方便进行安装.EXE封装的工具和方法有很多种,本文以Inno Setup软件为例,介绍简单的向导模式,下面 ...

  7. 【java家教系统】手把手教你制作计算机毕业设计(附源码+课件)

    很多大四同学苦于没有参考的毕设资料,或者下载的资料不全.代码有问题,数据有问题等等,造成毕设出现问题影响大学毕业.现在,免费提供项目源码和视频教程,让大家在短时间内可以完成自己的毕业设计. 对于jav ...

  8. 怎么用Matlab搭建PID控制器,手把手教你设计PID控制器 | 内附MatLab仿真

    EDA365欢迎您登录! 您需要 登录 才可以下载或查看,没有帐号?注册 x 本帖最后由 HelloEE 于 2019-11-25 17:15 编辑 8 E9 J7 _8 ?! v7 M9 f0 C5 ...

  9. 独家 | 手把手教你使用OpenCV库(附实例、Python代码解析)

    作者:Anirudh Rao 翻译:吴金笛 校对:李洁 本文约4000字,建议阅读10+分钟. 本文将通过几个简单的实例带你上手OpenCV库,新手必备!

最新文章

  1. 如何保证消息的顺序性
  2. Spring Cloud中Hystrix仪表盘与Turbine集群监控
  3. 用c语言写扫雷游戏倒计时代码,课内资源 - 基于VS2013实现的扫雷小游戏
  4. java注解判断字段是否存在_使用注解和反射判断指定的字段不能为空
  5. 不用任何比较判断找出两个数中较大的数
  6. Durid数据库连接池设置ConnectionInitSqls参数解决数据库设置编码utf8mb4
  7. 关于手机的,发送验证码,正则
  8. android中虚拟程序停止,为什么我的在虚拟机运行后出现应用程序停止运行
  9. TreeMap源码解析
  10. ESRI.ArcGIS.Controls.AxMapControl
  11. C# 创建桌面快捷方式
  12. PowerBI-时间智能函数-SAMEPERIODLASTYEAR
  13. python web 数据可视化框架_利用django框架,手把手教你搭建数据可视化系统(一)...
  14. 全世android手机,全世界最安全手机:黑莓第二款Android手机DTEK 50
  15. 解决mysqld: [ERROR] Found option without preceding group in
  16. 七牛云的免费SSL证书申请和用法
  17. mysql 提示The maximum column size is 767 bytes.
  18. 西门子S7-1200控制5轴伺服程序案例
  19. 如何制作gif图片?
  20. [BZOJ3669]-[Noi2014]魔法森林-LCT+并查集

热门文章

  1. Linux系统下Tomcat的安装与环境变量配置
  2. css中间镂空,css3如何实现遮罩层镂空效果 css3遮罩层镂空效果的多种实现方法
  3. ELK日志分析系统介绍及部署
  4. 苹果故意让老iPhone变慢以迫使消费者购买新一代的iPhone?
  5. mysql 统计每年的数据统计_MySQL 统计每年每个月的数据 -- 详细教程
  6. java空间(Java堆空间)
  7. [优雅编程]先进生产工具搜罗和简介-程序员提升之道
  8. IDEA换背景壁纸及其插件background image plus +
  9. 代码本色0章——Perlin噪声生成起伏地形
  10. 1688搜索工厂数据API接口-(item_search_factory-按关键字搜索工厂数据API接口)