以太坊同步全节点
第一步:GO语言的安装
1. 这里安装的是go1.10版本,因为,低版本可能导致无法编译后边的以太坊安装包。yum安装的是1.09版本,所以要手动下载安装
wget https://dl.google.com/go/go1.10.linux-amd64.tar.gz
2. 解压go安装包
tar -C /usr/local -xzf go1.10.linux-amd64.tar.gz
3. 添加go环境变量
echo 'export GOROOT=/usr/local/go' >> /etc/profile
echo 'export PATH=$PATH:$GOROOT/bin'>> /etc/profile
echo 'export GOPATH=/home/go' >>/etc/profile
echo 'export PATH=$PATH:$GOPATH/bin'>> /etc/profile
4.刷新环境变量
source /etc/profile
5.验证go语言是否安装成功
go version
第二步:安装其他安装以太坊需要的环境组件
1.安装git nodejs gcc- c++ ntp
yum install -y git nodejs gcc-c++ ntp
第三步:编译安装以太坊
1.下载以太坊源码
cd /usr/local
git clone https://github.com/ethereum/go-ethereum.git
2.编译
cd go-ethereum
make all
3.安装cmake
cd ~
wget https://cmake.org/files/v3.9/cmake-3.9.2.tar.gz #下载cmake安装包
tar xvfcmake-3.9.2.tar.gz
cd cmake-3.9.2
./configure&& make && make install
4.检查安装结果
systemctlis-enabled chronyd #时间同步服务
cmake --version
geth version
第四步:同步以太坊节点
1. 看磁盘空间有没有200G以上,如果没有,需要挂载一个(推荐500G,服务器4核8G)
2. 开启同步:
cd ~
cd go-ethereum/build/bin/
nohup ./geth --datadir /mnt/data/ethereum --cache 4096 --rpc --rpcport 8545 --rpcaddr 0.0.0.0 --ws --wsport 8546 --wsorigins "*" >geth.log 2>&1 &
3. 开放端口号:8545,8546,30303,8078
4. 另外打开一个终端访问
cd /usr/local/go-ethereum/build/bin/ =>先进入到bin目录
./geth attach /mnt/data/ethereum/geth.ipc
5. 查看连接
net.peerCount =>查看连接的节点数,会慢慢增加到25个
6. 同步完成
eth.syncing =>如果输出false,则同步到最新区块