文/robin
html
这是「区块链技术指北」的第 37 篇文章。node
若是对我感兴趣,想和我交流,个人微信号:Wentasy,加我时简单介绍下本身,并注明来自「区块链技术指北」。同时我会把你拉入微信群「区块链技术指北」。BTW,李笑来老师也加入了个人知识星球,文末有加入方式。git
题图来自: © ChainONE / Original / chainon.iogithub
截止目前,EOS 主网区块数量达到 1093 万,区块数据达到数十 G,备份数据也达到了 16G。若是从头开始同步区块数据,须要数天的时间。随着区块不断累加,同步的时间愈来愈长。如何快速构建 Fullnode,这成为每个 BP、DApp 开发者等用户须要考量的问题。json
本文给出根据区块备份数据快速构建 Fullnode 的方法。浏览器
这里给出两个 EOS 区块数据备份服务,一是由 EOS Store 提供,二是由 EOS Cleaner 提供。bash
以 EOS Store 提供的服务为例,访问 s3-ap-northeast-1.amazonaws.com/eosstorebp 会得到 XML 格式的数据,Contents 中的 Key 表示文件名,LastModified 表示修改时间,Size 表示备份文件大小。EOS Store 天天备份两次,分别是 00:30 和 12:30,若是咱们得到最新的一次备份,能够执行如下命令提供:服务器
$ wget https://s3-ap-northeast-1.amazonaws.com/eosstorebp/2018-08-13-12_30_20.tar.gz
复制代码
若是本身的服务器是国内云服务商提供,会发现没法访问,不着急,能够用一台国外 VPS 作中转。具体中转方法笔者能够后续提供。微信
EOS Cleaner 提供的服务比较友好,访问 s3-ap-northeast-1.amazonaws.com/data.eos/in… 能够看到一个文件下载连接,若是不想本地下载,浏览器右键拷贝下载连接便可。post
本文以 EOS-Mainnet
为例。
$ cd /data
$ git clone https://github.com/EOS-Mainnet/eos --recursive
$ cd eos
$ git pull
$ git checkout mainnet-1.1.4
$ git submodule update --recursive
$ sed -i.bak '16i set( CORE_SYMBOL_NAME "EOS" )' CMakeLists.txt
$ ./eosio_build.sh
复制代码
关于如何加速 GitHub,能够参考 GitHub 加速最佳实践。
接着咱们启动 nodeos,主网 Fullnode 相关的配置文件能够访问以下连接下载:
启动 Fullnode 相关命令以下:
$ mkdir /data/eos/build/programs/nodeos
$ git clone https://github.com/superoneio/eos-mainnet
$ mkdir -p data logs config tmp
$ cp eos-mainnet/config.ini config/config
$ cp eos-mainnet/genesis.json .
$ cp eos-mainnet/*.sh .
$ chmod +x *.sh
复制代码
解压 nodeos 备份数据,启动 nodeos 进程,建议以普通用户启动,例如本文的 eosio。另外,注意此处的 --hard-replay-blockchain
参数。
$ su - eosio -s /bin/bash
$ cd /data/eos/build/programs/nodeos/tmp
$ tar -zxvf 2018-08-13-12_30_20.tar.gz
$ mv state blocks ../data
$ chown eosio:eosio -R /data/eos
$ su - eosio -s /bin/bash
$ cd /data/eos/build/programs/nodeos
$ echo "nohup /data/eos/build/programs/nodeos/nodeos \ --hard-replay-blockchain --data-dir ./data \ --config-dir ./config > ./logs/eos.log 2>&1 & echo $! > eos.pid" > start.sh
$ bash start.sh
复制代码
使用以下命令查看同步进度。
$ /data/eos/build/programs/cleos/cleos get info
复制代码
快速构建 Fullnode 对 BP、DApp 开发者等都很是有帮助,但愿本文可以给读者一个指引。
「区块链技术指北」同名 知识星球,二维码以下,欢迎加入。BTW,李笑来老师也加入了。
「区块链技术指北」相关资讯渠道:
同时,本系列文章会在如下渠道同步更新,欢迎关注:
原创不易,读者能够经过以下途径打赏,虚拟货币、美圆、法币均支持。
–EOF–