CoinSummer实验室Filecoin资源分享。
- Lotus官方文档
- testnet/3 使用文档 - 在Github项目的
testnet/3
分支下 - 搭建Testnet/3的本地测试网
- testnet/3 使用文档 - 在Github项目的
- 代码下载地址
- 浏览器
- 区块同步数据国内备份 -
interopnet
分支区块同步数据国内下载地址,CoinSummer实验室提供,如何使用? - Filecoin官方博客
- Lotus Specification 设计文档
- 水龙头地址
- Benchmark数据
- Proof证明文件国内下载
- JDCloud(v20)参数下载
- JDCloud(v25)参数下载 -
env IPFS_GATEWAY=https://proof-parameters.s3.cn-south-1.jdcloud-oss.com/ipfs/
- 中国专用v25参数下载 - CoinSummer实验室提供
- 中国专用v25 URL地址
- 中国专用v24参数下载 - CoinSummer实验室提供
- 最新版Proofs发布地址 - 最新发布 Proof 参数的地方【官方】
- Filecoin经济模型
- 甘特图
- rust 和 rustup 的安装环境配置(Cargo)
- 使用GPU计算Precommit2
# 查看本节点所监听的地址:
lotus net listen
# 查看连接的节点列表:
lotus net peers
lotus net connect /ip4/47.240.110.221/tcp/44845/p2p/12D3KooWRgxLL84TSkYSjhvhCy5ZNSuJZZzHWp2FXDY7ufqGBmUW
当启动 daemon 后无法正常同步链上的数据,可以试试在启动 daemon 的时候禁用自动连接 peers (即:加上 --bootstrap=false
参数),然后手动连接到一个正常节点,例如:
lotus daemon --bootstrap=false
lotus net connect /ip4/47.240.110.221/tcp/44845/p2p/12D3KooWRgxLL84TSkYSjhvhCy5ZNSuJZZzHWp2FXDY7ufqGBmUW
上述的节点是示例节点,当您在使用该命令的时候,您需要自己去找一个可以使用的节点。
# 设置高度到9700
lotus chain sethead --epoch=9700
env RUSTFLAGS="-C target-cpu=native -g" FFI_BUILD_FROM_SOURCE=1 make clean all
特别是针对 AMD 处理器,使用该命令自己编译出来的代码更适合自己的机器。
export FIL_PROOFS_MAXIMIZE_CACHING=1
该参数仅针对Testnet3的 32GB 扇区有效。
export RUST_LOG=Debug
运行 miner 之前加入该参数可以在 miner 的日志中查看更详细的输出信息(底层 rust 代码的输出信息),Log 登记从低到高分别有: Trace、Debug、Info、Warn、Error,Trace 输出的信息最详细,Error 输出的信息最少,仅输入错误信息。
export FIL_PROOFS_PARAMETER_CACHE=/path/to/proof_params/v25/
# 列举所有扇区信息:
lotus-storage-miner sectors list
# 查看某个扇区的历史状态
lotus-storage-miner sectors status --log <SectorID>
lotus-storage-miner sectors update-state --really-do-it <SectorID> <NewSectorStatus>
# 例如:手动修改扇区 1 的状态为 FaultedFinal 状态
lotus-storage-miner sectors update-state --really-do-it 1 FaultedFinal
export LOTUS_STORAGE_PATH="/path/to/.lotusstorage"
- 默认存储路径是
~/.lotusstorage
,可通过指定LOTUS_STORAGE_PATH
环境变量来更改; - 每个存储路径下都会有
sectorstore.json
配置文件,该文件可以配置该存储路径的用途,比如,是否可以用来存储密封过程中生成的临时文件"CanSeal": true
, 是否可以用来存储密封好的数据"CanStore": true
,以及该路径的权重"Weight": 10
和一唯一标识符:ID
;
{
"ID": "e59facdc-6a82-418f-a25e-4cbd9165b5de",
"Weight": 10,
"CanSeal": true,
"CanStore": true
}
# 设置数据存储路径,该路径用来存储最终密封好的数据
# 执行该命令可能需要一点时间等待
lotus-storage-miner storage attach --store --init /path/to/persistent_storage
# 设置密封扇区的存储路径,密封完成之后该路径下的数据会被自动清空,相当于临时目录
# 执行该命令可能需要一点时间等待
lotus-storage-miner storage attach --seal --init /path/to/fast_cache
以上两个命令都是在启动了 miner 之后才可以执行,是一种动态添加存储路径的方式,非常灵活。 当然还可以在命令中添加权重 --weight=10,默认权重是 10。 执行该命令后,可通过以下命令查看存储列表:
lotus-storage-miner storage list
lotus-storage-miner rewards redeem
lotus-storage-miner rewards list
赎回之后,可能需要过一段时间才能看到自己钱包的余额增加。
运行 miner 之前导出已下环境变量(目前官方还未放出v26参数):
export FIL_PROOFS_USE_GPU_COLUMN_BUILDER=1
lotus-storage-miner workers list
lotus-seal-worker run --address=192.168.1.201:2333 --precommit1=false --precommit2=true --commit=true
启动worker需要注意以下几点:
- 要给 worker 指定本机地址和一个随机端口(四位数以上);
precommit1
、precommit2
和commit
默认是启用的,如果想要禁用,可以设置为 false,例如:--precommit1=false
;commit
参数是配置commit2
的,commit1
无法在 Worker 中启用。
- Testnet/3 的Actual Power,Byte Power 是什么?
- lotus sync status时的base和target代表什么?
- lotus sync时的worker是如何工作的?
持续更新中,有问题请在Issues中反馈...
参考文档