我家云粒子云编译并打包Openwrt固件
一个简单的教程,详细教程请参考其他人的分享。
主要是云编译,然后将编译好的固件下载到本地进行打包,然后刷入我家云。
主要用到的网站有:
1 | # 打包的代码 |
下载这三个文件。
固件准备
编译
具体如何编译不是本文的重点,后续可能出一篇教程进行讲解。注意编译时root分区填大一点,160MB不够,我设置的1024MB。路径为Target Images->Root filesystem partition size
在GitHub Action中编译完成后,将镜像文件下载下来。注意GitHub的文件大小和本地显示大小要大,是正常的,不用在意。
压缩包文件提取
打开压缩包,我们只需要里面的一个文件:openwrt-armvirt-64-rootfs-ext4.img.gz。解压出来备用。
镜像打包准备
文件夹创建
打包需要linux服务器,我使用的是本地虚拟机,其他任何linux服务器都可以。
首先需要创建几个文件夹,路径随意,我是在登录后的默认home目录。
1 | mkdir -p pack/opt/kernel |
然后进入目录,并克隆脚本文件,完成后显示如图。
1 | cd pack |
纯内核上传
使用文件上传工具,winscp或者FileZilla均可,进入默认目录下的pack/opt/kernel文件夹,将百度云上下载的三个文件上传。
镜像文件上传
进入pack/openwrt_packit目录,将解压出来的镜像上传。
脚本内容修改
仍然在pack/openwrt_packit目录,我们需要修改一个文件,主要使用的文件都用红框框选了出来。
我们需要修改make.env文件,使用VIM或者nano修改。
黄色框内容可修改可不修改。
红色框1号需要修改为纯内核文件版本号同名,最好是直接复制,不容易出错;
红色框2号修改为远程站点的路径。
打包
上述步骤完成后,就可以进行打包操作了,仍然在pack/openwrt_packit目录下,执行:
1 | # 首先转为root执行 |
输出如下:
1 | ubuntu@ubuntu:~/pack/openwrt_packit$ sudo su |
出现done说明成功了。此时可以下载镜像了。
下载镜像
进入pack/openwrt_packit/tmp目录,可以看到打包好的镜像已经存在。
此时我们可以下载下来,该镜像大小较大,如果服务器下载速度较慢,可以压缩后再下载。
1 | zip openwrt.zip openwrt_rk3328_l1pro_R21.4.27_k5.10.32-flippy-58+.img |
压缩后文件只有原来的五分之一大小,方便传输。
镜像更新或安装
更新可以使用flippy大的更新脚本(顶部百度云网盘内下载一个L1Pro镜像文件可以得到),但是初次使用自己的镜像建议全新刷入,我家云/粒子云可以参考这篇文章。
后记
本文理论上适用于所有flippy大大提供了脚本的设备,本文只是用我家云作为示例。