欢迎光临散文网 会员登陆 & 注册

2023了,你还在等别人的固件吗?现在小白都可以编译了,短时间拥有一切功能的OP固件

2023-08-28 11:56 作者:sampoonpan  | 我要投稿

本人文采不太好,这流水账纯属于记录个人编译的操作,大神请别喷


最近组了黑裙,玩着docker的时候突然想到,ubuntu不也是可以在docker上运行吗?为什么之前编译固件的教程都教我们在WSL或者虚拟机ubuntu里面进行呢?docker的运行效率比虚拟机高多了,又不用繁琐设置,那么就来试试,反正搞坏了直接删除容器就好,对宿主机没有任何影响。

搜索了一圈,居然没有太多使用docker乌班图编译的教程,既然这样,我就自己摸索一下吧,最后我把编译好的容器commit成了镜像,本人重试了五次,确认没有问题了,如果还有问题,欢迎交流。

由于这个镜像是已经进行了首次编译后的形成的,所以已经包含了环境和依赖,小伙伴不用担心编译会出错,这里编译过程用的是绕过模式,不用全局,毕竟需要的东西大部分都已经在镜像里面了。

这里是hub的连接 https://hub.docker.com/r/sampoon/ubuntu

直接复制里面的一条条命令都putty或者finalshell等终端即可,下面我演示一下。


因为包含了首次编译的环境和依赖,镜像较大,使用nohup &进行后台下载

nohup docker pull sampoon/ubuntu:openwrt_sampoon &


大概40分钟可以完成,喝杯咖啡回来看看,我们镜像已经在等待我们操作了,省去了首次编译的不确定性和大把时间

docker images

docker image ls查看镜像


后面就是复制粘贴hub上面的命令了

包括创建容器,进入ubuntu,使用普通用户更新代码,一直到make menuconfig这个熟悉到不能再熟悉的命令

docker run -dit --name ubuntu sampoon/ubuntu:openwrt_sampoon


docker exec -it ubuntu /bin/bash  


apt-get install sudo


sudo sh -c "apt update && apt upgrade -y"


su sampoon


cd /home/sampoon/lede


git pull


./scripts/feeds update -a && ./scripts/feeds install -a


rm -rf ./tmp && rm -rf .config


make menuconfig


挑选luci-app我就不多介绍了,反正需要的都有,也不用vim修改feeds,按需索取哦,否则冲突了也不保证的。


然后就是下载和编译,下载的命令可以多执行几次

make -j4 download V=s


make -j$(($(nproc) + 1)) V=s


由于是二次编译了,可以全速进行了,不用单核慢慢来,测下来是大概1小时完成,我是i3-8100四核。最后从容器退出来

exit


exit


使用docker复制出乌班图里面的文件夹即可,记得按照要求现在群晖新建一个文件夹,复制好路径更换到命令里头。


docker cp ubuntu:/home/sampoon/lede/bin/targets /path_to_your_file


黑裙文件夹路径,复制更换到最后的复制命令



至此就完成了编译了,第一次包含下载镜像大概需要2小时,后面就是1小时了,有新协议出来的,可以尝试更新下,现在基本都支持了的。


2023了,你还在等别人的固件吗?现在小白都可以编译了,短时间拥有一切功能的OP固件的评论 (共 条)

分享到微博请遵守国家法律