文档
CLI 模式修改 RustMinerSystem 配置
在 RustMinerSystem CLI 模式下编辑 rust-config、port-config.json 和 wallet-config.json,并通过 rustminer restart 使配置生效。
CLI 模式修改 RustMinerSystem 配置
CLI 模式下不通过 Web 后台修改配置,而是在服务器终端中直接编辑 RustMinerSystem 的配置文件。保存配置文件后,运行 rustminer restart 重启服务即可生效。
默认安装目录为:
cd /root/rustminersystem
如果你的程序目录经过定制或调试环境不同,请先在安装脚本中选择 21 查看运行状态和文件路径。
修改流程
推荐按下面顺序操作:
cd /root/rustminersystem
cp rust-config rust-config.bak.$(date +%Y%m%d%H%M%S)
cp port-config.json port-config.json.bak.$(date +%Y%m%d%H%M%S)
cp wallet-config.json wallet-config.json.bak.$(date +%Y%m%d%H%M%S)
nano rust-config
nano port-config.json
nano wallet-config.json
rustminer restart
也可以使用 vim、vi 或其他文本编辑器。修改 JSON 文件后,建议先校验格式:
jq . port-config.json >/dev/null
jq . wallet-config.json >/dev/null
如果服务器没有安装 jq,至少要确认 JSON 的引号、逗号、中括号和大括号没有缺失。
rust-config
rust-config 是一行一个配置项的文本文件,格式为:
KEY=value
普通开关和端口直接写数字;数组或对象类配置使用单行 JSON。不要把一个 JSON 值拆成多行。
常用配置项:
| 配置项 | 说明 |
|---|---|
ENABLE_WEB_UI |
是否开启 Web 管理后台。1 表示开启,0 表示关闭。CLI 模式要求关闭 Web 访问,即设置为 0。 |
ENABLE_WEB_TLS |
Web 后台访问协议。1 表示 HTTPS,0 表示 HTTP。只有 Web 访问开启时才需要关注。 |
START_PORT |
Web 后台访问端口,建议使用 10000-65535 范围内的端口。 |
RMS_PORT |
RMS 接入端口,建议使用 10000-65535 范围内的端口。 |
POOLNODE_PORT |
PoolNode 访问端口,建议使用 10000-65535 范围内的端口。 |
IP_BLACKLIST |
IP 黑名单,JSON 数组格式。 |
WALLET_BLACKLIST |
钱包黑名单,JSON 数组格式。 |
WALLET_WHITELIST |
钱包白名单,JSON 数组格式。 |
POOL_ENDPOINT |
自定义矿池和自定义钱包配置,JSON 对象格式。 |
RMS |
RMS 相关配置,JSON 对象格式。 |
WARNING_SETTING |
告警配置,JSON 对象格式。 |
示例:
ENABLE_WEB_UI=0
ENABLE_WEB_TLS=0
START_PORT=46679
RMS_PORT=13293
POOLNODE_PORT=15354
IP_BLACKLIST=["203.0.113.10","198.51.100.20"]
WALLET_BLACKLIST=["wallet-name"]
WALLET_WHITELIST=[]
修改端口时,也可以用 sed 直接替换:
sed -i 's/^START_PORT=.*/START_PORT=46679/' rust-config
sed -i 's/^RMS_PORT=.*/RMS_PORT=13293/' rust-config
sed -i 's/^POOLNODE_PORT=.*/POOLNODE_PORT=15354/' rust-config
请不要把 REMOTE_KEY、REMOTE_CODE、OB_TOKEN、SMTP 密钥等令牌写入公开文档或截图。如果只是调整端口、Web 开关或黑名单,通常不需要修改这些密钥类字段。
port-config.json
port-config.json 是端口配置文件,整体是一个 JSON 数组,每个对象代表一个矿机接入端口。
端口 ID 格式
手动新增端口时,id 需要按固定格式生成:
前 5 位随机字母或数字 + . + 后 2 位随机数字
例如:
6YMpg.06
A1b2C.34
也可以理解为正则格式:[A-Za-z0-9]{5}\.[0-9]{2}。同一个 port-config.json 文件内不要重复使用相同的 id。
常用字段:
| 字段 | 说明 |
|---|---|
id |
端口 ID。已有端口建议保留原值;手动新增时使用 6YMpg.06 这种格式,并确保唯一。 |
port |
本地监听端口,也就是矿机连接 RustMinerSystem 的端口。 |
name |
端口名称,可为空。 |
currency |
币种名称。 |
category |
算法或分类名称。 |
protocol |
矿机接入协议:0 TCP,1 TLS,3 TTS,5 RMS2,6 RMS3,8 RMS3(zstd),9 TP。 |
limit_connections |
端口连接数限制。 |
pool_address |
主矿池地址。 |
connect_mode |
主矿池连接协议:0 TCP,1 TLS。 |
pool_address2 |
备用矿池地址,可为空。 |
connect_mode2 |
备用矿池连接协议:0 TCP,1 TLS。 |
mode |
端口模式:0 高效模式,1 兼容模式。 |
示例:
[
{
"id": "6YMpg.06",
"port": 47777,
"name": "IRON proxy",
"currency": "IRON",
"category": "blake3s",
"protocol": 1,
"limit_connections": 65535,
"pool_address": "hk.ironfish.example.com:1145",
"pool_address2": "",
"connect_mode": 0,
"connect_mode2": 0,
"mode": 0,
"proxy_addr": null,
"proxy_device": null,
"pattern_addr": "",
"replace_addr": "",
"status": 2,
"error": "",
"nc": 1
}
]
如果只修改某个端口的矿池地址,可以使用 jq:
jq 'map(if .id == "6YMpg.06" then .pool_address = "hk.ironfish.example.com:1145" else . end)' port-config.json > port-config.json.tmp
mv port-config.json.tmp port-config.json
rustminer restart
wallet-config.json
wallet-config.json 是钱包配置文件,整体也是一个 JSON 数组。每个对象代表一条钱包或设备相关的转发、费率配置。
钱包 ID 与端口关联
手动新增钱包配置时,id 也使用同样的随机格式:
前 5 位随机字母或数字 + . + 后 2 位随机数字
例如 AFq3H.35。同一个 wallet-config.json 文件内不要重复使用相同的 id。
server_id 不是随便生成的随机值,它必须填写 port-config.json 中某个端口的 id。也就是说,如果某个端口配置是:
{
"id": "6YMpg.06",
"port": 47777
}
那么绑定到这个端口的钱包配置应写成:
{
"id": "AFq3H.35",
"server_id": "6YMpg.06"
}
常用字段:
| 字段 | 说明 |
|---|---|
id |
钱包配置 ID。已有记录建议保留原值;手动新增时使用 AFq3H.35 这种格式,并确保唯一。 |
server_id |
关联的端口 ID,必须对应 port-config.json 中某个端口对象的 id,不要填端口号,也不要随机生成。 |
addr |
钱包名称或钱包标识。 |
device |
设备名称。 |
pool_address |
钱包对应的矿池地址。 |
pool_protocol |
钱包矿池连接协议:0 TCP,1 TLS。 |
ratio |
钱包费率,使用小数表示。例如 0.03 表示 3%。 |
示例:
[
{
"id": "AFq3H.35",
"server_id": "6YMpg.06",
"addr": "wallet-main",
"device": "MY20602",
"pool_address": "kas.example.com:443",
"pool_protocol": 0,
"ratio": 0.03
}
]
把某个钱包费率改为 5% 的示例:
jq 'map(if .id == "AFq3H.35" then .ratio = 0.05 else . end)' wallet-config.json > wallet-config.json.tmp
mv wallet-config.json.tmp wallet-config.json
rustminer restart
生效与回滚
修改完成后必须重启:
rustminer restart
如果重启后无法连接端口或配置异常,可以恢复备份:
cp rust-config.bak.YYYYMMDDHHMMSS rust-config
cp port-config.json.bak.YYYYMMDDHHMMSS port-config.json
cp wallet-config.json.bak.YYYYMMDDHHMMSS wallet-config.json
rustminer restart
恢复时请把 YYYYMMDDHHMMSS 换成你实际备份文件名中的时间。
