MASSNet利用Chia 文件 Solo 挖矿(Ubuntu系统)
双挖教程(Solo)——以Ubuntu系统为例
近期MASS硬分叉完成后,Chia矿工双挖MASS可以采用Solo的方式,也可以接入Hpool一类的矿池,以下内容为Solo教程,矿池教程由矿池整理发出。
1. 编译或下载 Miner 全节点
1.1 从源码编译
apt-get update
apt-get install build-essential
git clone https://github.com/massnetorg/MassNet-miner.git
cd MassNet-miner
GOPROXY="https://goproxy.cn" make build
成功执行以上命令后,将得到massminer和massminercli这两个可执行文件。
1.2 从 GitHub 下载
https://github.com/massnetorg/MassNet-miner/releases/tag/v2.0.0
可以从GitHub直接下载编译好的程序,更加方便。
2. 编译或下载Wallet全节点
2.1 从源码编译
apt-get update
apt-get install build-essential
git clone https://github.com/massnetorg/MassNet-wallet.git
cd MassNet-wallet
GOPROXY="https://goproxy.cn" make build
成功执行以上命令后,将得到masswallet和masswalletcli这两个可执行文件。
2.2 从 GitHub 下载
https://github.com/massnetorg/MassNet-wallet/releases/tag/v2.0.0
可以从GitHub直接下载编译好的程序,更加方便。
3. 配置并启动 Miner 全节点
3.1 创建 Miner Keystore
将1.1或1.2节得到的massminer和massminercli拷贝到/root/mass-miner路径下。随后执行以下命令:
cd /root/mass-miner
./massminercli importchiakeystore -m chia-miner-keystore.json
根据提示,输入用于挖矿的Chia助记词(或不使用“-m”,改为直接输入farmer_private_key和pool_private_key)。
执行成功后,将会在chia-miner-keystore.json文件里写入用于MASS挖矿的私钥(请妥善保存chia-miner-keystore.json文件,不要将它发送给其他人,以免farmer_private_key和pool_private_key泄露)。
如果机器上的Plot文件由多个不同的pool_public_key创建,则多次执行importchiakeystore命令,依次导入相关的私钥。
3.2 编辑Miner配置文件
在/root/mass-miner路径下创建名称为config.json的配置文件,内容如下:
{
"p2p": {
"seeds": "47.245.28.97,47.254.23.183,47.252.81.90,8.208.26.82,47.56.165.62,106.15.233.21,47.102.141.84,47.104.187.211,47.104.165.118,39.97.225.109,39.97.190.57,118.31.108.197,47.111.120.59,47.111.164.103,112.74.183.26,39.108.215.150,119.23.233.40,47.108.88.140,47.108.89.132,47.108.80.3,8.142.82.122,8.142.82.109,39.99.32.114,39.104.205.235,8.134.124.108,8.134.128.170,101.200.80.23,47.108.88.95,47.243.84.89,47.88.62.186"
},
"miner": {
"payout_addresses": [
"ms1q..."
],
"generate": true,
"proof_dir": [
"/root/chia_plots1",
"/root/chia_plots2",
"/root/chia_plots3",
"/root/chia_plots4",
"/root/chia_plots5"
],
"chia_miner_keystore": "chia-miner-keystore.json"
}
}
编辑config.json:
在miner.payout_addresses中填入挖矿奖励的接收地址。
在miner.proof_dir中填入多个保存有Chia Plot文件的路径。
在p2p.seeds 中填入初始加入网络时的种子节点,推荐使用示例中的配置。
3.3 启动Miner全节点
执行以下命令,在后台运行MASS Miner全节点。
cd /root/mass-miner
nohup ./massminer m2 > /dev/null 2>&1 &
# See logs at ./logs/mass.log
可以用`tail -f logs/mass.log`来追踪日志,直到所有的Chia Plot文件都加载完毕。
3.4 获取所有Plot文件的激活地址
按照3.3节的教程,启动Miner 全节点后,就可以开始获取所有Plot文件的激活地址列表。执行以下命令:
cd /root/mass-miner
./massminercli getbindinglist binding_list.json
执行成功后,会把所有Plot文件的激活地址写入binding_list.json文件中。
4. 配置并启动Wallet全节点
4.1 编辑Wallet配置文件
将2.1或2.2节得到的masswallet和masswalletcli拷贝到/root/mass-wallet路径下。随后在/root/mass-wallet路径下创建名为config.json的配置文件,内容如下:
{
"core": {
"p2p": {
"seeds": "47.245.28.97,47.254.23.183,47.252.81.90,8.208.26.82,47.56.165.62,106.15.233.21,47.102.141.84,47.104.187.211,47.104.165.118,39.97.225.109,39.97.190.57,118.31.108.197,47.111.120.59,47.111.164.103,112.74.183.26,39.108.215.150,119.23.233.40,47.108.88.140,47.108.89.132,47.108.80.3,8.142.82.122,8.142.82.109,39.99.32.114,39.104.205.235,8.134.124.108,8.134.128.170,101.200.80.23,47.108.88.95,47.243.84.89,47.88.62.186"
}
},
"wallet": {
"api": {
"disable_tls": true
}
}
}
在p2p.seeds 中填入初始加入网络时的种子节点,推荐使用示例中的配置。
4.2 启动Wallet全节点
执行以下命令,在后台运行MASS Wallet全节点:
cd /root/mass-wallet
nohup ./masswallet > /dev/null 2>&1 &
# See logs at ./logs/masswalletlog.log
可以用`tail -f logs/masswalletlog.log`来追踪日志。
4.3 创建或导入钱包
在/root/mass-wallet路径下创建名为walletcli-config.json的配置文件,内容如下:
{
"server": "http://localhost:9688",
"log_dir": "./logs",
"log_level": "debug"
}
4.3.1 创建钱包
执行命令,创建钱包:
cd /root/mass-wallet
./masswalletcli createwallet
4.3.2 导入钱包
如果之前使用过 MASS Wallet,也可以直接导入老钱包:
cd /root/mass-wallet
# Use mnemonic
./masswalletcli importmnemonic <mnemonic>
# Or use keystore
./masswalletcli importkeystore <keystore>
4.4 发起Plot文件批量激活
这一步会用到3.4节中导出的binding_list.json,请将该文件拷贝到/root/mass-wallet路径下。随后执行命令,进行批量绑定:
cd /root/mass-wallet
./masswalletcli batchbinding <file> <from_address>
请耐心等待批量绑定完成,当所有交易都确认打包后,命令即执行完毕。
5. 检查挖矿状态
通过跟踪MASS Miner的日志,确认挖矿状态:
cd /root/mass-miner
tail -f logs/mass.log
如上图所示是对一个区块的挖掘日志,出现“find qualities for next block”且同一行的“binding_count”大于0时,表明正在进行有效的挖矿。
如果出现了“block submitted via PoC miner accepted”时,表明成功爆块。(如果同一时间,网络中有其他矿工挖出了更好的块,则该块不会进入主链,也不会收到爆块奖励)
至此,已成功实现Solo挖矿的所有基本操作。