前面说到过 OpenWrt 安装 OpenClash 插件并配置节点的教程,那个安装的前提是已经拥有了 OpenClash 的依赖才可以直接安装插件,安装方法说的比较笼统,下面彧繎就分享个如何在 OpenWrt 上正确编译 OpenClash 的方法,其中包括了依赖安装和内核安装的步骤。
更换发行源
安装之前我们需要先确认设备架构,本次使用的设备为 NanoPi R2S,设备架构为 aarch64,如何确认架构可使用以下命令查看,命令如下:
# 查看CPU架构 uname -m # 查看可接受架构 opkg print-architecture
其他设备架构请自行修改软件源架构地址,比如:R2S 为 CPU 是 RK3328 ARMv8 64位 4核 A53,那么 openwrt_core 就是/armvirt/64/,其他为 /aarch64_cortex-a53/,不清楚或者不了解设备架构的的可以自行谷歌查找,以下为 aarch64 架构使用的发行源地址:
src/gz openwrt_core https://downloads.openwrt.org/snapshots/targets/armvirt/64/packages/ src/gz openwrt_base https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base/ src/gz openwrt_luci https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/luci/ src/gz openwrt_packages https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/packages src/gz openwrt_routing https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/routing src/gz openwrt_telephony https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/telephony
更新发行源
此处为更新发行源地址,并移除旧版本残留的的 OpenClash 插件内容,更新提示 Signature check passed. 那么说明更新成功,如果更新错误,请检查“系统”>“软件包”>“配置” 内地址是否填写正确,并手动尝试打开地址查看。
如地址确认无误还是无法更新,可尝试在上级路由开启代理节点,确保发行源可正常更新!!!
# 更新发行源 opkg update # 移除陈旧不可用的 luci-app-openclash opkg remove luci-app-openclash
确认缺少依赖
使用命令罗列出所有已安装的依赖,对照以下所需依赖,找出未安装的所需依赖,如安装的 openclash 版本高于 V0.44.00-Beta,那么可以忽略 jsonfilter 依赖,命令如下:
opkg list-installed
所需依赖:
coreutils-nohup,bash,iptables,dnsmasq-full,curl,ca-certificates,ipset,ip-full,iptables-mod-tproxy,iptables-mod-extra,libcap,libcap-bin,ruby,ruby-yaml,kmod-tun
安装所需依赖
对照已找出的所需依赖,依次执行所需安装的依赖命令,为了让小白不出错,以下命令全部使用了强制安装,如果不想强制安装可删除 --force-overwrite 即可,依赖安装成功都会提示:Configuring [依赖名称] ,命令如下:
opkg install coreutils-nohup --force-overwrite opkg install bash --force-overwrite opkg install iptables --force-overwrite opkg install dnsmasq-full --force-overwrite opkg install curl --force-overwrite opkg install ca-certificates --force-overwrite opkg install ipset --force-overwrite opkg install ip-full --force-overwrite opkg install iptables-mod-tproxy --force-overwrite opkg install iptables-mod-extra --force-overwrite opkg install libcap --force-overwrite opkg install libcap-bin --force-overwrite opkg install ruby --force-overwrite opkg install ruby-yaml --force-overwrite opkg install kmod-tun --force-overwrite
出现报错提示:opkg_conf_load: Could not lock /var/lock/opkg.lock: Resource temporarily unavailable,那么请执行以下命令后继续操作即可,命令如下:
rm -f /var/lock/opkg.lock
安装插件
安装前请前往 OpenClash 的 Github 发布页确认版本,演示版本为:V0.44.34-beta,确认后修改以下命令内的版本号,然后依次运行以下命令即可,命令如下:
插件发布页:https://github.com/vernesong/OpenClash/releases
# 下载 luci-app-openclash wget https://github.com/vernesong/OpenClash/releases/download/v0.44.34-beta/luci-app-openclash_0.44.34-beta_all.ipk # 安装 luci-app-openclash opkg install luci-app-openclash_0.44.34-beta_all.ipk # 以下为安装 luci-app-openclash 成功提示,并非命令 Installing luci-app-openclash (0.44.34-beta) to root... Configuring luci-app-openclash. cfg1d7882
安装内核
如果你在“openclash”>“全局设置”>“版本更新”内无法更新 Dev 内核,那么可以使用以下方法进行更新,安装内核前先去内核发布页确认架构安装包,比如:R2S 使用 clash-linux-armv8.tar.gz,将安装包名替换到命令内即可,命令如下:
内核发布页:https://github.com/vernesong/OpenClash/releases/tag/Clash
# 进入内核安装目录 cd /etc/openclash/core/ # 下载内核安装包 wget https://github.com/vernesong/OpenClash/releases/download/Clash/clash-linux-armv8.tar.gz # 解压内核安装包 tar -zxvf clash-linux-armv8.tar.gz # 给予最高权限 chmod 777 clash
最后说明
完成安装后重启设备,进入 OpenClash 后在 “全局设置”>“版本更新”内将 Dev, TUN, Game 进行更新,模式设置推荐使用 Fake-IP (TUN - 混合) 模式,启用本地DNS,如何配置节点可查看《OpenWrt 安装 OpenClash 插件并配置节点》。

相关文章
发表评论
评论列表
-
后天 来自 日本,2023-03-19 14:02:55
安装好以后装不上内核,发现博客有解决方案,感谢分享!
-
muzi 来自 四川,2023-03-03 20:59:57
解决了安装后台全是代码的问题了,原因是因为 luci-compat 没有安装,运行 opkg install luci-compat 后刷新就正常了
-
青枫 来自 新疆,2022-12-07 16:11:49
插件安装成功了,就是找不到Game游戏内核
-
xnongn 来自 新疆,2022-12-07 00:56:51
终于找到一篇用心写的文章了,给博主点个赞!全网没几篇是独立写的,都是照搬过去的。
-
访客 来自 陕西,2022-09-08 23:16:10
r68s 也是填这个吗?armvirt/64/packages/
-
访客 来自 香港,2022-07-09 15:58:59
安装完成之后无法加载节点,这是为什么
-
彧繎叔叔 2022-07-09 18:45:24
访客:有日志信息不看?
-
访客 来自 广东,2022-06-26 20:14:05
安装后无法启动。提示ruby依赖无法正常工作。
-
彧繎叔叔 2022-06-27 01:45:56
访客:需要保证 ruby 依赖版本一致,如还是无法正常加载,可将 ruby 依赖版本降低到2.X
-
访客 来自 天津,2022-06-12 19:08:29
学习了,多谢博主