快速构建 EOS 主网 Fullnode
文/温国兵
这是「区块链技术指北」的第 37 篇文章。
如果对我感兴趣,想和我交流,我的微信号:Wentasy,加我时简单介绍下自己,并注明来自「区块链技术指北」。同时我会把你拉入微信群「区块链技术指北」。BTW,李笑来老师也加入了我的知识星球,文末有加入方式。
题图来自: © ChainONE / Original / chainon.io
快速构建 Fullnode
截止目前,EOS 主网区块数量达到 1093 万,区块数据达到数十 G,备份数据也达到了 16G。如果从头开始同步区块数据,需要数天的时间。随着区块不断累加,同步的时间越来越长。如何快速构建 Fullnode,这成为每一个 BP、DApp 开发者等用户需要考量的问题。
本文给出根据区块备份数据快速构建 Fullnode 的方法。
备份服务
这里给出两个 EOS 区块数据备份服务,一是由 EOS Store 提供,二是由 EOS Cleaner 提供。
以 EOS Store 提供的服务为例,访问 https://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 提供的服务比较友好,访问 https://s3-ap-northeast-1.amazonaws.com/data.eos/index.html 可以看到一个文件下载链接,如果不想本地下载,浏览器右键拷贝下载链接即可。
编译
本文以 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,李笑来老师也加入了。
「区块链技术指北」相关资讯渠道:
- 「区块链技术指北」同名知识星球,https://t.xiaomiquan.com/ZRbmaU3
- 官网,https://chainon.io
- 官方博客,https://blog.chainon.io
- 官方社区,https://bbs.chainon.io
- Telegram Channel,https://t.me/BlockchainAge
- Telegram Group,https://t.me/bcage
- Twitter,https://twitter.com/bcageone
- Facebook,https://www.facebook.com/chainone.org
- 新浪微博,https://weibo.com/BlockchainAge
同时,本系列文章会在以下渠道同步更新,欢迎关注:
- 「区块链技术指北」同名微信公众号(微信号:BlockchainAge)
- 个人博客,https://dbarobin.com
- 知乎,https://zhuanlan.zhihu.com/robinwen
- 简书,https://www.jianshu.com/c/a37698a12ba9
- Steemit,https://steemit.com/@robinwen
- Medium,https://medium.com/@robinwan
- 掘金,robinwen@juejin.im
- EOS LIVE,https://eos.live/user/robin
- 币乎,https://bihu.com/people/12109
原创不易,读者可以通过如下途径打赏,虚拟货币、美元、法币均支持。
- BTC: 3QboL2k5HfKjKDrEYtQAKubWCjx9CX7i8f
- ERC20 Token: 0x8907B2ed72A1E2D283c04613536Fac4270C9F0b3
- PayPal: https://www.paypal.me/robinwen
- 微信打赏二维码
–EOF–
Leave 快速构建 EOS 主网 Fullnode to:
Read more #eos posts
Best Posts From Robin Wen
We have not curated any of robinwen's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.
More Posts From Robin Wen
- 币安说 Binance Talking | 004 合规稳定币 Binance USD(BUSD)
- 币安说 Binance Talking | 003 币安双合约争霸赛,等你来战
- 币安说 Binance Talking | 002 币安宝,你也可以享有睡后收入
- 币安说 Binance Talking | 001 怎么样在币安开户
- 值得关注的跨链项目
- 匿名货币 2.0 SERO
- 优化 EOS 交易记录查询
- EOS 去中心化交易所
- 个人 Blog 时代真的终结了吗
- EOSIO MySQL 插件 issue 2
- EOSIO MySQL 插件 issue 1
- EOS 钱包浅谈
- EOS 区块链数据实时异构到 MongoDB
- 快速构建 EOS 主网 Fullnode
- 区块链技术指北社区启用新域名 chainon.io
- 构建 EOS 区块链浏览器
- 构建 EOS 区块链浏览器 API
- EOS 区块链数据实时异构到 MySQL
- 区块链太火,小心你的服务器被动挖矿
- 区块链技术指北社区(Chain One Community)规划