之前一篇是环境的搭建基本的编译,现在这一篇则是上篇的补充,深度定制。

目标设备

Nano Pi NEO2
H5 aarch64
千兆网口
USB2.0
无板载无线

添加SSR Plus+

最新版的lean源码默认是不添加ssr的,所以需要修改源

sudo nano feeds.conf.default

# 去掉helloworld前面的#号注释


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

定制

make menuconfig

Target System # 选择 CPU 平台

  • 选择 Allwinner A1x/A20/A3x/R40

Subtarget # 选择 CPU

  • 选择 Allwinner A64

Target Profile # 选择设备

  • 选择 FriendlyARM NanoPi NEO2

Target Images

  • 勾选 ext4

    ext4 和 squashfs 两项为编译生成的镜像中固件分区的文件系统格式,这两者的区别除了文件系统不一致之外,还有一个区别就是 squashfs 格式的固件支持在控制面板内恢复出厂设置,而 ext4 格式暂时不支持,此外 ext4 格式的固件在分区上的自由度上大一些 (比如可以比较方便地调整分区大小等)

  • Root filesystem partition size (in MB)

修改为 520,毕竟Pi性能强劲,所以安装多些插件,需要的空间也就大写,可以保证1G以内,好让1G的储存卡就可以写入,有把握就放小点,生成的固件也会小点的。

Administration

Administration 菜单下的项目都是一些管理工具

Extra packages

一些方便的小工具

Kernel modules

Kernel modules 菜单中为有关内核的一些参数

Filesystems # 文件系统支持

  • 添加 ntfs # windows 文件系统支持

其他自己选配

USB Support # USB驱动

  • 添加 USB 2 USB3 ohci uhci 即可

其他默认是不需要多选的,除非你有特殊用途,我用来挂在USB转接硬盘是足以

Wireless Drivers #无线网卡

由于,NEO2没有板载无线网卡,所以我这里就不需要配置了,如果需要自己添加即可。

LuCI # 配置控制面板

Collections # 默认勾选了luci

如果是官方版本,可以没有默认勾选,L大的默认勾选了

Applications # 插件

下面只贴出我勾选的插件,有些默认勾选的用不到就删除了

luci-app-acme  # Let's Encrypt 证书自动更新
luci-app-accesscontrol # 访问时间控制
luci-app-arpbind # IP/MAC绑定
luci-app-ddns #动态域名 DNS
luci-app-diskman 管理RAID4,5,6
luci-app-dockerman #Docker容器 (可选)
luci-app-flowoffload # #Turbo ACC网络加速
luci-app-airplay2 # 苹果airplay2协议支持
luci-app-frpc # 内网穿透
luci-app-kodexplorer # 可道云
luci-app-nlbwmon #网络带宽监视器
luci-app-ramfree
luci-app-vlmcsd # KMS激活
luci-app-upnp
luci-app-vsftpd
luci-app-samba4
luci-app-usb-printer # USB打印机
luci-app-verysync # 威力同步
luci-app-unblockmusic # 网易云音乐解锁,靠运气
luci-app-zerotier # 内网穿透
luci-app-syncthing # 文件同步
luci-app-ssr-plus # SSR

Themes

不好看,我怎么好意思打开web呢,全选

Network

Network 菜单为 OpenWrt 编译过程中和网络有关的选项。

  • 不做配置

Download Manager

Network - Download Manager 菜单为 Aria2 的 Web 控制面板,推荐选择 webui-aria2 项作为 Aria2 的 Web 控制面板。

File Transfer

Network - File Transfer 为网络文件传输工具菜单。在这里我们可以添加一些常用的文件传输工具,比如 wget、curl、aria2、rsync 等,我们可以根据需求按需添加。在这里我们还可以设置 aria2 的支持参数 (Network - File Transfer - Aria2 Configuration)

  • 不做配置

SSH

Network - SSH 菜单为与 SSH 有关的选项,默认情况下 OpenWrt 已为我们添加了 dropbear SSH 服务器,所以在这里我们无需勾选 openssh-server,但默认情况下 SFTP 服务是没有启用的,如果有 SFTP 需求的话我们可以在这里添加 openssh-sftp-client 和 openssh-sftp-server 来启用 SFTP 客户端和服务器。

  • 添加 openssh-sftp-client openssh-sftp-server

Utilities

Utilities 菜单包含一些额外的实用工具,下文中小苏仅介绍一些常用工具,其他工具可按需添加

Compression

Utilities - Compression 为压缩工具支持菜单

  • 不做配置

Disc

Utilities - Disc 菜单为一些与文件系统相关的工具

  • 勾选 fdisk

Editors

Utilities - Editors 为编辑器支持菜单

  • 勾选 nano

Filesystem

Utilities - Filesystem 菜单为与文件系统相关的工具

Shells

Utilities - Shells 菜单中可以添加用户交互 Shell,默认 Shell 为 bash,如果大家有需求的话可以添加 zsh

  • 选择 bash

Terminal

Utilities - Terminal 菜单中可以添加和终端有关的工具

  • 勾选 screen

ip6tables 额外选项

在 Network - Firewall - ip6tables 下启用 ip6tables-extra 和 ip6tables-mod-nat 项


关于Kcptun 支持aarch64?

Kcptun 是支持aarch64的,所以可以在ssr plus中勾选


大体上配置已经完了,但是由于是国内环境,所以需要科学上网,我选择终端代理。

Linux终端代理解决无法下载源码的问题

export ALL_PROXY=socks5://192.168.1.2:1080