安卓用Termux装CentOS ⑨ Stream 并部署Yunzai-Bot 3.0 の流程分享
前言:
之前在Ubuntu22.04和20.04反复尝试, chromium-browser即使装上了也是提示启动失败, 而在18.04下, node.js用18版和16版貌似都不行, 最后打算妥协用Ubuntu18.04+停止服务了的node.js17, 原本是这样打算的, 但有个熟人他比较希望莪用CentOS, 然后莪又找到个不错的Linux安装脚本了, 分享一下安装流程
准备工作:
下载并安装Termux
https://github.com/termux/termux-app/releases
(现在的爪机一般下载arm64版即可, 其它设备自己判断, universal是通用的但安装包会大很多)
装完后启动它
获取唤醒锁(防止Termux后台运行和锁屏后休眠)
点击通知栏Termux那里的Acquire wakelock, 也可以在Termux的命令行输入termux-wake-lock, 弹出询问始终在后台运行点允许, 然后通知栏显示wake lock held
然后在Termux的命令行输入下面的命令
Termux换源(默认源能稳定下载的话可不换)
termux-change-repo
进图形界面后先直接按一次回车, 第2个界面按方向↓移到Mirrors by BFSU或其它想用的源, 按空格选中后回车
更新源(换源后貌似会自动更新源)
apt update
更新Termux中的软件
apt upgrade -y
(解包过程大概有3~6次询问是否换回默认源, 直接回车默认否)
安装wget和proot
apt install wget proot -y
获取安装Linux的脚本
wget https://github.com/xiliuya/termux-linux/releases/download/0.1/install_linux.sh
或者 wget https://ghproxy.com/https://github.com/xiliuya/termux-linux/releases/download/0.1/install_linux.sh
执行安装脚本
chmod +x install_linux.sh && ./install_linux.sh
安装的Linux发行版输入 centos (其它系统就不一定能用后面的流程了)
系统版本莪是输入 9 (其它版本自己尝试, 是CentOS版本, 与安卓版本无关)
(另外, CentOS ⑨ Stream 貌似只有arm64和amd64的镜像, 32位的设备就用Ubuntu 18.04 吧)
装完后根据需求删掉安装脚本
rm install_linux.sh
启动CentOS
./start-centos.sh
启动后会显示[root@localhost ~]#
保存Termux命令行的输入记录(可跳过)
启动CentOS后先输入exit回车退出CentOS, 再次输入exit回车退出Termux, 后续打开Termux就可以按方向↑和↓直接找到启动CentOS命令, 完成后再次启动CentOS吧
添加node.js源和EPEL源(扩充软件库)
curl -sL https://rpm.nodesource.com/setup_18.x | bash -
yum install epel-release -y
EPEL换源(默认源能稳定下载的话可不换)
sed -e 's!^metalink=!#metalink=!g' \
-e 's!^#baseurl=!baseurl=!g' \
-e 's#download.example\/pub#mirrors.bfsu.edu.cn#g' \
-i /etc/yum.repos.d/epel*.repo
更新软件包缓存
yum makecache
安装node.js、redis、Chromium、git、nano
yum install nodejs redis chromium git nano -y
安装字体(解决帮助菜单乱码)
yum groupinstall fonts -y
启用redis服务
redis-server --daemonize yes
克隆Yunzai 3.0
git clone --depth=1 -b main https://gitee.com/Le-niao/Yunzai-Bot.git
转到Yunzai的目录
cd ~/Yunzai-Bot
node.js换源(默认源能稳定下载的话可不换)
npm config set registry https://registry.npmmirror.com
安装pnpm
npm install pnpm -g
(升级npm貌似会寄了, 有升级提示的话先无视吧)
安装依赖
pnpm install -P
克隆miao-plugin(可选)
git clone https://gitee.com/yoimiya-kokomi/miao-plugin.git ./plugins/miao-plugin/
安装miao-plugin依赖(同上)
pnpm install image-size -w
启动Yunzai
node app
机器人QQ、密码、登录设备、主人号码
滑动验证助手
https://github.com/mzdluo123/TxCaptchaHelper/releases
(ticket输入框异常的话, Ctrl+C中止然后重新输入node app启动Yunzai, 一直不行的话删掉密码然后先扫码登录一次, 之后再加密码, 往下翻会有相关操作)
假如需要扫码登录, 显示的图片可能会变形, 显示二维码后, 左侧边缘(避开手势的区域)向右滑, 新建SESSION
cp ~/centos/root/Yunzai-Bot/data/QQ号/qrcode.png ~/storage/downloads/
然后图片在内置存储的下载(Download)文件夹,打开图片扫码
然后Termux切回前面的SESSION
(提示QQ版本低的话也可以尝试扫码登录)
登录后基本能用了
以后关闭Termux重开后这样操作:
点通知栏的Acquire wakelock
然后执行下列命令(可用方向↑↓找到命令)
./start-centos.sh
cd ~/Yunzai-Bot
node app
后续可选步骤:
修改QQ账号密码和登录设备
(提示QQ版本低可以尝试更改设备, 上面提到的删密码加密码也是在这)
nano ~/Yunzai-Bot/config/config/qq.yaml
按方向↑↓←→移动, 按需求修改
(不要误删空格引号什么的, 后续改其它文件也是)
完成后Ctrl+O保存, 然后不改文件名直接回车
Ctrl+X离开
(后续改其它文件没做其它强调的话也是这样保存离开)
出错了的话可以删掉文件然后启动Yunzai重来
rm ~/Yunzai-Bot/config/config/qq.yaml
修改登录设备的信息(假如上面改了5个设备仍是提示版本低那就改设备信息)
nano ~/Yunzai-Bot/data/QQ号/device-QQ号.json
把紫色的字按照原格式修改(引号不要改动)
(或者可以尝试叫别人提取这个文件发过来然后替换上去)
更改Enka服务器(解决更新面板负载过高)
nano ~/Yunzai-Bot/plugins/miao-plugin/config/profile_default.js
把紫色的链接改成https://enka.microgg.cn/或https://enka.minigg.cn/
Ctrl+O保存, 然后文件名改成profile.js回车另存, 出现询问输入y
Ctrl+X离开
修改主人QQ、私聊以及(不)自动同意好友请求
nano ~/Yunzai-Bot/config/config/other.yaml
修改抽卡次数和撤回时间
nano ~/Yunzai-Bot/plugins/genshin/config/gacha.set.yaml
修改ck帮助链接、米游社自动签到开关&时间
nano ~/Yunzai-Bot/plugins/genshin/config/mys.set.yaml
(signTime右边的三组数字简单地理解成秒、分、时即可)
获取Cookieの方法
https://sharechain.qq.com/80b42603568e6ab320153cdcb9ffc1f1
修改公共cookie (无需手动填写了, 私信发 #配置ck 即可)
(可以在这把失效的cookie删除)
nano ~/Yunzai-Bot/plugins/genshin/config/mys.pubCk.yaml
添加RPM Fusion源(ffmpeg在这个源)
yum localinstall -y https://mirrors.bfsu.edu.cn/rpmfusion/free/el/rpmfusion-free-release-9.noarch.rpm
yum localinstall -y https://mirrors.bfsu.edu.cn/rpmfusion/nonfree/el/rpmfusion-nonfree-release-9.noarch.rpm
RPM Fusion换源(默认源能稳定下载的话可不换)
sed -e 's!^metalink=!#metalink=!g' \
-e 's!^#baseurl=!baseurl=!g' \
-e 's#download1.rpmfusion.org#mirrors.bfsu.edu.cn\/rpmfusion#g' \
-i /etc/yum.repos.d/rpmfusion*.repo
yum makecache
安装ffmpeg (假如用的某些插件需要ffmpeg那就安装)
yum install --enablerepo=crb ladspa -y
yum install ffmpeg -y
这里有一些其它插件的索引
https://gitee.com/yhArcadia/Yunzai-Bot-plugins-index
(具体安装方法在插件作者的仓库查看)
后台启动Yunzaiの方法:
方法1:
(假如Yunzai在前台运行, 先Ctrl+C中止)
在Yunzai的目录执行这个: pnpm start
方法2: 安装screen多会话组件
(假如除了Yunzai还要另外挂两三个或更多其它的会话那就用这个)
yum install screen -y
修复screen文件夹权限: chmod 777 /run/screen
启动Yunzai之前先建立会话: screen -S Yunzai
然后再cd到Yunzai的目录启动Yunzai
将该screen会话放后台: Ctrl+A然后D
回到Yunzai会话: screen -r Yunzai 或: screen -r (会话id)
进入回滚模式(查看日志): Ctrl+A然后Esc (再次按Esc则是退出该模式)
关闭该screen会话: exit 或 Ctrl+A然后K再y
另一种方法(不装screen的话可以用这个):
假如想用CentOS做其它事又不想停掉前台的Yunzai, 可以在Termux左边的边缘(避开手势区域)向右滑, NEW SESSION然后再启动一个CentOS(进程貌似是共享的)
解决Android12~13因为杀进程导致Termux出现[Process completed (signal 9) - press Enter]
用数据线连PC并开启USB调试, PC需要装adb驱动 (应该可以用MiFlash的驱动)
然后PC下载platform-tools并解压
进去解压后的文件夹在地址栏输入cmd回车
Android13或12L执行这一行即可 adb shell "settings put global settings_enable_monitor_phantom_procs false"
Android12无谷歌服务执行这一行 adb shell "/system/bin/device_config put activity_manager max_phantom_processes 2147483647"
Android12有谷歌服务执行这一行 adb shell "/system/bin/device_config set_sync_disabled_for_tests persistent; /system/bin/device_config put activity_manager max_phantom_processes 2147483647"
执行完后把爪机重启
没PC的话可以尝试开启无线调试然后在分屏或窗口用Termux进行配对(不自带分屏或窗口可以用米窗, 用Shizuku激活它), 在Termux里输入 apt install android-tools -y 安装android-tools, 然后输入 adb pair 127.0.0.1:某端口 配对, 输入六位配对码, 然后输入 adb connect 127.0.0.1:某端口 连接, 然后执行上述命令