우분투 서버 또는 데스크톱에서 비트코인 코어를 설치했다면 이제 일렉트럼엑스를 설치하여 연동해야 합니다.
저는 설치까지 완료했는데, 맨 마지막 electrumx_server 명령어 실행이 안되는 문제를 해결하지 못하였습니다. 실행만 하면 끝나는데 이걸 해결 못하고 일단 정지했습니다. 이 문제는 제가 못한 것이므로 아래 내용으로 진행하면 일렉트럼엑스 서버를 직접 설치하여 비트코인 코어에 연동하는 것까지 하실 수 있을 것입니다. 아쉽지만 저의테스트는 여기에서 마무리합니다.
# 파이썬 3.7 버전 이상 필요, 우분투를 설치하면 기본적으로 파이썬이 설치되어 있으므로 버전 확인
python3 --version
# 일렉트럼엑스 서버용 디렉토리 만들고 이동
mkdir server && cd server
# server 디렉토리 속에 electrumx_db 디렉토리 만들기
mkdir electrumx_db
# 깃을 사용하여 일렉트럼엑스 소스 복제
git clone https://github.com/kyuupichan/electrumx.git
# 일렉트럼엑스 디렉토리로 이동
cd electrumx
# 파이썬 pip 설치
sudo apt install python3-pip
# 파이썬 빌드를 위한 패키지 설치
pip install aiohttp aiorpcx pylru
# rocksdb 설치를 위한 사전 작업
sudo apt install build-essential libsnappy-dev zlib1g-dev libbz2-dev libgflags-dev liblz4-dev librocksdb-dev
# rocksdb 빌드, 설치 - make 시간 엄청 오래 걸림
git clone https://github.com/facebook/rocksdb.git
cd rocksdb
make
sudo make install
# 파이썬을 활용하여 일렉트럼엑스 설정 빌드
python3 setup.py build
# 빌드한 일렉트럼엑스 설치
sudo python3 setup.py install
# electrumx 디렉토리로 이동
cd ..
# 일렉트럼엑스를 시작 프로그램에 넣기
sudo cp contrib/systemd/electrumx.service /etc/systemd/system/
# electrumx.service 파일 나노 에디터로 열기
sudo nano /etc/systemd/system/electrumx.service
# 설정 파일 중에서 ExecStart 경로와 User 수정 후 저장/닫기
ExecStart=/home/mybtc/server/electrumx/electrumx_server
User=mybtc
# electrumx.conf 파일을 etc 디렉토리로 복사
sudo cp ./contrib/systemd/electrumx.conf /etc/
# 나노 에디터에서 conf 열기
sudo nano /etc/electrumx.conf
# 아래 내용 붙여 넣고 저장 후 닫기, rpcusername과 rpcpassword는 비트코인 코어 conf 파일에 입력한 값 넣기
DB_DIRECTORY = /home/mybtc/server/electrumx_db
DAEMON_URL = mybtc:fullnode@192.168.1.3
SERVICES = tcp://0.0.0.0:50001
COIN = Bitcoin
PEER_DISCOVERY = off
COST_SOFT_LIMIT = 0
COST_HARD_LIMIT = 0
# 일렉트럼엑스를 시작 프로그램에 활성화, 시작, 상태확인
sudo systemctl enable electrumx.service
sudo systemctl start electrumx.service
sudo systemctl status electrumx.service
# electrumx_db 디렉토리에 들어가서 다음 내용이 보이면 성공
COIN hist meta utxo
# 동작 확인 방법
sudo systemctl status electrumx
모든 것이 완료되면 GUI 버전에 일렉트럼엑스 시작 프로그램에 등록하면 됩니다.
참고 자료
위 방법 이외에 electrs 설치, electrum personal server 설치도 진행해 보았는데 저는 모두 실패했습니다. 역시 설치가 제일 어렵네요. 여러분들의 성공을 기원합니다.