1. GIT 세팅
terminal을 열고 git을 apt-get을 통해 다운로드 받는다.
sudo apt-get install -y git
다 받았으면 ethereum 공식 github 홈페이지에서 fork를 뜬 다음 해당 링크로 git 명령어를 통해 clone을 만든다.
git clone https://github.com/ethereum/go-ethereum
2. GO 세팅
GO를 다운받기에 앞서 필요한 유틸리티들을 다운로드 받는다.
sudo apt-get install -y build-essential
sudo apt-get install -y curl
curl을 통해 go의 1.97버전을 다운받는다.
[ apt-get install golang을 통해 다운로드 받을 시 1.97보다 이전버전이 다운로드 돼서 문제가 생길 수 있음!]
curl -O https://dl.google.com/go/go1.9.7.linux-amd64.tar.gz
go의 압축을 푼다.
tar -xzf go1.9.7.linux-amd64.tar.gz
sudo mv go /usr/local
go 명령어를 통해 go를 실행시킬 수 있게 vi 편집기를 통해 .profile에 GOPATH와 GOPATH/bin을 등록한다.
vim .profile
맨 끝에 아래내용 추가
GOPATH="/usr/local/go"
PATH="$PATH:$GOPATH/bin
source .profile
go version 명령어를 통해 버전이 제대로 출력되는지 확인한다.
3. GETH 세팅
1번에서 git세팅했을 때 클론했던 ethereum 디렉토리로 들어간 뒤 geth를 세팅한다.
cd go-ethereum
make geth
make과정이 끝났으면 마찬가지로 geth 명령을 통해 geth를 실행시킬 수 있게 세팅한다.
cd build/bin
sudo mv geth /usr/bin
geth version 명령어를 통해 버전이 제대로 출력되는지 확인한다.
=============================================================================
script 파일로 한 번에 설치 진행하기
script로 한번에 설치하기 전 sudo apt-get명령시 비밀번호 입력하는 부분을 처리한다.
sudo su
비밀번호 입력
echo "사용자이름 ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
새로운 파일을 만든 뒤 아래 스크립트 내용을 작성한다.
chmod 755 파일이름, 으로 실행 가능한 파일로 만든 뒤
해당파일을 실행시키면 끝
#!/bin/sh
git=`which git`
if [${#git} -eq 0]
then
sudo apt-get install -y git
fi
git clone https://github.com/ethereum/go-ethereum
build_essential=`which make`
if [${#build_essential} -eq 0]
then
sudo apt-get install -y build-essential
fi
curl=`which curl`
if [${#curl} -eq 0]
then
sudo apt-get install -y curl
fi
cd ~
curl -O https://dl.google.com/go/go1.9.7.linux-amd64.tar.gz
tar -xzf go1.9.7.linux-amd64.tar.gz
sudo mv ~/go /usr/local
echo GOPATH=/usr/local/go >> ~/.profile
echo PATH=$PATH:$GOPATH/bin >> ~/.profile
source ~/.profile
cd ~/go-ethereum
make geth
sudo cp ~/go-ethereum/build/bin/geth /usr/bin
geth version
'프로그래밍 & IT > BlockChain' 카테고리의 다른 글
Ethereum 응용 개발 - Smart Contract 의 이해 (0) | 2018.09.07 |
---|---|
리눅스-우분투(Linux Ubuntu)) adduser과 geth로 채굴하고 확인하기 (0) | 2018.09.01 |
블록체인에서의 거래 (0) | 2018.08.25 |
블록체인에서 블록이란? (0) | 2018.08.25 |
비밀키와 공개키 (0) | 2018.08.20 |