filecoin挖矿节点如何自动获取FIL代币,如何自动重启 一、如何实现自动获取代币 filecoin测试网节点,需要钱包地址有虚拟FIL,才能创建矿工,才能上传数据,虚拟FIL需要到官方水龙头网站获取http://user.kittyhawk.wtf:9797/,每一小时可获取一次,每次获取耗时10分钟。获取代币实际是一种转账,是``这个地址,向你的账户转账,数额为1000FIL。 然而,目前filecoin网络bug较多,极不稳定,有时几小时不出块,不出块就无法转账,也就无法获取到FIL,所以在向水龙头网站提交钱包地址时,常常遇到发送资金失败的错误 failed to send funds 这种情况只能等到filecoin网络正常出块,才能获取到FIL。 其次,在网络正常的时候,也不一定每次都能获取到FIL,经常在设置等待之后,等了10分钟,等到的是网络超时。 有时候我们工作的时候,无法获取到FIL,而晚上休息的时候,filecoin网络却可能很正常,获取FIL非常快。 所以为了尽可能节省时间,最好通过脚本定时自动获取FIL。 有些filecoin节点能上传几TB的数据,因为他们的账户有几万个FIL,比如有一个账户曾经有9万个FIL,这么多FIL,不可能全都手动去获取,只能定时自动获取。 方法一:通过shell脚本死循环去获取 命令如下,就不解释了 #!/usr/bin/env bash while [[ true ]]; do #statements cd $HOME/filecoin addr=`./go-filecoin address default` MESSAGE_CID=`curl -X POST -F "target=${addr}" "http://user.kittyhawk.wtf:9797/tap" | cut -d" " -f4` echo $MESSAGE_CID ./go-filecoin message wait $MESSAGE_CID sleep 3700s done 每隔3700秒,也就是一小时,自动获取一次FIL。 nohup sh getfil.sh & 把脚本放到后台去自动执行,nohup表示忽略挂起命令,&表示后台执行。 方法二:通过crontab定时器自动执行脚本 获取FIL命令 #!/usr/bin/bash cd $HOME/filecoin addr=`./go-filecoin address ls|head -n 1` MESSAGE_CID=`curl -X POST -F "target=${addr}" "http://user.kittyhawk.wtf:9797/tap" | cut -d" " -f4` echo $MESSAGE_CID ./go-filecoin message wait $MESSAGE_CID Mac上自带crontab,可以直接使用,Linux系统上需要自己安装, 安装命令 sudo yum install vixie-cron sudo yum install crontabs 安装完以后开启crontab服务sudo service crond start 查看定时任务crontab -l,无任务时没有任何输出,有定时任务时,会输出任务列表 编辑任务,输入命令crontab -e,终端会进入vim编辑器, 0 * * * * ~/getfil.sh,表示每小时执行一次getfil.sh脚本,也就是每小时去获取一次FIL。 crontab命令具体用法参考网站https://crontab.guru/every-1-hour。 二、filecoin节点如何实现自动重启 目前filecoin测试网不稳定,节点经常自动挂机,10月10日晚上有超过150个节点都挂掉了。这种情况正式网上线后也可能会遇到,所以一定要通过脚本,实时监控filecoin节点运行状况,在节点挂掉之后,自动重启 #!/usr/bin/env bash while [[ true ]]; do #statements #获取节点ID processid=$(lsof -i:3453 | awk NR==2 | awk '{print $2}') echo $processid #如果ID长度为0,说明节点挂掉了,则重启节点 if [[ -z $processid ]]; then #statements cd $HOME/filecoin nohup ./go-filecoin daemon & #等待五分钟,开始挖矿 #sleep 300s #cd $HOME/filecoin && ./go-filecoin mining start fi #每30分钟检测一次 sleep 1800s done filecoin占用的固定端口是3453,在初始化节点时可以看到 Swarm listening on: /ip4/127.0.0.1/tcp/6000 Swarm listening on: /ip4/172.19.0.8/tcp/6000 12:58:49.459 INFO chain.stor: start loading chain at tipset: { bafy2bzaceaxemeuwqe3cqvlkim3eliiocn7wywualrakyehziuosxa6k4y5fi }, height: 0 store.go:139 12:58:49.461 INFO chain.stor: finished loading 0 tipsets from { bafy2bzaceaxemeuwqe3cqvlkim3eliiocn7wywualrakyehziuosxa6k4y5fi } store.go:183 API server listening on /ip4/127.0.0.1/tcp/3453 API监听端口为3453,查看3453端口,可以查到go-filecoin的进程ID [hongkong@VM_0_8_centos ~]$ lsof -i:3453 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME go-fileco 16164 hongkong 24u IPv4 17720673 0t0 TCP VM_0_8_centos:pscupd (LISTEN) 每30分钟查看一次3453端口,就可以知道filecoin进程是否挂掉了。 脚本很简单,几分钟就写完了,但是能解放时间,解决很重要的问题。 三、filecoin数据存储在什么地方 节点运行数据 filecoin节点初始化后,会自动生成两个文件夹,两个文件夹中的数据一样,其中一个是备份。 .filecoin .filecoin-20191013-125603-v002 里面保存了节点运行的数据,包括节点的配置文件,节点的版本,私钥和钱包数据。 api badger chain config.json deals keystore repo.lock snapshots version wallet 客户端传给矿工的数据 创建矿工成功,开始挖矿后,会自动生成一个名为filecoin-的文件夹。 里面有两个文件夹,其中是客户端给矿工节点上传的数据,数据不可直接读取,只能通过filecoin 客户端命令,根据订单CID来读取。 seal文件夹中的数据时已经存储完成,已经密封的数据,staged文件夹中是正在存储的数据 如何更改缓存及矿工存储目录 节点运行数据,也就是filecoin的缓存数据,以及矿工存储的数据,都默认保存在用户目录下,节点部署后不可更改,只能在初始化时指定。 go-filecoin init --sectordir=/home/data/filecoin 使用--sectordir参数,就可以把矿工存储数据放到/home/data/filecoin文件夹下。 filecoin测试网bug很多,部署过程中会遇到各种奇葩的error,都有哪些error,如何解决,请继续关注。 —- 编译者/作者:Online 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
filecoin挖矿节点如何自动获取FIL代币如何自动重启
2019-10-14 Online 来源:区块链网络
- 上一篇:比特币今天有机会吗?
- 下一篇:由于SEC,电报可能会延迟TON加密货币
LOADING...
相关阅读:
- 把股市的盈利部分投资币市是明智的2020-08-02
- box做市已下车 | 小时版本的ampl,Ruze机制如何,能否参与?| 见过V神唱2020-08-02
- Newdex联手Defibox重磅上线Box挖矿,开启DeFi新征途2020-08-02
- 453期:以太坊涨这么多了,到底后面还会不会涨?现在上车还来得及不2020-08-02
- 分布式存储加持区块链 数据将追溯、监控、存储、共享2020-08-02