Geth Centosにインストール


注意:仮想マシンへのインストールを推奨します(Template VMとして、その後のCopyはマルチノードのプライベートチェーンを構成します)
cmake 3をダウンロードします.x:(コンパイルにはcmake 3.xバージョンが必要):
wget https://cmake.org/files/v3.3/cmake-3.3.2.tar.gz
#   
tar zxvf cmake-3.3.2.tar.g
cd cmake-3.3.2
#   
./configure
make
make install

/usr/local/cmakeに移動:
mkdir /usr/local/cmake
mv -f cmake-3.3.2/* /usr/local/cmake/
#           
vim /etc/profile
#      
PATH=/usr/local/cmake/bin:$PATH
export PATH

次に、
#           
source /etc/profile
#      cmake    
cmake --version

Git、Nodejs、gcc-c++、ntp、epelなどの補助ツールをインストールします.
yum update -y && yum install git bzip2 gcc-c++ ntp epel-release nodejs -y

Golangのインストール(go-ethereumはgolangが作成した):
wget https://storage.googleapis.com/golang/go1.10.2.linux-amd64.tar.gz
tar zxvf go1.10.2.linux-amd64.tar.gz 
mv go /usr/local/
echo "export GOROOT=/usr/local/go" >> /etc/profile 
echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile
source /etc/profile

go-ethereumをダウンロードするには:
git clone https://github.com/ethereum/go-ethereum.git  
cd go-ethereum/
make all
echo "export PATH=$PATH:/root/go-ethereum/build/bin" >> /etc/profile
source /etc/profile

ネットワーク時間同期を開始し、ファイアウォールを開き、8087と30303ポート(gethで使用されるポート)を開きます.
systemctl enable ntpd 
systemctl start ntpd
systemctl start firewalld
firewall-cmd --zone=public --add-port=8087/tcp --permanent
firewall-cmd --zone=public --add-port=30303/tcp --permanent

作成genesiso.jsonファイル:
cd ~
vim genesis.json

{  
  "nonce": "0x0000000000000042",  
  "timestamp": "0x00",  
  "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",  
  "extraData": "0x00",  
  "gasLimit": "0x80000000",  
  "difficulty": "0x400",  
  "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",  
  "coinbase": "0x2D356ee3F5b8718d8690AFCD31Fe2CB5E602677e",  
  "alloc": {},  
  "config": {  
    "chainId": 15,  
    "homesteadBlock": 0,  
    "eip155Block": 0,  
    "eip158Block": 0  
  }  
}  

#        
mkdir -p /root/ethbase/chain
cd root & geth --datadir "/root/ethbase/chain" init genesis.json
#     log
geth --dev console 2>> geth_dev_log

次に、
> eth.accounts
"0x3341e796e5d43919287d49a86cb595d74ddea657"
すべてok、その後gethに対する操作です