18910140161

CentOS 6.5上搭建以太坊私有链教程

顺晟科技

2021-06-16 10:45:18

398

在学习和使用以太网的过程中,我们遇到了很多坑和弯路。用邰方作为关键词搜索百度或者谷歌,虽然可以找到很多结果,但其实对于我们来说,这些结果有两个问题:1。网上的这些文章都是互相抄袭的。虽然看起来很多,其实也就两个;2.虽然有些文章介绍的步骤看似合理流畅,但实际运行起来还是有些困难。本文将以最简单、最正确的方式构建以太网的私有链。首先,它将成为我们学习自己成就的记录。第二,会给后人一些指导,让他们像以前一样少走弯路。这个系列偏向实战,会以连载形式录制。这一次我们将介绍如何在CentOS6.5上构建Ethereum私有链。

让我们大致说说步骤:

1.操作系统准备

2.golang装置

3.下载以太网

4.安装以太网

5.创建块文档的准备

6.创建块的启动

7.以太网启动

以下以图片和文字的形式详细介绍了每一步:

1.操作系统准备

我们使用的操作系统是CentOS6.5,安装后需要系统能够访问互联网,因为下面的步骤需要在线安装Ethereum所需的环境。系统安装后,执行cat /etc/redhat-release以确认系统版本。以下是我们执行的结果:

[root @ ZC _ VM _ 10 _ 100 _ 142 _ 62 ~]# cat/etc/red hat-发布

CentOS版本6.5(最终版)

2.golang装置

执行rpm-IVH http://FTP . riken . jp/Linux/fedora/epel/6/i386/epel-release-6-8 . no arch . rpm安装yum source。以下是我们执行结果的截图:

安装以太网时的Yum源安装

注意:

(1).这一步需要联网,这就是我们在上一步中强调系统需要能够访问互联网的原因。

(2).注意安装结果是否成功,如我们上面截图的第二个红框所示

yum源安装成功后,可以使用以下命令安装golang:

yum install golang

以下是我们安装的结果:

yum install golang

注意:

(1)有一步需要确认,输入小写y,然后按enter键

(2)注意安装结果是否成功

3.下载以太网源代码

我们从https://github.com/ethereum/go-ethereum/releases/tag/v1.4.12.的地址下载了zip压缩格式的源代码,为了防止以后使用该地址,我们把zip压缩格式的源代码放在了这个网站上。地址是:http://www.huiyanghua.com/js/go-ethereum-1.4.12.zip

4.安装以太网

将下载的源码包解压成zip格式,进入解压目录。

我们的结果如下:

然后在go-ethereum-1.4.12目录下执行make命令开始编译。

我们的结果如下:

编译成功后,go-ethereum-1.4.12目录会出现一个build/bin等子目录,这个子目录会出现一个geth等可执行文件,如上图所示。

这样,我们的以太馆就安装好了。

5.创建块文档的准备

在go-ethereum-1.4.12/build/bin目录下,创建一个init.json的文本文件,内容如下:

{

随机数' : ' 0000000000000042 ',

mix hash ' : ' 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

难度' : '04000 ',

alloc': {},

coin base ' : ' 00000000000000000000000000000000000000000000 ',

时间戳' : '000 ',

括号' : ' 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

引渡数据' : '基因块',

gasLimit': '0xffffffff '

}

我们的结果如下:

6.创建块的启动

在go-ethereum-1.4.12/build/bin目录中执行以下命令,以完成创建块的创建:/geth-data dir '/app/chain ' init . JSON

注意:上面命令中的/app/chain after - datadir可以任意指定,不需要提前创建,但是要保证有足够的磁盘空间。Init.json是我们在上一步中创建的文件。注意文件名的一致性。

执行完成后,将出现类似以下内容的消息:

I 0927 14:31:07.374864 ethdb/数据库。go :82]分配16MB缓存和16个文件句柄给/app/chain/chaindata

I 0927 14:31:07.402544 cmd/geth/main。go :299]成功编写了发生块和/或链规则集: 244469 eaad 4c 9 c7a 245 fa 4962 a6 ed 7346 e 9925317 f 222 b 580 e 7f 313 f 9722657

我们的执行结果如下:

这样,创世区块就初始化完成了,下面将要进行最后一步,以太坊的启动。

7.以太坊启动

仍然在go-ethereum-1.4.12/build/bin目录下执行,执行的命令是:/geth-RPC-RPC cordomain ' *-data dir '/app/chain '-port ' 30303 '-RP capi ' db,eth,net,web3' - networkid 100000控制台

注意:上面命令中- datadir后的/app/chain '要跟我们上一步的- datadir参数一致。

执行完此命令后将会出现类似以下信息:

I 0927 14:32:17.538013 ethdb/数据库。go :82]分配128MB缓存和1024个文件句柄给/app/chain/chaindata

I 0927 14:32:17.554665 ethdb/数据库。go :169]关闭db :/app/chain/chain数据

I 0927 14:32:17.554722 cmd/utils/flags。go :592]警告:没有设置以太网库,也没有找到默认帐户

I 0927 14:32:17.555722 ethdb/数据库。go :82]分配128MB缓存和1024个文件句柄给/app/chain/chaindata

我0927 14:32:17。575639 eth/后端。go:621]升级日志布卢姆垃圾箱

I 0927 14:32:17.575767 eth/后端。go:629]升级完成于138.089 s

I 0927 14:32:17.575802 ethdb/数据库。go :82]分配16MB缓存和16个文件句柄给/app/chain/dapp

I 0927 14:32:17.580530 eth/后端。go:172]协议版本: [63 62],网络Id: 100000

I 0927 14:32:17.580584 eth/后端。go:201]区块链分贝版本:3

10927 14:323333366 . 10927核心/区块链。go :206]最后标题: # 0[244469 ea…]TD=0

10927 14:323333366 . 10927核心/区块链。转到:207]最后一个块: # 0[244469 ea…]TD=0

10927 14:323333366 . 10927核心/区块链。go :208]Fast block : # 0[244469 ea…]TD=0

I 0927 14:32:17.582008 P2P/Server。go :313]启动服务器

I 0927 143:32:19.644094 P2P/discover/UDP。go :217]列表,enode ://e1f 793 e 06289097 df 035 e 55d 68 f 7667658630 b 48 C1 E7 FD 70 b5 dee 7445 db 5 bec 9d 808 b 6 f 329 b 74954 e 7800d 34988880 b 5 db 5 bec 9d 808 b 6 f 329 b 74954

10927 14:323333366 . 5868686866节点/node.go:366] HTTP端点打开ed : http://本地主机:8545

I 0927 14:32:19.652471 P2P/服务器。go :556]监听【:】:3030303】3360303

10927 14:323333366 . 10927节点/node.go:296] IPC端点opened: /app/chain/geth.ipc

欢迎使用Geth JavaScript控制台!

一直到出现欢迎使用Geth JavaScript控制台!句话,并自动进入桀斯的命令行则说明以太坊私有链安装成功了。

注意:以上命令中- datadir参数后面的/app/chain '要和上一步保持一致。

我们的结果如下:

到目前为止,我们的私有链就搭建成功了。下一次,我们会介绍账户创建,挖矿,转账等操作。

相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航