本文作者:ZKLink 原创作品,转载请注明出处
export LOTUS_MINER_PATH="/path/to/.lotusminer"
Miner 默认存储路径是 ~/.lotusminer,可通过指定 LOTUS_MINER_PATH 环境变量来更改;
$LOTUS_MINER_PATH 目录下的 storage.json 文件,用来定义Miner挂载的所有存储路径,例如:{ "StoragePaths": [ { "Path": "/home/ubuntu/disk_md0/lotusminer" }, { "Path": "/home/ubuntu/sectors/storage0" }, { "Path": "/home/ubuntu/sectors/storage1" } ] }
其中/home/ubuntu/disk_md0/lotusminer为Miner本地Worker的存储路径;
/home/ubuntu/sectors/storage0和/home/ubuntu/sectors/storage1都是新增的用来存储密封结果的路径。
每个存储路径下都会有 sectorstore.json 配置文件,用来配置该存储路径的用途。{ "ID": "83b4fc88-283a-4496-a2f9-cf10781c4ec3", # 唯一标识ID "Weight": 10, # 该存储路径权重 "CanSeal": true, # 是否可以用来存储密封过程中生成的临时文件 "CanStore": true # 是否可以用来存储密封好的数据 }其中需要注意的3个参数是:
Weight: 该存储路径的权重,权重越大的路径会优先存数据;
CanSeal: 是否可以用来存储密封过程中生成的临时文件;
CanStore: 是否可以用来存储密封好的数据,Miner本地Worker的CanStore要设置为false,Seal Worker的CanStore默认就是false;
# 设置数据存储路径,该路径用来存储最终密封好的数据 # 执行该命令可能需要一点时间等待 lotus-miner storage attach --store --init /path/to/persistent_storage
# 设置密封扇区的存储路径,密封完成之后该路径下的数据会被自动清空,相当于临时目录 # 执行该命令可能需要一点时间等待 lotus-miner storage attach --seal --init /path/to/fast_cache
以上两个命令都是在启动了 Miner 之后才可以执行,是一种动态添加存储路径的方式,非常灵活。 当然还可以在命令中添加权重 --weight=10,默认权重是 10。 执行该命令后,可通过以下命令查看存储列表: lotus-miner storage list
当Miner挂载多个存储路径时,需要对多个存储路径进行管理时,可以手动对每个存储路径下的 sectorstore.json 配置文件进行修改权重的配比和存储路径的用途管理。当多个存储路径配置不同的权重时,Miner会根据各个存储路径的权重配比进行存储。若某一存储路径快满时,可以设置该路径下的 sectorstore.json 中"CanSeal": false、 "CanStore": false,重启miner后生效,这样Miner就不会往该路径下存储任何数据了。
来源:金色财经