先总体说一下步骤:
1.操作系统准备 linux(centos6.7)
2. golang安装
3.下载以太坊
4. 安装以太坊
5. 创世区块文件的准备
6. 创世区块初始化
7. 以太坊启动
=====================================
1.最好是centos6.5以上的操作系统
2. 使用yum命令安装golang语言
[root@localhost src]# yum install golang
3. 下载以太坊源码,演示用的链接是 https://github.com/ethereum/go-ethereum/archive/v1.7.3.zip
[root@localhost src]# wget https://github.com/ethereum/go-ethereum/archive/v1.7.3.zip
[root@localhost src]# unzip v1.7.3.zip
[root@localhost src]# cd go-ethereum-1.7.3/
4. 安装以太坊
[root@localhost src]# make
5. 创世区块文件的准备
在go-ethereum-1.7.3/build/bin目录下创建init.json的文本文件,内容如下:
{ "config":
{
"chainId": 10,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
},
"alloc" : {},
"coinbase" : "0x0000000000000000000000000000000000000000",
"difficulty" : "0x02000000",
"extraData" : "",
"gasLimit" : "0x2fefd8",
"nonce" : "0x0000000000000042",
"mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp" : "0x00"
}
6. 创世区块初始化
在go-ethereum-1.7.3/build/bin目录下执行以下命令以完成创世区块的创建:
[root@localhost bin]# ./geth --datadir "/root/chain" init init.json
注意:上面命令中–datadir后面的 /app/chain可以任意指定,无需提前创建,但是一定要保证有足够的磁盘空间。init.json是我们在上一步创建的文件,注意文件名要一致。
7. 以太坊启动
[root@localhost bin]# ./geth --rpc --rpccorsdomain "*" --datadir "/root/chain" --port "30303" --rpcapi "db,eth,net,web3" --networkid 100000 console
注意:上面命令中–datadir 后的”/app/chain”要跟我们上一步的–datadir 参数一致。
一直到出现Welcome to the Geth JavaScript console! 句话,并自动进入geth的命令行则说明以太坊私有链安装成功了。
到目前为止,我们的私有链就搭建成功了。