본문 바로가기
경일/Block-chain

[Block-chain/블록체인] Mac GETH 설치

by dev_kong 2022. 6. 27.
728x90
728x90

0. 목차

1. 개요

2. Go 설치

3. Clone 및 make geth

4. 환경변수 설정

1. 개요

내가 쓰는 랩탑이 Mac이기 때문에,
Mac 기준으로 작성할거다.
저번 포스팅에서 얘기했듯, 이번 포스팅에선 GETH를 설치 해보겠다.

2. Go 설치

저번 포스팅에서 설명하였듯이,
GETH란 GO + Etereum의 합성어이다.
즉 GO 언어로 작성된 이더리움 네트워크이다.
그러니까 우선적으로 Go를 설치 해야 한다.

go version

기존에 go가 설치가 되어있다면

go version go1.18.3 darwin/arm64

뭐 이런게 뜰거다.
만약

zsh : command not found: go

요런게 뜬다면
homebrew를 통해 go 를 설치를 해주자

brew install golang

설치가 다 되었으면
다시

go version

을 입력하고

go version go1.18.3 darwin/arm64

이게 뜨는지 확인을 해보자.
위와 비슷한 문구가 뜬다면 golang 설치가 완료된것이다.

3. Clone 및 설치

go lang 설치가 끝났다면,
디렉토리를 하나 새로 설정해서,
git clone을 받으면 된다.
블록체인 네트워크는 기본적으로 오픈소스가 기반이기 때문에
github에 다 올라와있다.

GETH를 클론받을 디렉토리로 이동을 한 뒤에,

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

클론을 받고 클론받은 디렉토리로 이동을 해주자.
그리고

make geth

위 명령어를 실행해주자.

만약 make 명령어가 먹히지 않는다면,

xcode-select --install

명령어를 실행해서 xcode를 설치해야한다.
xcode설치에는 시간이 좀 걸리니까
유튜브 한편 때리고 오면 된다.

이제 GETH가 제대로 설치 되었는지 확인하기위해 version 명령어를 입력해보자

geth version

아마

zsh: command not found: geth

위와 같은 문구가 뜨면서 실행이 안될거다.
우선은 go-ethereum 내의 build/bin 디렉토리로 이동해서 다시 확인해보자.

cd ./build/bin
./geth version

아마 실행이 잘 될거다.

Geth
Version: 1.10.20-unstable
Git Commit: 647c6f2db636ddc272093e00d56006e6da63f0e2
Git Commit Date: 20220625
Architecture: arm64
Go Version: go1.18.3
Operating System: darwin
GOPATH=
GOROOT=go

이런 문구가 뜬다면 GETH 설치는 잘 된거다.

4. 환경변수 설정

GETH를 실행할 때 마다 매번 build/bin 디렉토리로 이동해서 실행시키는건 매우 귀찮은 일일거다.
환경변수를 설정해서 geth 명령어를 입력하면 이 디렉토리의 geth가 실행이 되게끔 변경해보자.

우선 build/bin 의 디렉토리로 들어와 있는 상태에서

pwd

를 입력하면 현재 경로가 나올 것이다.

/Users/[사용자이름]/workspace/ethereum/go-ethereum/build/bin

나오는 경로를 복사를 해두고,

vi ~/.bash_profile

vi 편집기로 홈디렉토리에서 .bash_profile 문서를 편집한다.

기존에 내용이 없었다면 빈문서가 나오는게 맞는 것이니 당황하지 말자

export PATH=$PATH:/Users/[사용자이름]/workspace/ethereum/go-ethereum/build/bin

그리고 위의 텍스트를 붙여넣고 저장하고 나오면 된다.
PATH: 이후는 아까 복사해두었던 경로이니 그냥 붙여넣기 하면된다.

vi 편집기를 빠쪄나온 이후에는

$ source ~/.bash_profile

를 입력해서 편집한 문서를 사용하게끔 만들어주고,

build/bin 디렉토리에서 빠져나온 이후에

geth version 

를 다시 입력해보자.

잘 된다면 성공.

마지막으로

geth

를 입력해보면

INFO [06-25|19:00:29.788] Starting Geth on Ethereum mainnet...
INFO [06-25|19:00:29.788] Bumping default cache on mainnet
updated=4096
INFO [06-25|19:00:29.789] Maximum peer count
total=50
WARN [06-25|19:00:29.791] Sanitizing cache to Go's GC limits
updated=2730
INFO [06-25|19:00:29.791] Set global gas cap
INFO [06-25|19:00:29.792] Allocated trie memory caches
.
.
.
.
.

이런게 엄청뜬다.
이더리움 네트워크를 그대로 가져오는거다.
저게 잘 뜨면 GETH 설치는 성공적으로 된것이니까
황급히 Ctrl+c를 눌러서 빠져나오면 된다.

728x90
728x90

댓글