找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 36935|回复: 424

[openwrt(x86)] 自用自编译纯净openwrt分享,超大存储,kernel 6.1.15,顺便写一下openwrt编译方法

 火... [复制链接]
发表于 2022-10-30 00:13 | 显示全部楼层 |阅读模式
本帖最后由 sss132919 于 2023-6-10 14:57 编辑

入了一个n5105的小主机,装一个op+win/debian/centos做家庭简易nas,但是用过的op都不太稳定,只有5.19及以上内核的会比较稳定,现在最新内核更新到6.x.x了,遂有了自己尝试编译自己用的想法,开始折腾,下面是折腾的经过记录
源码仓库均来源于github,https://github.com/coolsnowwolf/lede.git, https://github.com/Lienol/openwrt-packages.git, https://github.com/kenzok8/small-package.git, 感谢大佬们栽种的大树

1)要拥有一个linux的编译环境,[第一优先建议的就是墙外的大存储云主机,推荐深圳旁边和新加坡的,但是这比较贵,所以只是建议],我的选择推荐是物理机安装linux,如果不方便,可以使用vm或者vbox安装linux,但是cpu和内存设置一定要设置对,不然可能会影响编译对错,(wsl会导致C盘被占用,系统会很卡甚至崩溃而且我是amd 5800,hype-v果然性能还是不行) ,并且通过命令把依赖都装好,常见linux发行版安装依赖命令可以在openwrt的官方支持文档里找到: https://openwrt.org/docs/guide-d ... #build_system_setup,如果是lean的lede源码,他的github源码页面有写需要的依赖。

2)创建一个非root用户,我的是debian系统,自己命名的debian用户,然后选择自己想要编译的源码地址。有点linux基础的建议用debian


3)在home文件夹下使用命令行输入命令 git clone 源码地址(如果是github的源码地址记得把结尾的.git去掉,下面编辑feed.conf.default同理,其他的git地址还清自行测试是否应该去掉),将源码下载下来,最好是有好的上网环境,不然下载可能会很慢,还有一个方法就是手动下载,然后解压到/home文件夹里


4)现在/home文件夹里有了一个openwrt/lede的文件夹,cd进去,前期准备完毕


5)现在开始调整openwrt,进入target/linux/x86文件夹,里面有一个makefile,nano编辑这个文件,很显眼就能看到内核版本,将内核版本号都改为自己想要的内核版本(这个还要取决于固件集成了什么版本的配置文件,就是文件里的那些版带版本号的config),我选择了6.1,也就是最新的,然后ctrl+o保存,ctrl+x退出,然后返回openwrt文件夹。(如果确认了makefile里配置好了有LINUX_KERNLE_TESTING这个字段,也可以在.config文件里加入LINUX_KERNEL_TESTING=y这句话,不过这个不够强制性罢了。由于源码作者有可能会改动默认的makefile的版本,所以建议以前面一种方法设置比较保险

6)然后是添加自己想要的第三方插件库,文件夹里有一个feeds.conf.default文件,nano编辑它,将自己想要的第三方库插件添加进去,格式参考已存在的,"src-git [插件库名字] 源码地址",保存退出

7) 接下来就是编译过程了,依次执行以下三条命令
        ./scripts/feeds clean   
        ./scripts/feeds update -a   
        ./scripts/feeds install -a -f

8)修改./feeds/luci/collections/luci下的makefile,把LUCI_DEPENDS下的luci-theme-bootstrap修改成你想要的就行,(或者把"+luci-theme-bootstrap"这段代码删除也行,但是删除的话一定要记得在图形界面选择好主题,不然可能会编译报错),保存退出。如果想要调整默认的网络配置,那是在package/base-files/files/bin/config_generate里的文件,找到C类局域网地址,照葫芦画瓢修改一下

9)完成以后执行make menuconfig命令,进入图形界面开始选择插件,调整一下target image里的固件空间大小,就是有数字的两个选项,16 400 什么的,然后按照你所需要的大小进行调整,单位是MB,里面还可以调整你需要的文件格式和引导方式,像我这种新手,最好只选择img一种,不要选择vmdk之类的其他镜像,记得调整,特别提醒一点,先去extra里添加ipv6helper,常用的插件和自己添加的插件都能在luci->application下找到,主题也确保选择好,保存退出。注意:编译讲究一个由浅入深,先保持一个比较默认精简的配置,保证能正常编译通过之后,然后再慢慢的加配置,不要一股脑选很多东西,不然到时候都不知道什么导致的错误,特别是在要改动非luci配置的情况下,虽然一点点加上去很麻烦,但是这是保证通过率的最好办法

10) 然后开始编译,依次执行以下命令
        make download V=s -j8   //看你有多少线程,修改 j 后面的数字
        make V=s -j1    //大佬们都推荐单线程编译,做好心理准备,单线程会非常慢,几个小时打底。我这边直接-j$(nproc)了,出错了再说,不然单线程实在是太慢了,如果编译报错,用-j1再跑一遍看看哪里出了问题,如果编译错误可以查询修改.config文件,文件本身是看不到的,但是命令行输入nano .config是有反应的,或者进menuconfig去修改吧,(不过menuconfig不一定好修改,因为没有查找选项)

11)编译完成后在/bin/target/x86之类的文件里能找到编译好的系统镜像了。

12) 二次编译时,如果需要更新内核版本和插件版本的话,先执行make dirclean && ./scripts/feeds clean ,再执行编译流程

记录:      1..#PVE更新内核和微码以后问题无复现,建议n5105/n6005的用户更新最新的修复bios,并使用最新内核, 因为我要用ipv6公网,所以防火墙设置是接受,而路由器打开upnp功能,使用bt软件可能会导致活动连接数暴增,导致没网和崩溃,更换bt软件qbt为bitcomet试试(无复现,感觉是wsl的问题
               2.. #openwrt编译使用默认主题后问题无复现 从备份文件中恢复配置可能会遇到无法进入luci管理页面,显示一堆代码,可以尝试ssh登陆 rm -rf /tmp/luci-indexcache  ,原因不明,请大佬赐教,或者下次编译使用其他主题试试
               3. #PVE更新内核和微码以后问题无复现,建议n5105/n6005的用户更新最新的修复bios,并使用最新内核 在不明原因情况下会出现路由器wan口连了网,但是不论是终端还是openwrt本身都无法联网的情况,具体原因未知,初步怀疑是dnsmasq的dhcp冲突崩溃导致的,手动修改12h为2m试试,当然有可能是我的电脑的问题,因为两次问题都出现在电脑开机后,马上出现手机路由器同时崩溃无法联网的情况。下次编译将更换为默认2m,修改方式在package/network/service/dnsmasq/files下的dhcp.conf文件。经测试,应该与dhcp没关系,应该是和网卡直通有关系,全部换回虚拟网卡试试
               4. #PVE更新内核和微码以后问题无复现,建议n5105/n6005的用户更新最新的修复bios,并使用最新内核 大概以上这些问题都是虚拟机导致的问题,n5105小主机目前还是物理安装openwrt吧,下载机再单独买一个盒子。等到pve8和esxi9吧,应该会好很多了。也有可能是虚拟机和硬盘兼容性不足的原因,我用的sata,准备更换nvme的试试。
               5. 源码配置默认选择添加了vmnet3/intel e1000的驱动,如果是使用虚拟网卡的,可以选择vmnet3/e1000的虚拟网卡,个人建议优先使用e1000,可能稳定性会更好,但是性能会损耗挺多的
               6. 路由器lan口下一定要接交换机或者带ap模式的路由器,不然n5105内网设备软交换只能跑500m左右,所有内网设备要接在交换机下
               7. 安装好配置好pve的第一件事,就是在pve的命令行里apt update  && apt install pve-kernel-6.1,这几乎可以解决n5105+i225/226存在的绝大部分问题, 虚拟机机型记得选最新的,我关闭了n5105小主机bios里的c-state
               8.一个有趣的事实,AMD 5800h的电脑直装openwrt的coremark跑分大概在38万到42万,仅供其他性能相近的x86机器做参考
               9.如果pve虚拟的windows10/windows11/windows server会自动重启的话,可以把pve的虚拟化嵌套关闭试试。如果ubuntu会卡死,建议更换debian或者centos/fedora之类的。
               10.使用本固件的时候,为了防止会出现电信重播以后断网,还请手动修改lcp故障阈值为5,我并不知道怎么修改这个东西,而且github已经有人反馈,但是源码并没有修改,所以设置wan口pppoe的时候顺便改一下吧。

想到哪做到哪写到哪,随时更新。本教程和系统非常不严谨,只是本人自己琢磨编译的经历和结果,如果有问题,欢迎讨论,不保证有用,也不保证无bug

本人编译好的系统地址(不定期更新)超大内存版,6.x.x内核,做好心理准备,真的很大,不行的可以自己编译改大小,上传了配置文件,大家可以看看是否是自己需要的。大家量力而行自行取用,默认管理地址是10.10.100.100,(没想到会有人问登陆的账户密码。。。实在是。。。果然网络林子这么大,什么鸟都会有啊。。。。那这边写一下,默认账户是root,默认密码是password


新装本固件建议格盘然后重新写盘安装,如果是旧版本升级可以选择保留配置升级里选择gz压缩包直接升级
20221116更新,一切为了稳定,基本回归默认,内核更新到6.0.8,dhcp默认时间修改为30m,自用简化固件,如果有需要请自取
20221119更新,内核更新到6.0.9,增加了webdav功能与插件
20221126更新,增加了一些插件,socat、store、docker之类的,增加rootfs格式的固件
20221129更新,增加uu游戏加速器插件,目前为止,好像插件和功能已经很全了
20221210更新,内核更新至6.0.12
20221216更新,内核更新至6.1,除了默认的无线设备驱动外,在firemare里手动添加了ax200/ax201/ax210三个硬件,虽然我大概率是用不着的,所以也不保证能有用,如果要反馈问题,建议去github或者英特尔官方反馈。。
20221222更新,内核更新至6.1.1, 插件常规更新
20230102更新,内核更新至6.1.2, 插件常规更新
20230106更新,   内核更新至6.1.3, 增加qbtorrent、内网网页测速服务插件、PLEX插件、xunlei插件,更新新版UU加速器插件,其他插件常规随仓库更新
20230110更新,内核更新至6.1.4, 增加mosdns、hw插件,其他插件随插件库更新到最新版本
20230114更新,内核更新至6.1.5, 增加istorex界面插件、HA插件、ubuntu插件、邮件设置插件、磁盘阵列管理插件、S.M.A.R.T插件,其余插件随仓库常规更新
20230114更新,内核更新至6.1.6, 修复了luci-app-adguardhome插件显示错误、找不到核心的bug(我也没想到我会去修这个bug,但是因为用的是别人的仓库,如果仓库不修复,那我每次编译都得手动修复,这实在是非常麻烦,而我已经反馈给github仓库了,不过目前是没有反应。所以这个版本以后,除非有大更新或者遇到bug,比如内核更新到6.2,不然不会再追新内核了,有需求的建议自己折腾,基本操作都已经写在帖子里了。反正现在的版本已经算是很稳定了,对我来说够用了),其他插件随仓库更新到最新版。
20230128更新,内核更新至6.1.8, 遇到了一个bug,电信定期释放ip重拨后,会无法上网,需要手动重新连接才能上网,近期github有人反馈这个问题,所以尝试编译新源码看看是否解决,上次反馈的github仓库adguardhome问题已经得到回应,所以也测试一下问题是否解决。如果都没有解决,后期可能会换官方openwrt.org的源码试一下
20230209更新,内核更新至6.1.10, 插件随仓库更新
20230216更新,内核更新至6.1.11,插件随仓库更新。linux kernel 6.1.x 已正式加入long term 维护,可喜可贺。希望官方openwrt.org和各位大神能够跟进,这样就不用我这种小菜鸟费时费力搞编译了。
20230226更新,内核更新至6.1.13,插件随仓库更新,增加了几个主题,先看看哪个好用,再保留吧,目前是发现这个top的好看点,各个条目都有优化。adguardhome和luci-app-adguardhome这俩插件的问题依然很多,如果你想要正常使用下面的固件的adguardhome功能,你需要 第一把执行文件路径改为/usr/bin/AdGuardHome, 工作目录路径改为/usr/bin/AdGuardHomeData, 第二把网页管理端口修改为非3000端口,比如3001, 这个插件目前就修改后将就用吧,也不知道仓库啥时候会修复,毕竟是开源的东西,不要这样贪心最好,重新安装openwrt配置贼麻烦。鉴于6.1已加入long term维护,后续就不太更新新功能,不好用的主题你可以试试手动卸载掉。openwrt.org也将在2023年6月左右将6.1正式加入官方支持。

20230302更新,内核更新至6.1.14,因为会自动软重启,随仓库更新一下,更新到没问题为止
20230309更新,内核更新至6.1.15,听说英特尔优化了一下225/226的驱动,还有就是我算是找到了一个能用的luci-app-adguardhome了,虽然是英文的,但是基本没什么毛病,综上所以赶紧编译一版出来用


20230312更新,小小修改了一下adguardhome和luci-app-adguardhome存在的问题,前所未有的稳定版终于算是出来了,可喜可贺。应该可以让我用很久了。本固件非常稳定,并且由于登陆论坛老是要验证,此贴暂时停止更新


https://www.123pan.com/s/BRduVv-PLzwv.html提取码:9qXa
















































本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

大佬问一下这个系统我用lxc装好了,装上udpxy后web界面找不到,这个要怎么解决?  发表于 2023-2-10 19:36

评分

参与人数 2恩山币 +2 收起 理由
Yangself + 1 这个年轻人不讲武德,耗子尾汁!
uboyar + 1 β

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
发表于 2022-10-30 00:52 | 显示全部楼层
谢谢分享,感觉还不错吧。主要记录下编译失败的问题与解决办法,这样大家一起学习。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 01:02 | 显示全部楼层
谢谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 01:39 | 显示全部楼层
看看,怎么样啦,哈哈
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 02:55 来自手机 | 显示全部楼层
最新内核更新到6.0.5了  看看看
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 07:28 | 显示全部楼层
能不能支持无线网卡ax210?

点评

不好说,你可以试试,理论上来说这种常见的网卡对新内核应该是免驱就能用的。如果用不了你可以自行编译,在硬件里添加自己想要的硬件选项  详情 回复 发表于 2022-10-30 08:54
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 07:35 | 显示全部楼层

谢谢分享,感觉还不错吧
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 07:53 | 显示全部楼层

谢谢分享!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 07:59 来自手机 | 显示全部楼层
谢谢分享,尝尝鲜
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 08:29 | 显示全部楼层
谢谢!谢谢!谢谢!谢谢!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 08:41 | 显示全部楼层
学习一下。。。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-30 08:54 来自手机 | 显示全部楼层
ileduo 发表于 2022-10-30 07:28
能不能支持无线网卡ax210?

不好说,你可以试试,理论上来说这种常见的网卡对新内核应该是免驱就能用的。如果用不了你可以自行编译,在硬件里添加自己想要的硬件选项
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 08:55 | 显示全部楼层
谢谢分享!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 09:31 | 显示全部楼层
学习学习
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-30 09:36 | 显示全部楼层
谢谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-19 16:39

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表