以太坊(一)
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 ntp systemctl enable ntpd.service systemctl 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.gz
echo ‘export GOROOT=/usr/local/go‘ >> /etc/profile
echo ‘export PATH=$PATH:$GOROOT/bin‘ >> /etc/profile
echo ‘export GOPATH=/root/go‘ >> /etc/profile
echo ‘export PATH=$PATH:$GOPATH/bin‘ >> /etc/profile
source /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
Geth
Version: 1.8.2-unstable
Git Commit: bd6879ac518431174a490ba42f7e6e822dcb3ee1
Architecture: amd64
Protocol Versions: [63 62]
Network Id: 1
Go Version: go1.10
Operating System: linux
GOPATH=/root/go
GOROOT=/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
以太坊(一)