본문 바로가기

Blockchain/Ethereum

[Ethereum] Ubuntu Server 에 Go Ethereum 설치하기

작성자 : Deok



여기서는 간단히 Ubuntu 에서 go ethereum 을 설치하는 방법을 알아 보겠습니다.


우선 설치 방법은 ppa 패키지 저장소를 이용한 설치 방법과


소스를 다운받아 설치 하는 방법 두가지 모두 설명 하겠습니다.



1. PPA 를 이용하여 Go Ethereum 설치하기


패키지 등록 및 업데이트 후 apt-get install 을 통해 설치해 주도록 합니다.


sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum


만약 안정된 Stable 버전이 아닌 최신 Unstable 버전을 설치 하고 싶으시면 마지막에 apt-get install ethereum-unstable 를 입력하시면 됩니다.


sudo apt-get install ethereum-unstable




2. 소스코드를 이용하여 빌드 하기


패키지 를 이용하는 방법이 아닌 go-ethereum 의 소스코드를 받아 설치 하는 방법입니다.



2-1. 소스코드 다운받기


우선 원하는 디렉토리에 go-ethereum 을 다운받습니다.


저는 /tmp 에 다운받겠습니다.


$ git clone https://github.com/ethereum/go-ethereum


2-2. Go ( golang ) 설치하기


만약 golang 이 설치되어 있지 않으시다면 아래의 포스트를 이용하여 golang 을 설치하도록 합니다.


2019/08/22 - [Programming/Go] - Ubuntu Server 18.x 에 Go (golang) 설치하기



2-3. 필수 빌드 프로그램 설치

geth 를 빌드 하기 위해서는 go 와 함께 C 컴파일러가 설치 되어 있어야 합니다. 만약 설치되어 있지 않다면 아래의 명령어로 기본적인 빌드 프로그램들을 설치 합니다.


$ sudo apt-get install -y build-essential



2-4. 빌드 하기


빌드를 위한 모든 설치가 완료 되었고 이제 go-ethereum 으로 이동하여 make geth 로 빌드를 합니다.


$ cd go-ethereum
$ make geth

* 빌드는 시간이 좀 걸립니다.


이제 ./build/bin/geth 를 통해 노드의 시작이 가능합니다.




2-5. 빌드된 geth 파일 옴기기


제가 /tmp에 다운로드해 놓고 그대로 쓸 수는 없으니 cp를 이용해 /usr/local/geth로 이동합니다. * 혹은 /etc/geth


$ mkdir /usr/local/geth
$ cp ./build/* /usr/local/geth -R


이제 cd /usr/local/geth로 이동하시면 이전의 ./build에 있던 파일들이 이동된 것을 확인하실 수 있으실 것입니다. 


/{이동 디렉토리}/bin/geth 를 통해서도 노드 운영이 가능합니다.



* 이전에 tmp에 build 하였던 파일은 rm 을 통해 삭제해 주셔도 됩니다.


$ rm -rf /tmp/go-ethereum/



2-6 Symbolic link 걸기


이제 매번 /{이동 디렉토리}/bin/geth 를 실행하기가 불편하시다면 geth 파일을 ln -s 를 통해  /usr/bin/geth 로 Symbolic link 를 생성하여 줍니다.


$ ln -s /usr/local/geth/bin/geth /usr/bin/geth


이제 geth 명령어 만으로 노드가 운영되는 것을 확인하실 수 있을 것입니다.



즐거운 개발되시기 바랍니다 :D