Filecoin-Lotus环境搭建

lotus是什么

lotus是filecoin分布式存储网络的一种技术实现
所有的filecoin的技术实现都遵从于filecoin规范
通过lotus实现了钱包,矿工,存储证明,时空证明,存储市场,文件检索等一系列的功能.

Filecoin的4种技术实现

go-filecoin(written in Go)-协议实验室开发
lotus(written in Go)-协议实验室		#重点
fuhon(written in C++)-soramitsu
forest(written in Rust)-chainsafe

Filecoin的扇区封装及挖矿流程

首先,安装挖矿软件并运行;其次创建节点并加入网络,加入之后同步链数据、创建钱包地址;
之后,挖矿需要质押FIL,需要购买或者借贷FIL给钱包地址打入FIL V丨hugoschan.
挖矿正式开始:矿工获取存储订单,数据密封(扇区封装,耗时最长),生成复制证明,验证数据,形成有效算力,获得打包权,提交时空证明,获得出块奖励。
算力越大的矿工,获得区块打包的权利或者概率越大,这是涉及两个参数:赢票率和出块率;赢票率就是获得选票的概率,出块率就是获得区块奖励的概率。
而在上面的流程中,扇区封装是一个不可忽略的因素。通过复制证明封装扇区是整个流程中计算量相对庞大的过程,从而生成该扇区独一无二的标识码。
一旦数据被封装,存储矿工将生成证明,运行SNARK来压缩证明;最后,将压缩后的结果提交到区块链,作为存储承诺的证明。

通俗易懂的理解

我们用割麦子来比喻挖矿,可能会更加通俗易懂一些。
首先,大家所谓的矿机其实就是存储集群,就像我们用来装麦子的袋子。没有存储数据的矿机是没有什么价值,就像没有装满麦子的袋子也是没有什么价值的。
扇区封装获得算力的过程就像割麦子一样。
我们用收割机来割麦子,就像我们通过搭建计算集群来对数据进行计算封装获取算力。
收割好了麦子装进袋子,就像将数据封装进矿机的硬盘里,然后将收割好的麦子拿去卖掉换钱的过程,就是参与区块打包获得区块奖励一样。收割的麦子越多卖的钱越多,封装的数据越多、算力越大,获得的区块奖励也越多。
但是,如果你收割好的麦子没有进行妥善保存,麦子在仓库里被老鼠吃掉了、淋雨受潮变质甚至被偷掉了,你收割的麦子也会损失掉。
而你封装好数据的扇区如果不能完成挑战提交时空证明,算力也会被扣罚。
与传统的比特币挖矿原理不同的是,比特币挖矿的算力是恒定的,矿机接入网络之后,每天的产币量就是一个恒定值。
但Filecoin挖矿则不同,Filecoin挖矿的算力值根据封装数据来定,这意味着它的算力是在不断累积的。

总结

通过以上分析我们可以看到,Filecoin挖矿的最基本在于有效算力,矿工的算力越高,赢票率越大,相应获得区块奖励的概率也就越大,挖矿收益越高。而扇区封装效率越快、有效算力增长速度自然越快,有效算力占比越高,其出块率也就越高,产币量越大。

根据官方文档,查看需要的配置要求

安装了macOS或Linux系统
8核CPU和32 GiB RAM
支持Intel SHA扩展的模型
有足够的空间来存储当前的Lotus链,最好在SSD存储介质上,该链每周增长约12 GiB.

安装Ubuntu系统
安装Ubuntu系统的教程

配置系统环境

#软件依赖
sudo apt install mesa-opencl-icd ocl-icd-opencl-dev gcc git bzr jq pkg-config curl clang build-essential hwloc libhwloc-dev wget -y && sudo apt upgrade -y
#lotus 需要 rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
#软件依赖
wget -c https://golang.org/dl/go1.15.5.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local
#使用本地安装包安装
rz go1.15.5.linux-amd64.tar.gz
tar xf go1.15.5.linux-amd64.tar.gz -C /usr/local

lotus加速(中国)

##加入变量中
vim /etc/profile    
#Lotus
export IPFS_GATEWAY=https://proof-parameters.s3.cn-south-1.jdcloud-oss.com/ipfs/
#Go语言
export GOPROXY=https://goproxy.cn
#生效
source /etc/profile

安装Filecoin-lotus

#下载源码
#第一个是github
git clone https://github.com/filecoin-project/lotus.git
#第二个是码云(国内下载快)
git clone https://gitee.com/bd_bd/lotus.git
#进入lotus目录
cd lotus/
#编译安装
make clean all 或者 make clean && make all 
make install

开始运行filecoin-lotus

扫描二维码关注公众号,回复: 12449601 查看本文章
#安装成服务
make install-daemon-service
make install-miner-service
##启动运行同步区块命令verbose模式
lotus daemon
systemctl start lotus-daemon # 服务模式
#注:刚运行的终端不要关闭,接下来,打开一个新的终端界面,用来查看节点状态
lotus net peers | wc -l 				#检查区块链节点连接数量
lotus sync wait 						#检查区块链同步高度

lotus命令整理
lotus启动停止

# 首次启动,从快照导入链数据
lotus daemon --import-snapshot <filename>
# 普通启动
lotus daemon
# 停止
lotus daemon stop
# 导入快照不启动
lotus daemon --import-snapshot --halt-after-import <filename>

修改矿工地址(owner/worker/control)

# 查看矿工关联的地址信息
lotus-miner actor control list
# 修改owner地址
lotus-miner actor set-owner --really-do-it <address>
# 修改control地址
lotus-miner actor control set --really-do-it <address1 address2 ...>
# 修改worker地址
lotus-miner actor propose-change-worker <address>
lotus-miner actor confirm-change-worker <address>

从矿工账户转FIL到owner地址

lotus-miner actor withdraw <amount>

管理钱包

# 创建钱包
lotus wallet new bls	
lotus wallet new 	
lotus msig create singeraddress1 signersaddress2..	
# 备份钱包
lotus wallet export <address> > <address>.key
# 导入钱包
lotus wallet import <address>.key
# 查看钱包地址
lotus wallet list
# 默认钱包地址
lotus wallet deault # 查看默认钱包地址
lotus wallet set-default <address> # 更改默认钱包地址
# 查看钱包余额(default)
lotus wallet balance
# 发送FIL
lotus send <receive address> 3	#从默认钱包发送
lotus send --from <send address> <receive address> 3	#从指定钱包发送

此篇文章到此就结束了!喜欢的小伙伴请收藏点赞关注三连哦!
下一篇我们继续了解Filecoin-lotus

猜你喜欢

转载自blog.csdn.net/HYXRX/article/details/113737644
今日推荐