本文档介绍 abcmint-miner-cuda 命令行版矿工软件的完整使用方法。该软件是 MQSCAN 第三方开发的 ABCMint 挖矿客户端,并非 abcmint 官方矿池软件。仅支持 Linux 系统(推荐 Ubuntu 20.04),使用 NVIDIA CUDA GPU 挖矿。
abcmint-miner-cuda 命令行版本,不适用于 GUI(图形界面)版本的 ABCMint Miner。abcmint-miner-cuda 仅支持 Linux,且需 NVIDIA 显卡。若使用 Windows,或显卡为 AMD / Intel,请改用 Super-Miner(OpenCL 内核,Windows / Linux 通用,图形界面与命令行版本均有),下载见 软件介绍。abcmint-miner-cuda 是基于 Stratum 协议的 ABCMint 命令行挖矿客户端,核心特性:
| 特性 | 说明 |
|---|---|
| 挖矿算法 | MQ (Multivariate Quadratic) 多元二次方程 |
| 连接协议 | Stratum 挖矿协议 |
| GPU 支持 | 支持 NVIDIA CUDA 显卡,支持多卡并行 |
| 自动重连 | 支持断线自动重连,指数退避 |
| 钱包绑定 | 首次挖矿自动注册钱包地址 |
开始挖矿前,需要完成以下步骤:
① 准备 ABC 钱包地址
你需要一个 ABCMint 钱包地址(长度 > 30 字符)。主网地址以 8 开头,测试网地址以 q 或 r 开头。可以通过 ABCMint 钱包客户端生成。
② 绑定钱包到用户名
在监控面板点击"绑定钱包地址",或使用以下 API 接口绑定:
curl -X POST http://154.12.89.175:8081/api/bindWallet \
-H "Content-Type: application/json" \
-d '{"username": "你的用户名", "wallet": "你的ABC钱包地址"}'
③ 获取矿池连接信息
| 项目 | 值 |
|---|---|
| Stratum 地址 | 154.12.89.175:3335 |
| HTTP API | http://154.12.89.175:8081 |
| 挖矿算法 | MQ (Multivariate Quadratic) |
最简单的挖矿命令(GPU模式,自动连接默认矿池):
./release/abcmint-miner-cuda -user 你的用户名 -password 8ABCdef...your_wallet_address
软件会自动:
Ctrl+C 可安全停止挖矿。运行 ./abcmint-miner-cuda -h 可查看帮助信息。以下是所有支持的参数:
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
-pool <host:port> |
字符串 | mqscan.io:3334 |
矿池 Stratum 服务器地址(可选,不填自动连接 mqscan.io:3334)。mqscan.io 为矿池域名,会自动 DNS 解析到当前矿池 IP |
-user <username> |
字符串 | worker |
矿工用户名。支持两种格式: • 用户名(如 User)• 用户名.矿工ID(如 User.001)
|
-password <password> |
字符串 | 必填 |
abcmint 钱包地址(参数名沿用 Stratum 协议惯例,但实际填的是钱包地址,不是密码)。 • 主网:以 8 开头• 测试网:以 q 或 r 开头长度需 > 30 字符。首次挖矿时用于向矿池注册并绑定到 -user 用户名;已注册用户名必须与原绑定地址一致。
|
-threads <count> |
整数 | CPU 逻辑核心数 |
挖矿线程数,会自动调整为显卡数的倍数。 例如 4 张显卡时填 8,则每张卡分配 2 个线程 |
-watchdog <seconds> |
整数 | 120 |
会话看门狗(0.1.1 起):连续 N 秒没有收到矿池任何消息就强制断开重连,
专防「TCP 还连着、矿池却不回包」的半死链路。0 = 关闭。判活依据是入站消息:矿池对每次算力上报都会回响应,正常运行每 10 秒至少一条。 调参建议:默认 120 适合矿池正常回包的场景;网络抖动较多的机器可调大到
180–300;确知矿池长时间静默属正常时设 0 关闭;
不建议小于 60(会把瞬时网络抖动误判成半死链路 —— 虽然重连本身无害,只是日志里会多几行)。
|
-cuda |
开关 | CUDA 构建下默认开启 |
启用 CUDA GPU 挖矿(仅 CUDA 构建可用)。 注意:它只是启用开关,没有 off 取值;
若未检测到 NVIDIA 显卡会直接报错退出
|
-h 或 --help |
开关 | — | 显示帮助信息并退出 |
-password 是必填参数(实际填钱包地址,不是密码)。参数名沿用 Stratum 协议惯例未改名以保持向后兼容;省略或填 x 会导致启动失败。CLI 运行 ./abcmint-miner-cuda -h 时帮助文本也已说明该参数为 abcmint wallet address。退出码与自愈行为(0.1.1 起,HiveOS / systemd 运维可据此配置重启)
| 退出码 | 含义 | 建议动作 |
|---|---|---|
0 | 正常退出(Ctrl+C / SIGTERM) | — |
1 | 参数或授权类错误(缺 -password、地址格式不对、矿工名已被其他地址绑定、无可用 CUDA 设备等) | 修正参数;若提示矿工名已绑定,换一个名字或联系矿池管理员 |
3 | GPU 连续失败:CUDA 报错后重建上下文重试 5 次仍失败(日志里有 [GPU] 明细) | 检查驱动版本、显存占用与散热;交由守护进程重启 |
cudaGetErrorString)→ 重建 CUDA 上下文 → 继续重试,最多 5 次;重试期间与矿池的会话保持不变。[Watchdog] …已强制中断并重连 属正常自愈,不需要人工干预。cudaMalloc / cudaMemcpy / cudaSetDevice 等),显存不足不会再「拿着空指针继续跑」。日志示例:什么不用管、什么要处理
① 矿池回包停滞被看门狗救回(正常自愈,不用管):
[Watchdog] 与矿池的会话已 120 秒没有任何进展(网络/矿池/驱动可能卡住),已强制中断并重连。 [Reconnect] Attempt #2 - Connecting to mqscan.io:3334... Successfully reconnected after 1 attempts!
② GPU 短暂异常后自愈(自动恢复,不用管):
[GPU] 第 1 次 GPU 错误:cudaMalloc 88080384 bytes failed: out of memory [GPU] 已重建 CUDA 上下文(device 0),继续重试(第 1/5 次)…
③ GPU 连续失败(需要处理,进程会以退出码 3 结束):
[GPU] 连续 5 次 GPU 错误,重建 CUDA 上下文后仍无法恢复。 [GPU] 以退出码 3 结束(便于 systemd / HiveOS 看门狗据此重启);请检查驱动版本、显存占用与散热。
systemd 常驻示例(自动重启)
[Unit] Description=Abcmint CUDA Miner After=network-online.target [Service] WorkingDirectory=/root/abcmint-miner-cuda-linux-x64-0.1.1 ExecStart=/root/abcmint-miner-cuda-linux-x64-0.1.1/abcmint-miner-cuda-v0.1.1 \ -user 你的矿工名 -password 你的钱包地址 -threads 8 -watchdog 120 Restart=always RestartSec=10 StandardOutput=append:/var/log/abcmint-miner.log StandardError=append:/var/log/abcmint-miner.log [Install] WantedBy=multi-user.target
Restart=always 对退出码 0/1/3 都会重启。若日志里连续出现「以退出码 3 结束」,
说明是驱动/显存/散热问题而不是网络问题,先排查硬件再让它继续重启。常见问题
[Watchdog] 要紧吗? 不要紧,这是 0.1.1 新增的自愈行为:检测到「连接还在但矿池不回包」就主动重连,日志里随后会看到 Successfully reconnected。out of memory 明细。使用 make 或 make gpu 编译的 GPU 版本(默认启用 CUDA):
./release/abcmint-miner-cuda -user User -password 8ABCdef...your_wallet_address
GPU 挖矿需要:
USE_GPU 宏软件支持多张 NVIDIA 显卡同时挖矿。只需使用 GPU 版本并通过 -threads 指定总线程数:
./release/abcmint-miner-cuda -threads 8 -user User -password 8ABCdef...your_wallet_address
线程分配规则:
软件会自动检测可用 GPU 数量,并将线程均匀分配到每张卡上。
| 显卡数 | -threads | 每卡线程数 | 分配方式 |
|---|---|---|---|
| 1 | 4 | 4 | GPU0: 4线程 |
| 2 | 4 | 2 | GPU0: 2线程, GPU1: 2线程 |
| 4 | 8 | 2 | GPU0~3: 各2线程 |
| 4 | 4 | 1 | GPU0~3: 各1线程 |
-threads 5,实际会使用3个线程(每张卡1个)。启动时软件会输出设备检测信息:
CUDA devices detected: 4 Mode: CUDA GPU (4 devices, 2 threads/device)
场景 1:单卡 GPU 挖矿
./release/abcmint-miner-cuda -user User -password 8ABCdef...your_wallet_address
场景 2:多卡 GPU 挖矿(4张显卡)
./release/abcmint-miner-cuda -threads 8 -user User -password 8ABCdef...your_wallet_address
场景 3:指定用户名+矿工ID
./release/abcmint-miner-cuda -user User.001 -password 8ABCdef...your_wallet_address
场景 4:Linux 后台挖矿(日志输出到文件)
cd /root/standalone-miner && nohup ./release/abcmint-miner-cuda -threads 4 -user User -password 8ABCdef...your_wallet_address > miner.log 2>&1 &
场景 5:查看实时挖矿日志
tail -f /root/standalone-miner/miner.log
软件启动时会显示以下信息:
======================================== Abcmint Standalone Miner v0.1.0 ======================================== Pool: mqscan.io:3334 Worker: User.00001 Threads: 4 Mode: CUDA GPU (1 devices, 4 threads/device) ========================================
连接成功后:
Successfully connected and authorized! Nonce offset for this session (from pool): 1234567890 Starting mining threads... Mining thread 0 (GPU:0) started (nonce offset: 1234567890) Mining thread 1 (GPU:0) started (nonce offset: 1234567891) Mining started. Press Ctrl+C to stop.
找到解时会输出:
Thread 0 found solution! Nonce: 01234567
断线重连:
[Reconnect] Connection lost! Attempting to reconnect... [Reconnect] Attempt #1 - Connecting to mqscan.io:3334... [Reconnect] Successfully reconnected after 1 attempts!
停止挖矿:
Stopping mining threads... Mining thread 0 stopped Mining thread 1 stopped Mining stopped. Goodbye!
Linux 系统:
使用 nohup 在后台运行,日志输出到文件:
cd /root/standalone-miner && nohup ./release/abcmint-miner-cuda -threads 4 -user User -password 8ABCdef...your_wallet_address > miner.log 2>&1 &
查看后台进程:
ps aux | grep abcmint-miner-cuda
查看实时日志:
tail -f miner.log
停止挖矿进程:
pkill -9 abcmint-miner-cuda
注意:本矿工客户端仅支持 Linux 系统,不支持 Windows。请使用 Ubuntu 20.04 或更高版本的 Linux 发行版。
| 问题 | 可能原因 | 解决方法 |
|---|---|---|
| 连接失败 | 网络不通 | 测试网络连通性 ping mqscan.io,确认端口 3334 可达 |
| 授权失败 | 用户名格式错误 / 钱包地址错误 | 确保 -user 参数格式正确(用户名 或 用户名.矿工ID);-password 必须为合法 ABCMint 钱包地址(主网 8 开头,测试网 q/r 开头,长度 > 30),且与已绑定用户名一致 |
| 未检测到 CUDA 设备 | 无 NVIDIA 显卡 / 驱动未安装 / 编译未启用 GPU | 运行 nvidia-smi 检查显卡状态;确认使用 GPU 版本编译 |
| 程序报错退出(No NVIDIA CUDA device found / CUDA error during GPU search setup/launch) |
无 NVIDIA 显卡 / 驱动异常 / 显存或驱动故障 | 运行 nvidia-smi 检查显卡与驱动,修复后重新启动程序 |
| 频繁断线重连 | 网络不稳定 / 矿池维护 | 软件支持自动重连,检查网络质量 |
| 矿池显示离线 | 钱包地址未绑定 | 在监控面板绑定钱包地址到用户名 |
| 看不到算力收益 | 刚启动 / 尚未提交有效份额 | 挖矿需要时间积累份额,等待几分钟后再查看矿池状态 |
| 多卡只用到一张卡 | 线程数不足 / 软件非多卡版本 | 确保 -threads 数 ≥ GPU 数,且使用最新编译版本 |
miner.log 中的错误信息,或联系矿池管理员寻求帮助。