admin 管理员组文章数量: 887018
本地编译我使用了不同的操作系统,不同的版本,不同的网络环境,甚至不同国度的VPS - .-,还是会有这样或那样的问题,其实就是网络的问题,现在有了Github Actions,一切变得简单了,我之前也出过有关Github Actions的教程,可以一块学习下~
说明
- 基于 P3TERX 的脚本进行构建辅助
- 基于 大雕的LEDE 为源码,
作为鬼群的lean粉强烈推荐 - 本人
.config
参考 基于x86
步骤
- 搭建编译环境,生成
.config
文件(推荐,虽然Actions
可以使用SSH connection
进行云生成,但并不好用) - 搭建
Actions
环境,进行构建
搭建编译环境
参考 大雕LEDE 的步骤
注意:
- 不要用 root 用户 git 和编译!!!
- 国内用户编译前最好准备好梯子(其实有没有都行,只为了生成
.config
配置文件) - 默认登陆IP 192.168.1.1, 密码 password(在Actions中我会更改IP地址,但密码不变,在系统内可以修改)
编译命令如下:
-
首先装好
Ubuntu 64bit
,推荐Ubuntu 18 LTS x64
,我下载的是 Ubuntu官网 的 Ubuntu Server 18.04.5 LTS -
系统安装略,我使用的是
VMware vSphere ESXI 6.7 U3
-
进入Ubuntu系统,命令行输入
sudo apt-get update
,然后输入sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev pUatch python3 python2.7 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 wget curl swig rsync
-
使用
git clone https://github/coolsnowwolf/lede
命令下载好源代码,然后cd lede
进入目录 -
方式一:默认使用LEAN的packages
./scripts/feeds update -a ./scripts/feeds install -a make menuconfig
-
方式二:添加带有酸酸乳的packages
编辑目录下的feeds.conf.default
文件,取消helloworld
的注释,即删除#
... src-git helloworld https://github/fw876/helloworld ...
在执行
./scripts/feeds update -a ./scripts/feeds install -a make menuconfig
-
方式三:添加有帕斯沃、克拉斯、adguardhome 等的packages
编辑目录下的feeds.conf.default
文件,添加源src-git weifuture https://github/hongweifuture/openwrt-packages src-git pwdep https://github/hongweifuture/pwdep.git
在执行
./scripts/feeds update -a ./scripts/feeds install -a make menuconfig
-
重点设置,‘*’ 代表编入固件,‘M’ 表示编译成模块或者IPK包, ‘空’不编译
-
系统架构,选择前三项,根据实际情况进行选择,如X86、ipq40xx、bcm27xx等等
-
软件中心,选择LuCI -> Applications 添加插件应用,在线excel说明插件详情 或者 查看这里:编译OpenWRT LEDE 固件的一些说明
-
这里以开启IPV6举例,详情查看在线excel
Base system --> dnsmasq-full --> build with dhcpv6 support
Network --> Firewall --> ip6tables支持IPv6
回车选上子选项ip6tables-extra
和ip6tables-mod-nat
IPv6-NAT扩展
-
-
保存后提取config,复制到搭建Actions 环境下面的
.config
文件中# 显示隐藏文件 .config ls -la # 查看 tail -f .config # 下载 ftp、scp等等
搭建Actions 环境
P3TERX 的教程已经非常详细了
进入 P3TERX/Actions-OpenWrt 项目页面,点击页面中的 Use this template (使用这个模版)按钮。
填写仓库名称,然后点击 Create repository from template
(从模版创建储存库)按钮。
经过几秒钟的等待,页面会跳转到新建的仓库,内容和我的项目是相同的。
然后点击 Create new file
(创建新文件)按钮。
文件名填写为.config
,把生成的.config
文件的内容复制粘贴到下面的文本框中。
翻到页面最下方,点击Commit new file
(提交新文件)按钮。
在 Actions
页面选择Build OpenWrt
,然后点击Run Workflow
按钮,即可开始编译。(如果需要 SSH 连接则把SSH connection to Actions的值改为true。其它详情参见 进阶使用 相关章节,不建议通过此方式,网络原因你懂的)
等待编译完成,预计2小时,根据不同的内容实际实际不同。不出意外你就可以在Actions
页面看到已经打包好的固件目录压缩包。
进阶
配置ip,diy-part2.sh
# Modify default IP
sed -i 's/192.168.1.1/192.168.1.230/g' package/base-files/files/bin/config_generate
添加软件源,diy-part1.sh
# Add a feed source
# sed -i '$a src-git lienol https://github/Lienol/openwrt-package' feeds.conf.default
sed -i '$a src-git hwfuture https://github/hongweifuture/openwrt-packages' feeds.conf.default
sed -i '$a src-git pwdep https://github/hongweifuture/pwdep.git' feeds.conf.default
编译的一些注意
编译的一些注意
本文标签: 固件 Actions GitHub LEDE OPENWRT
版权声明:本文标题:Github Actions 云编译 OpenWRT LEDE 固件 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1729143228h1323221.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论