CentOS7下从零开始安装ethereum/以太坊

CentOS7下从零开始安装ethereum/以太坊

前言

本人也是第一次接触linux,在安装的过程中遇到了很多问题,查找发现没有很全面的一个安装以太坊的教程,这里总结一下我的方法,有问题的话希望各位大佬指出。

添加 sudo写权限

先进入root

su 
chmod u+w /etc/sudoers
vi /etc/sudoers

找到root ALL=(ALL) ALL,在他下面添加klose ALL=(ALL) ALL并保存(添加按一下a键,添加完保存按esc退出插入模式后输入:wq)

chmod u-w /etc/sudoers
exit

brew的安装需要新版本的git,curl,CentOS 7自带版本过低,需要更新。

安装git 2.9.0

下载并安装git 2.9.0

wget --no-check-certificate https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.0.tar.gz
tar -zxvf git-2.9.0.tar.gz
cd git-2.9.0
sudo yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker kernel-headers glibc-headers gcc-c++
./configure --prefix=/usr/local/git
make 
sudo make install

环境配置

vim /etc/profile

在最后添加(这里一并添加了之后的环境变量)

export PATH=/usr/local/git/bin:$PATH
export PATH=/usr/local/git/libexec/git-core:$PATH
export PATH=/usr/local/openssl:$PATH
export PATH=/usr/local/curl:$PATH

立即生效

source /etc/profile

接下来为了不每次打开shell都重新配置环境变量

vim ~/.bashrc

加一句

source /etc/profile
vim ~/.bash_profile

加一句

source ~/.bash_profile

查看git路径和版本,确定git成功安装,移除Centos7自带的旧版本git,连接新版本git

which -a git
git --version
sudo mv /usr/bin/git /usr/bin/git.bak
sudo ln -s /usr/local/git/bin/git /usr/bin/git

安装openssl 1.1.1l

wget --no-check-certificate https://www.openssl.org/source/openssl-1.1.1l.tar.gz
tar -xzvf openssl-1.1.1l.tar.gz
cd openssl-1.1.1l
./config --prefix=/usr/local/openssl --openssldir=/usr/local/ssl shared zlib
make
sudo make install

移除旧版本openssl,创建软连接

sudo mv /usr/bin/openssl /usr/bin/openssl.bak
sudo mv /usr/include/openssl /usr/include/openssl.bak
sudo ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
sudo ln -s /usr/local/openssl/include/openssl /usr/include/openssl

更新配置

sudo ldconfig
sudo ldconfig -v

查看openssl版本,为1.1.1.l即安装成功

openssl version 

安装curl 7.54.0

wget --no-check-certificate https://curl.haxx.se/download/curl-7.54.0.tar.gz
tar  -zxf  curl-7.54.0.tar.gz
cd curl-7.54.0
./configure --prefix=/usr/local/curl --with-ssl=/usr/local/openssl  --libdir=/usr/lib64
make
sudo make install

替换系统curl,创建软连接

sudo mv /usr/bin/curl /usr/bin/curl.bak
sudo ln -s /usr/local/curl/bin/curl /usr/bin/curl
suvi /etc/ld.so.conf 

添加/usr/local/curl/lib

exit

检查curl版本

sudo ldconfigcurl -V

安装brew

用gitee大佬的国内镜像安装命令,安装后会自动安装ruby

rm Homebrew.sh ; wget https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh ; bash Homebrew.sh

安装node&npm

cd /usr/local
sudo wget --no-check-certificate https://npm.taobao.org/mirrors/node/v10.14.1/node-v10.14.1-linux-x64.tar.gz
tar -xvf  node-v10.14.1-linux-x64.tar.gz
sudo mv node-v10.14.1-linux-x64 node
sudo rm node-v10.14.1-linux-x64.tar.gz

环境配置

suvi /etc/profile

添加

export NODE_HOME=/usr/local/node  
export PATH=$NODE_HOME/bin:$PATH

退出

source /etc/profile

创建软连接

sudo ln -s /usr/local/node/bin/npm /usr/bin/npm
sudo ln -s /usr/local/node/bin/node /usr/bin/node
sudo ln -s /usr/local/node/bin/node-waf /usr/bin/node-waf
sudo ln -s /usr/local/node/lib/node /usr/lib/node

检查版本

node -vnpm -v

安装ethereum/以太坊

brew tap ethereum/ethereum
brew install ethereum

可能会报错

Error: Your HOMEBREW_BOTTLE_DOMAIN still contains “linuxbrew”.You must unset it (or adjust it to not contain linuxbrew.e.g. by using homebrew instead).

解决方法,注意不能提前执行,可能导致brew安装失败

echo "export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles" >> ~/.bash_profile
source ~/.bash_profile

安装remix

sudo npm install remix-ide -g
remix-ide

remixd报错

vim /usr/local/node/lib/node_modules/remix-ide/bin/remix-ide

注释remixd相关代码(该文件为js格式,用//和/* …*/注释,#虽然会变色但是不行)
进入

http://localhost:8080/index

即可编写智能合约

P.S. yum问题

安装curl之后yum可能会报错,这是由于libcurl的问题导致的,笔者也没有一个很好的解决方法,并不是每次都能成功。

到此这篇关于CentOS7下从零开始安装ethereum/以太坊的文章就介绍到这了,更多相关CentOS7安装ethereum/以太坊内容请搜索云海天教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持云海天教程!