LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 新闻观点 > filecoin源码解读(一)初始化节点

filecoin源码解读(一)初始化节点

2019-10-24 Online 来源:区块链网络
filecoin源码解读(一)初始化节点

为了便于理解,就根据部署filecoin挖矿节点的步骤来解读,看看部署节点时,每一步命令都在干什么。

首先从初始化开始,最简单的初始化命令go-filecoin init --devnet-user --genesisfile=https://genesis.user.kittyhawk.wtf/genesis.car

初始化的全部参数

--genesisfile用于指定创世文件 --peerkeyfile指定节点私钥文件 --with-miner指定矿工地址 --sectordir指定存储扇区路径(即存放用户数据的路径) --default-address指定节点默认钱包地址 --auto-seal-interval-seconds指定自动封装扇区的时间间隔 --devnet-staging指定staging开发网络 --devnet-nightly指定nightly开发网络 --devnet-user指定user开发网络

其中网络类型(staging、nightly、user网络)和创世文件是必须指定的。

具体代码在commands/init.go中:初始化时首先要设置repopath,也就是节点数据的存储路径,用--repodir参数来指定,未指定时默认为const defaultRepoDir = "~/.filecoin",也就是用户目录下的名为filecoin的隐藏文件夹。

之后加载创世文件loadGenesis(),然后调用node.Init(),传入repo路径,网络类型(包括user网络、test网络、nightly网络),及创世文件等参数,再调用chain.Init()来初始化一个节点。

最后根据初始化命令中的一些参数来生成节点配置文件rep.ReplaceConfig()。

chain.Init()和rep.ReplaceConfig()中会生成节点默认钱包地址、私钥、节点快照等配置文件,保存在.filecoin-20191024-095628-v002文件夹中,而.filecoin文件夹是前者的软链接。

当所有配置文件生成后,一个节点就初始化完成了,go-filecoin init命令也就执行结束了,不会持久运行。

之后需要用go-filecoin daemon命令来启动节点,让节点持久运行。

成功初始化如图

—-

编译者/作者:Online

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...