Filecoin测试网挖矿解析

FILecoin已经开放测试网啦,要参与测试⽹其实是⾮常简单的事情,我们贝特曼矿机也先行体验了,现在将基本的步骤和⼀些细节剖析出来。

  要开启测试⽹的挖矿,大概分为如下几步:

  第一步,下载挖矿软件,启动节点。

  第二步,去讨⽶获取点FIL。

  第三步,抵押,设置价格开启挖矿。

  一、下载挖矿软件,启动节点  

  去这里下载个版本,https://github.com/FILecoin-project/go-FILecoin/releases/tag/0.2.4

  tar -zxvf filecoin-0.2.4-Linux.tar.gz

  mkdir -p /tmp/filecoin-proof-parameters

  cd filecoin

  ./paramcache

export PATH="$(pwd)":$PATH

  当然最好把这个变量设置到全局环境去中,在 ~/.bash_profile   添加环境变量量PATH。

  接下来就是启动节点,

  如果启动过节点,可以先干掉之前的一些数据。

  rm -rf ~/.filecoin

  初始化go-filecoin软件,设置下开发者网络标识,使得连接到开发者网络。

  go-filecoin init --devnet-user --genesisfile=https://genesis.user.kittyhawk.wtf/ge nesis.car

  然后启动  go-filecoin 进程

  这步启动后会返回一个peerID,比较奇怪的⼀点是这个软件并不会去探测这个机器是否已经开启了一个IPFS节 点。这个软件本身会自己开启一个ipfs节点。

  当然你可以给你节点取⼀个名字,然后在⼀个可视化页面展示出来。

  go-filecoin config heartbeat.nickname "EngineMiner" go-filecoin config heartbeat.beatTarget "/dns4/stats-infra.kittyhawk.wtf/tcp/8080/ ipfs/QmUWmZnpZb6xFryNDeNU7KcJ1Af5oHy7fB9npU67sseEjR"

可以在下面这个网站查看到这个节点 https://stats.kittyhawk.wtf/

    二、去讨米获取点FIL  

  现在没有Fil,讨米是需要的,去他们的滴水管领取下就好了,也非常简单。

  go-filecoin address ls # 获取自己的钱包地址WALLET_ADDR

  去这个网址输入自己的钱包地址,http://user.kittyhawk.wtf:9797 ,获取交易信息的MESSAGE_CID。

  go-filecoin message wait ${MESSAGE_CID}

  然后验证下自己是否讨米成功。

  go-filecoin wallet balance ${WALLET_ADDR}

  三、抵押,设置价格开启挖矿  

  Filecoin将会有三种矿工:

  ● 存储矿工 

  ● 检索矿工 

  ● 修复矿工(后面会推出来)

  当然,现在主要专注在存储矿工这一块。

  go-filecoin 软件是开启了同步区块的进程,但是并没有开启一个矿工。这个矿工需要去挖Filecoin的区块,就需要提供存储容量空间的一个承诺到Filecoin的DSN网络。如果区块挖到了呢,就会给到相应的奖励。 

  一个矿工需要给出存储空间的承诺之外,还要给出相应的抵押,当然抵押就涉及到给Filecoin的区块链上发送消息,也就是说会有一些链上的操作,只要有操作就会有成本,Filecoin采用了和以太坊类似的gas机制,这里可以设置的有两个点,一个是gas的价格,这里是以Filecoin为标的的,另外是消耗gas的上限。 

  比如,可以用下面这行命令,来创建一个矿工,使用100FIL作为抵押,使用默认的扇区大小(256M),gas 的价格为0.001FIL,使⽤用的gas上限为1000gas。

  go-filecoin miner create 100 100 --gas-price=0.001 --gas-limit=300 --peerid `go-fi lecoin id | jq -r '.ID'`   # this may take a minute

  然后开启矿工挖矿。

go-filecoin mining start

  高级进阶  

给存储空间设置价格

  首先要明白,矿工相当于一个客户端,自己有存储空间,然后设置一个价格发送到链上,这样一个订单信息 是需要如下基本信息的。

  ● 存储空间的价格。单位是FIL/byte/block

  ● blocks的高度范围,这个订单信息是有效的

  ● 链上的矿工每挖到这个消息,所需要消耗的gas的价格 为这个订单信息,最多消耗的gas上限

  具体剖析下这个订单是如何工作的,存储空间的价格,按理来说,只要FIL/byte就够了,为何还有一个block 的概念。其实这非常好理解,区块高度是一个时间的概念,设置一个价格,这个价格是在一段时间内的价 格,过了这段时间后,价格自然就不算数了。

  深层次来理解,订单是在链上进行撮合交易的,不可能所有订单请求都在每个区块里进行撮合,这就需要所有矿工为自己的订单请求支付gas费用,那这里面就会有一个值得操作的空间,如果定价便宜,就越能被撮合交易,但是由于价格低,而导致收益低,但又有一个区块奖励。如果定价太高,就很难被撮合交易,同时还要支付gas费用,也是划不来的。硬盘矿机是支持通过共享硬盘存储空间来挖矿的挖矿设备。 不同于普通电脑,硬盘矿机是通过多张高容量硬盘,定制化、高兼容的机箱,以及专业的矿机架等专门针对挖矿需求,硬盘矿机极具扩展性,能针对不同的存储类虚拟货币运行不同的算法,做到一机多用。在比特币矿机更新换代速度日益放缓且投资回报日渐下降的今天,硬盘矿机不失为更好的区块链行业投资选择。贝特曼BT24 硬盘挖矿机(IPFS硬盘矿机),适用于各种POC虚拟货币挖矿,IPFS挖矿,功耗低、噪音小、杜绝ASIC芯片、实现人人挖矿,满足了众多消费者的需求,咨询V:Bit-miner。

  然而,这个价值设置并不是自动的,这里面存在一些可操作的空间。

  举例,我们设置价格为0.000000001 FIL/byte/block,对2880个blocks有效,一个message的价格为 0.001FIL/unit,消耗上限为1000gas。

  go-filecoin miner set-price --gas-price=0.001 --gas-limit=1000 0.000000001 2880

  其会返回如下信息:

  Set price for miner t26ro7zvtlsswdtus3fpp6467cvisb6kpwhnk6d3y to 0.000000001. Published ask, cid: zDPWYqFD6tZMKe9TQQYVFLTXqvFLYyfghEd8xTXc9hi5iakp3nBF. Ask confirmed on chain in block: zDPWYqFCzAQCXBuuqmYNGbGM6HkpD8Zyp9rMAh76o11H4ZY7n b4p.

  上面这个会在很短的时间内消耗掉我0.1FIL。道理是非常简单的,上面是用100个FIL作为抵押,然后100个扇区抵押到DSN市场,每一个扇区消耗掉的gas价格为0.001,算下来就是0.1FIL。从头到尾,一直有一个疑问,IPFS的数据到底要存在哪里,其实非常简单。设置一下就可以了。

  go-filecoin config sectorbase.rootdir /data/

  比如我就直接讲所有磁盘用LVM技术挂在 /data 目录下面,然后数据就都存在这下面就可以。

  挖了半天,假如还是没挖到一点FIL,算了,停下矿工,加大抵押和空间来试下。

  go-filecoin mining STOp rm -rf ~/.filecoin

  go-filecoin init --devnet-user --genesisfile=https://genesis.user.kittyhawk.wtf/ge nesis.car --repodir=/data/.filecoin go-filecoin dAEmon --repodir=/data/.filecoin go-filecoin address ls --repodir=/data/.filecoin # 去讨下米 go-filecoin message wait zDPWYqFCr17QWsfh9XgupovN8s7jW8sssb7j89sD9SryFAnwQKds --re podir=/data/.filecoin

  go-filecoin miner create 900 900 --gas-price=0.001 --gas-limit=3000 --peerid `go-f ilecoin id | jq -r '.ID'`   # this may take a minute

  go-filecoin mining start

你可能感兴趣的:(Filecoin测试网挖矿解析)