利用谷歌云编译Nanopi R2S固件

点击数:4310

本文借鉴Tony Stark的youtube视频教程,地址:https://www.youtube.com/watch?v=Ap_DKrMcJlg&t=744s

注意:本文不是教程,只是本人编译过程的记录,仅供参考。由于是刚开始学习编译,肯定有错误或者不足的地方,但按照此文的方法编译可以帮助你理解编译过程。目前我已完成github的actions自动云编译,可以参考我最新的文章:用Github Actions云编译Nanopi R2S固件

步骤如下:

1,谷歌云新建一个实例,8核,8G内存,地区选香港,asia-east2-c,系统选ubuntu 18.04 硬盘SSD 80G,网络需要设置允许http和https,允许所有端口入站。(本人移动线路putty连接非常慢,选其他区域应该可以)。

2,利用puttygen生成1个私钥,修改用户名,保存私钥到本地。然后到谷歌云平台修改实例,将puttygen里的公钥字符串复制添加到SSH 密钥。

《利用谷歌云编译Nanopi R2S固件》

3,利用谷歌云网页SSH进入后台,配置新加用户权限:

输入命令:

sudo -i

visudo

然后在root ALL=(ALL:ALL) ALL下添加一条自己的建立的用户名的权限,复制root的所有权限。

《利用谷歌云编译Nanopi R2S固件》

编辑好后Ctrl+o保存,回车,Ctrl+x退出。

4,安装python:

apt-get install python

5,在putty中登录VPS(需要添加puttygen生成的私钥)。

以下参考:http://wiki.friendlyarm.com/wiki/index.php/How_to_Build_FriendlyWrt/zh

首先需要安装 repo 工具:

输入命令screen,防止putty断开后无法执行完整命令。然后

git clone https://github.com/friendlyarm/repo

sudo cp repo/repo /usr/bin/

从github下载完整的RK3328平台源代码

mkdir friendlywrt-rk3328

cd friendlywrt-rk3328

然后
repo init -u https://github.com/friendlyarm/friendlywrt_manifests -b master -m rk3328.xml --repo-url=https://github.com/friendlyarm/repo --no-clone-bundle

repo sync -c --no-clone-bundle

以下参考:https://github.com/coolsnowwolf/lede
下载lean的源码

git clone https://github.com/coolsnowwolf/lede

6,登录WINSCP

进入 /friendlywrt-rk3328/friendlywrt/package
新建目录lean
远程拷贝/lede/package/lean 文件夹到 /friendlywrt-rk3328/friendlywrt/package/lean

以下这段为2月8日更新:

进入 /friendlywrt-rk3328/friendlywrt/ 文件夹打开feeds.conf.default文件

将第一行src-git packages 后的链接https://git.openwrt.org/feed/packages.git^54266c99b2a2e37a4c01b02ae74346874db7003c

替换为https://github.com/coolsnowwolf/packages

将第二行src-git luci后的链接https://github.com/friendlyarm/friendlywrt_project_luci^bb021b4b9097ad332ab40bce2a1c239d9fcf225b

替换为https://github.com/coolsnowwolf/luci

《利用谷歌云编译Nanopi R2S固件》

7,回到putty

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

进入/friendlywrt-rk3328/friendlywrt/
然后执行

./scripts/feeds update -a

./scripts/feeds install -a

make menuconfig

打开后回车进入配置第一个选项,向下翻找到rockchip rk3328这个选项,输入y,然后退出

《利用谷歌云编译Nanopi R2S固件》
配置第三个选项Target Images,回车进入后选择squashfs,可以取消选中tar.gz选项,然后退出。

《利用谷歌云编译Nanopi R2S固件》
luci配置部分参考了esir的文档,这里选择自己需要编译的模块和插件,参考:https://drive.google.com/drive/folders/1dqNUrMf9n7i3y1aSh68U5Yf44WQ3KCuh
配置好以后选择保存,不用修改文件名直接回车,然后退出menuconfig

8,然后进入/friendlywrt-rk3328/目录,搭建编译环境

wget -O - https://raw.githubusercontent.com/friendlyarm/build-env-on-ubuntu-bionic/master/install.sh | bash

9,开始编译

./build.sh nanopi_r2s.mk

开始时间12:40

结束时间13:25 用时45分

编译失败,提示如下

《利用谷歌云编译Nanopi R2S固件》

错误原因:dnsmasq和dnsmasq-full同时选中有冲突,需要在menu里取消掉dnsmasq

10,再次编译

先清理掉上次编译的文件

./build.sh cleanall

删除tmp文件夹

rm -rf tmp

进入/friendlywrt-rk3328/friendlywrt/,重新make menu

make menuconfig

在这里取消dnsmasq

《利用谷歌云编译Nanopi R2S固件》

保存后退出,也可以将自己的配置文件单独保存,下次如果重头编译可以直接使用这个配置文件,方法是

./scripts/diffconfig.sh > ../configs/my_config

进入/friendlywrt-rk3328文件夹,重新执行第9步

cd ..

./build.sh nanopi_r2s.mk

开始时间15:30
16:10编译完成 用时40分钟

《利用谷歌云编译Nanopi R2S固件》

11,用winscp进入/home/用户名/friendlywrt-rk3328/out查看是否生成映像文件,如果成功了可以直接拖到本地下载下来

《利用谷歌云编译Nanopi R2S固件》

我这里生成了一个954M的img文件。

这里由于img文件体积巨大,需要将其压缩为zip文件,在putty下执行如下命令:

zip FriendlyWrt_20200206_NanoPi-R2S_arm64_sd.img.zip FriendlyWrt_20200206_NanoPi-R2S_arm64_sd.img

执行后查看文件大小变为67M,然后再下载到本地。

《利用谷歌云编译Nanopi R2S固件》

12,利用balenaetcher工具将镜像文件写入到SD卡中。

《利用谷歌云编译Nanopi R2S固件》

选好下载的zip文件,点击Flash写入,然后是漫长的等待。

《利用谷歌云编译Nanopi R2S固件》

18:14写入完成!

最后就是等待R2S发货后插入sd卡进行测试验证了。

13,2月7日更新:经过油管UP主悟空的验证,固件可用

《利用谷歌云编译Nanopi R2S固件》

存在的问题:netdata实时监控无法加载,可能是编译的版本问题,默认编译的是1.18,可在web管理页面的软件包里搜索并手动安装1.19 版本就可以使用了。

这是我第一次成功编译出来的固件,还被悟空在他的电报频道悟空干货营置顶了,很有成就感。非常感谢悟空的youtube频道,我才知道了R2S这样一款符合我的需求的设备,也感谢悟空电报群里的@haha er的帮助,没有他我也编译不出来这个固件。最后附上我的这款固件的谷歌网盘链接(2月8日的固件为我更改feedsfeeds.conf.default文件后重新编译的),需要的可以直接下来使用。

点赞
  1. 悟空说道:

    已经在R2S 验证通过,感谢你的分享!

    1. 北风说道:

      感谢悟空,在你的youtube频道学到很多东西

  2. Blake说道:

    学习了。关注楼主blog

    1. 北风说道:

      谢谢,我也在学习摸索

      1. 匿名说道:

        能麻烦博主做下 openssl speed 的速度测试么。硬件加速的参数好像时-evp

        1. vipassana说道:

          我手上没有R2S,订了还没发货。你可以看下悟空的测试https://t.me/daily5kong/1134,目前速度不理想,好像厂家代码里还没打开硬件AES。

      2. 匿名说道:

        openssl speed -elapsed -evp aes-256-gcm

  3. nicksun说道:

    再次编译成功,感谢大佬,感谢悟空

    1. 北风说道:

      哈哈,不客气,能帮到你就好。我的github actions也弄好了。

  4. Tim Tam说道:

    你好,config 文件能发出来共享一下吗?我的 vps 硬盘太小,准备编译环境时老是硬盘空间不足 :cry:

    1. Tim Tam说道:

      啊,看到action了,多谢楼主 :eek:

  5. ZiQiBB说道:

    感谢悟空老师,真的,我刚好是一个小白准备买个软路由,在某宝最少600+以上的软路由前提下,好在看到了悟空老师的视频,这款R2S性价比很高,对于我这种科学看看视频电影的足够了!!期待之后更稳定的固件更新,再次感谢悟空老师!

  6. DiDA说道:

    看到谷歌网盘上有一个2月10日的固件,体积大了不少,请问有什么改进?为什么会大这么多?你建议用哪个版本的固件?

    1. vipassana说道:

      用新的吧,第一编译没改feeds文件,我手上没设备也没测试,据说有组件无法正常显示。

      1. DiDA说道:

        多谢你辛苦编译,回头我试试看

  7. JunFly说道:

    GitHub fork了一份,在commit时候没有触发CI,不知道是不是event trigger没写对,修改了一下,可以了

  8. koko说道:

    :lol: :lol: 老哥 我下载的2月13的固件,打开进去root要密码,试了没密码登不上啊

    1. vipassana说道:

      密码password。你可以试试2月20日的固件。

  9. UKlin说道:

    能不能帮忙编译一下r1的新固件

    1. vipassana说道:

      github上一大堆啊,https://github.com/klever1988/nanopi-openwrt/actions

  10. pc仔仔说道:

    谢谢,大侠。请问有带多线多拔吗、

    1. vipassana说道:

      我网盘里23号dayong的那个固件有,推荐这个固件,目前最好用的。

  11. adam说道:

    这个编译出来的ip和密码是多少啊?

  12. Big move for me!! https://genqpviag.com sildenafil citrate generic viagra

  13. Less commonly, HSV can affect the inside of the eye and
    retina inside lining of the eye , which can cause a decrease in vision. https://siviagmen.com viagra online without pre

  14. llviabest.com说道:

    Her fingernails scraped across Amthros’s she gasped she and Carakjumped forward
    spells and half was so worn that she didn’t care.She counted five elves in all.
    Decisions had caught man and he’d bemore “Did spend with family, friends,children or hobbies which do
    not include him/her. canadian viagra online pharmacy (llviabest.com) best online viagra reviews

  15. FrbhNeemy说道:

    c20 viagra https://paradiseviagira.com/ online pharmacy generic viagra

  16. KmrfType说道:

    viagra erstattung krankenkasse https://purevigra.com/ how to stop viagra headaches

  17. Fevbbunty说道:

    viagra sale canada free trial viagra canada usa viagra gold 800

  18. Fbsgbunty说道:

    viagra cialis levitra yahoo highest quality generic viagra comentarios sobre viagra femenino natural

  19. JivhGauro说道:

    efeito colateral viagra buy viagra in nairobi viagra i beta blokatori

  20. Fhsbbunty说道:

    sirve tomar medio viagra https://buybuyviamen.com/ is silagra the same as viagra

  21. DevkNeemy说道:

    ordering viagra through paypal can veterans get viagra viagra/cialis packs

  22. FdbvNeemy说道:

    viagra for sale fast shipping buy viagra online paypal rx pharmacy generic viagra

  23. Walton Grueser说道:

    i bought this exact watch in 1998.

  24. Buy viagra soft tabs https://miraclevigra.com
    viagra canada online pharmacy

  25. Online viagra australia https://mygoviagar.com buy viagra online uk
    paypal

  26. Sally Vasil说道:

    according to invicta

  27. Angelika Debow说道:

    this was my first rolex

  28. KbrgType说道:

    viagra 800mg pinkviagraforwomen viagra tablet price in singapore

  29. Fmsgbunty说道:

    priligy und viagra combination pfizer for instance has a patent on viagra viagra under insurance

  30. Fnrhbunty说道:

    viagra online highpoint viagra 50mg paypal viagra

  31. JsweGauro说道:

    sildenafil tablets india viagra man viagra without prescription usa

  32. Fbsbbunty说道:

    viagra venta capital federal cuando hay que tomar el viagra can you eat grapefruit while taking viagra

  33. FgsNeemy说道:

    economic research papers custom term paper writing service writing a perfect essay

  34. Fqfbunty说道:

    homework help history components of essay writing essentials of writing biomedical research papers

  35. KwgdType说道:

    guidelines for writing an essay writing high school essays writing a hypothesis for a research paper

发表评论

电子邮件地址不会被公开。 必填项已用*标注