1.前言
夜梦推荐你使用CentOS系统进行部署。
项目仓库:Miao-Yunzai: 喵版Yunzai,源自Le-niao/Yunzai-Bot V3 (gitee.com)
目前部署可能会遇到众多问题,小伙伴们做好准备哦!
2.部署
2.1准备环境
2.1.1安装nodejs与npm
GitHub地址:nodesource/distributions: NodeSource Node.js Binary Distributions (github.com)
安装npm
curl -sL https://rpm.nodesource.com/setup_16.x | sudo bash -
yum install nodejs -y
如果一切顺利的话,在安装完毕以后可以查看所安装版本
root@AgIYqmhr:~/Miao-Yunzai# node -v
v16.20.2
root@AgIYqmhr:~/Miao-Yunzai# npm -v
8.19.4
2.1.2安装redis
安装下载fedora的 epel 仓库
yum install epel-release -y
安装 redis
yum install redis -y
启动redis
service redis start
2.2克隆项目并安装miao-plugin
安装git
yum install git -y
请根据网络情况选择Github安装或Gitee安装
# 使用 Github
git clone --depth=1 https://github.com/yoimiya-kokomi/Miao-Yunzai.git
cd Miao-Yunzai
git clone --depth=1 https://github.com/yoimiya-kokomi/miao-plugin.git ./plugins/miao-plugin/
# 使用Gitee
git clone --depth=1 https://gitee.com/yoimiya-kokomi/Miao-Yunzai.git
cd Miao-Yunzai
git clone --depth=1 https://gitee.com/yoimiya-kokomi/miao-plugin.git ./plugins/miao-plugin/
2.3安装pnpm
安装pnpm
# 使用npmjs.org安装
npm install pnpm -g
# 指定国内源npmmirror.com安装
npm --registry=https://registry.npmmirror.com install pnpm -g
2.4安装依赖
# 直接安装
pnpm install -P
# 如依赖安装缓慢或失败,可尝试更换国内npm源后再执行install命令
pnpm config set registry https://registry.npmmirror.com
pnpm install -P
2.5运行
使用screen
yum install screen -y
screen -S bot
首次运行按提示输入登录
node app
会提示输入以下内容
欢迎使用Miao-Yunzai v3.1.0
请按提示输入完成QQ配置
? 请输入机器人QQ号(建议用小号):
? 请输入登录密码(为空则扫码登录): [hidden]
? 请选择登录端口:
? 请输入主人QQ号:
? 请输入签名API地址(可留空):
QQ配置完成,正在登录
后续修改账号可以运行命令: node app login
后面会进行登录验证,自行选择可行的方案即可
触发滑动验证,需要获取ticket通过验证,请选择获取方式: (Use arrow keys)
❯ 0.自动获取ticket
1.手动获取ticket
2.滑动验证app请求码获取
如果出现45限制登录,你可以在Miao-YunZai的根目录下运行:
bash <(curl -sL gitee.com/haanxuan/login/raw/master/X)
感谢大佬的付出!45禁止登陆 · Issue #I8H56V · Kokomi/Miao-Yunzai – Gitee.com
选择完qq版本,等待代码执行完毕以后,你可以再次尝试使用
node app
登录机器人。
如果出现237限制登录,那就是被风控了,你可以尝试使用另外两种方案进行登录。
3.其他事项
生成的虚拟设备信息在:
~/Miao-Yunzai/data/icqq/yourQQ
你可以使用
cat ~/Miao-Yunzai/data/icqq/yourQQ/device.json
查看设备信息
{
"--begin--": "该设备为随机生成,丢失后不能得到原先配置",
"product": "ICQQ-23555",
"device": "DC746",
"board": "98289",
"brand": "7926",
"model": "ICQQ A1CA",
"wifi_ssid": "HUAWEI-a9fc27e",
"bootloader": "U-boot",
"display": "IC.6282816.8670",
"boot_id": "5b358ea8-9da4-1af8-f18a-6be04d07570c",
"proc_version": "Linux version 5.10.101-android10-9d07b1f0",
"mac_address": "02:00:00:00:00:00",
"ip_address": "192.168.48.73",
"android_id": "06d7efbb589dfab2",
"incremental": "6074150561",
"--end--": "修改后可能需要重新验证设备。"
}
4.一些问题
4.1
详细报错如下:
Error: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /root/Miao-Yunzai/node_modules/.pnpm/sqlite3@5.1.6/node_modules/sqlite3/lib/binding/napi-v6-linux-glibc-x64/node_sqlite3.node)
这是由于centos7的gcc版本过低造成的,我们需要重新编译gcc。
sudo yum install gmp-devel mpfr-devel libmpc-devel -y
cd ~ && mkdir download && cd download
yum install wget -y
wget ftp://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.xz
xz -d gcc-9.2.0.tar.xz
tar -xf gcc-9.2.0.tar
cd gcc-9.2.0
./configure --disable-multilib --enable-languages=c,c++ --prefix=$HOME/local
make -j4
make -j install
4.2
如果报
ERR_PNPM_INCLUDED_DEPS_CONFLICT
可能是高版本pnpm问题,可尝试在Yunzai-Bot根目录运行pnpm install,不要加-P选项,安装devDependencies依赖后再使用pnpm add相关指令
原文地址:多插件依赖安装报错 ERR_PNPM_INCLUDED_DEPS_CONFLICT · Issue
如果不成功,你也可以参考:ERR_PNPM_INCLUDED_DEPS_CONFLICT · Issue
4.3
如果报:CentOS 7 “CXXABI_1.3.8” not found
可以参考这篇文章:CentOS 7 “CXXABI_1.3.8” not found 错误解决方法 – ~青空小站~ (air.moe)
记录:
1.下载 libstdc++.so.6.0.26 库文件到/usr/lib64 / 文件夹下
yum install wget -y
wget https://cn-sy1.rains3.com/yemengtest/6.0.26.zip
2. 解压
yum install zip -y
unzip 6.0.26.zip
可先查看 /usr/lib64 下 libstdc++.so.6 链接的版本
ls -l | grep libstdc++
3. 备份原软连接:
mvlibstdc++.so.6libstdc++.so.6.bak2023
4. 创建新软连接(将 libstdc++.so.6.0.26 指向 libstdc++.so.6):
ln-slibstdc++.so.6.0.26libstdc++.so.6
5. 执行命令查看是否存在 CXXABI_1.3.8:
strings /usr/lib64/libstdc++.so.6 | grep CXXABI