Centos 7 安装 以太坊环境
安装系统依赖库
##yum update -y && yum install git wget bzip2 vim gcc-c++ ntp epel-release nodejs cmake -y
# 安装编译工具和库yum -y groupinstall 'Development Tools'# 安装和设置 ntp 时间校准服务yum -y install ntpsystemctl enable ntpd.servicesystemctl start ntpd.service
安装Go
wget https://dl.google.com/go/go1.10.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.10.linux-amd64.tar.gzecho 'export GOROOT=/usr/local/go' >> /etc/profile echo 'export PATH=$PATH:$GOROOT/bin' >> /etc/profile echo 'export GOPATH=/root/go' >> /etc/profileecho 'export PATH=$PATH:$GOPATH/bin' >> /etc/profilesource /etc/profile验证
$ go version
go version go1.10 linux/amd64
克隆编译项目go-ethereum
git clone https://github.com/ethereum/go-ethereum.git
cd go-ethereum
make all
在path中加入geth路径
echo 'export PATH=$PATH:/usr/local/go-ethereum/build/bin' >> /etc/profile
source /etc/profile
验证
geth version
GethVersion: 1.8.2-unstableGit Commit: bd6879ac518431174a490ba42f7e6e822dcb3ee1Architecture: amd64Protocol Versions: [63 62]Network Id: 1Go Version: go1.10Operating System: linuxGOPATH=/root/goGOROOT=/usr/local/go
配置私有链初始状态,新建文件genesis.json
{ "config": { "chainId": 22, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "alloc" : {}, "coinbase" : "0x0000000000000000000000000000000000000000", "difficulty" : "0x400", "extraData" : "", "gasLimit" : "0x2fefd8", "nonce" : "0x0000000000000038", "mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "timestamp" : "0x00" }
初始化区块链,生成创世区块和初始状态
geth --datadir /opt/data init /opt/eth/genesis.json
启动区块链
geth --datadir ./data0 --networkid 11 console