-
Notifications
You must be signed in to change notification settings - Fork 3
BitZeny NOMP Mining Pool
- 2 CPU
- 4096 MB RAM
- 50 GB SSD
-
BitZeny
z2.0.x
이상 -
Node.js
v7
이상 :v8.11.1 LTS
버젼을 추천한다. -
Redis key-value store
v2.6
이상 :Latest
버젼을 추천한다.
비트제니 다운로드 및 컴파일: ~/bitzeny
폴더에 설치된다. 빌드에 약 30분
소요.
$ sudo add-apt-repository ppa:bitcoin/bitcoin -y && sudo apt-get update -y && sudo apt-get install -y software-properties-common libdb4.8-dev libdb4.8++-dev build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils libboost-all-dev libminiupnpc-dev libzmq3-dev libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler libqrencode-dev && cd && git clone https://github.com/BitzenyCoreDevelopers/bitzeny.git && cd bitzeny/ && git checkout z2.0.x && ./autogen.sh && ./configure && make
싱크는 자동으로 이루어지지만 약 3일
정도 걸린다. 하지만 만약 이미 싱크된 비트제니 노드가 있다면, 다음의 방법으로 약 30분
내외에 가능하다.
미리 싱크된 비트제니 노드에서 복사하기 https://github.com/cryptozeny/CopyCoinStudy/wiki/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EB%8D%B0%EC%9D%B4%ED%84%B0-local-to-remote-host
먼저 bitzenyd
를 실행시켜 ~/.bitzeny
폴더 및 환경설정을 만든후, 30초
뒤에 자동으로 강제종료시킨다.
$ ~/bitzeny/src/bitzenyd -daemon && sleep 30 && killall bitzenyd
~/.bitzeny
폴더를 확인해 본다.
$ l ~/.bitzeny/
banlist.dat chainstate/ debug.log hashes/ peers.dat
blocks/ db.log fee_estimates.dat mempool.dat wallet.dat
원래 있던 blocks
및 chainstate
폴더를 삭제다른이름으로 변경
$ mv ~/.bitzeny/blocks/ ~/.bitzeny/blocks.old/ && mv ~/.bitzeny/chainstate/ ~/.bitzeny/chainstate.old/
ANOTHER COMPUTER
에서 SERVER(123.123.123.123)
(사용자명 HARUKA
)로 RSYNC
를 이용한 복사. ~/.bitzeny
내부의 blocks
및 chainstate
폴더를 전송한다. 약 5분
소요된다.
$ rsync -avzu -e 'ssh' ~/.bitzeny/blocks/ HARUKA@123.123.123.123:~/.bitzeny/blocks/
$ rsync -avzu -e 'ssh' ~/.bitzeny/chainstate/ HARUKA@123.123.123.123:~/.bitzeny/chainstate/
다시 비트제니를 실행하고, 로그를 확인한다.
$ ~/bitzeny/src/bitzenyd -daemon && tail -f ~/.bitzeny/debug.log
WARN
다음과 같은 메세지가 나오면서 시간이 약 30분
정도 소요된다. 다운받은 블록데이터를 검증하는 과정이다. Ctrl+C
로 종료되지 않는다. 기다리는 방법밖에 없다. 도저히 안되겠으면 killall -9 bitzenyd
로 종료할수는 있지만 추천하지 않는다. 이럴경우 블록체인 데이터가 망가져 다시 다운로드 받아야 할수도 있다.
init message: Loading block index from disk...
기다리면 싱크가 완료될것이다. 다음으로 확인가능. progress=1.000000
이면 완료된것이다.
$ tail ~/.bitzeny/debug.log | grep progress=1
2018-04-25 19:38:49 UpdateTip: new best=000000007ac94bdb2345dc8f28795dc55039e01ff41dca33a741674bf783693a height=1204110 version=0x20000000 log2_work=48.424603 tx=2355252 date='2018-04-25 19:38:15' progress=1.000000 cache=385.3MiB(2603143txo)
비트제니 ~/.bitzeny/bitzeny.conf
설정파일을 만든다
$ nano ~/.bitzeny/bitzeny.conf
다음을 입력 WARN
username
및 password
는 다른 강력한 암호로 바꾸는것이 좋다.
server=1
rpcuser=username
rpcpassword=password
rpcport=9252
비트제니 종료후, 3초 딜레이후, 재시작
$ killall bitzenyd && sleep 3 && ~/bitzeny/src/bitzenyd -daemon
$ cd && wget http://download.redis.io/redis-stable.tar.gz && tar xvzf redis-stable.tar.gz && cd redis-stable && make
(옵션) Redis TEST: 약 5분
정도 걸린다.
$ sudo apt-get install -y build-essential tcl && make test
설치 sudo
권한이 필요하다 총 2번
입력한다.
$ cd ~/redis-stable && sudo make install && cd ~/redis-stable/utils && sudo ./install_server.sh
다음과 같이 물음에 enter
를 입력하면 default
로 설정된다. Starting Redis server...
메세지가 나오면 Redis 서버가 자동으로 시작된다.
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379]
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf]
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log]
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379]
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server]
Selected config:
Port : 6379
Config file : /etc/redis/6379.conf
Log file : /var/log/redis_6379.log
Data dir : /var/lib/redis/6379
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Success!
Starting Redis server...
Installation successful!
https://github.com/cryptozeny/CopyCoinStudy/wiki/INSIGHT:-node.js-v0.10.x-%EC%84%A4%EC%B9%98
먼저 Node.js 버젼관리자인 NVM
을 설치하고, 그것으로 Node.js v8.11.1 LTS
을 설치한다.
$ cd && curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.9/install.sh | bash
로그아웃 & 로그인
$ nvm ls-remote | grep 'v8.11.1'
$ nvm install v8.11.1
$ nvm ls && node -v && npm -v
다음과 같이 출력되면 성공
-> v8.11.1
default -> v8.11.1
node -> stable (-> v8.11.1) (default)
stable -> 8.11 (-> v8.11.1) (default)
iojs -> N/A (default)
lts/* -> lts/carbon (-> v8.11.1)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.14.1 (-> N/A)
lts/carbon -> v8.11.1
v8.11.1
5.6.0
https://github.com/cryptozeny/zny-nomp.git
master
브랜치가 웹사이트가 매우 느려지는 문제가 있다. fix-slow_website
브랜치를 참조한다.
$ cd && sudo apt-get install -y build-essential libsodium-dev
$ cd && git clone https://github.com/cryptozeny/zny-nomp.git
$ cd && cd zny-nomp && git checkout fix-slow_website
설치: --build-from-source
를 반드시 한다. 이것이 없으면 에러가 난다. 다음에 설명.
$ npm update --build-from-source && npm install --build-from-source
--build-from-source
를 쓰지않으면 이와같은 에러가 난다. 하지만 작동은 된다.
node-pre-gyp ERR! Tried to download(403): https://rvagg-node.s3-us-west-2.amazonaws.com/bignum/v0.12.5/bignum-v0.12.5-node-v57-linux-x64.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for bignum@0.12.5 and node@8.11.1 (node-v57 ABI, glibc) (falling back to source compile with node-gyp)
다음과 같이 성공
npm notice created a lockfile as package-lock.json. You should commit this file.
+ body-parser@1.17.1
+ mysql@2.13.0
+ async@2.3.0
+ bignum@0.12.5
+ compression@1.6.2
+ dateformat@2.0.0
+ extend@3.0.0
+ colors@1.1.2
+ express@4.15.2
+ dot@1.1.1
+ node-watch@0.5.2
+ redis@2.7.1
+ request@2.81.0
+ nonce@1.0.4
+ node-json-minify@1.0.0
+ stratum-pool@0.1.6
added 193 packages in 40.404s
폴더이동후, 파일복제후, WARN
서버주소 123.123.123.123
로 문자열치환. 각자의 서버IP로 바꾼다.
$ cd ~/zny-nomp && cp config_example.json config.json && sed -i 's/cryppit.com/123.123.123.123/g' ~/zny-nomp/config.json
name
은 변경가능
$ cat ~/zny-nomp/coins/bitzeny.json
{
"name": "Bitzeny",
"symbol": "ZNY",
"algorithm": "yescrypt"
}
마이닝풀 설정: ~/zny-nomp/pool_configs/bitzeny.json
설정
$ cd ~/zny-nomp/pool_configs && cp bitzeny_example.json bitzeny.json && nano bitzeny.json
마이닝풀에서 코인이 저장될 주소를 발급한다. 서버에 저장될 비트제니 지갑주소
를 기록해 놓는다.
$ ~/bitzeny/src/bitzeny-cli getaccountaddress ""
서버에 저장될 비트제니 지갑주소
수정사항: http://www.zinntikumugai.com/2018/02/10/-4373-/
-
false
(2행)를true
로 변경 -
서버에 저장될 비트제니 지갑주소
는getaccountaddress ""
로 획득한 주소를 입력. 블록을 발견했을때 이 주소에 들어간ZNY
는 자동으로 분배되어 채굴자의 지갑으로 전송된다.마이닝풀 운영자의 비트제니 지갑주소
는 운영자의 개인주소를 쓰는것이 좋다. -
"coin": "bitzeny.json"
은~/zny-nomp/coins/bitzeny.json
이다. -
"rewardRecipients"
는 수수료설정이다. 수수료를 징수하는 주소는 다르게 설정할수도 있다. 현재1.0%
로 설정
{
"enabled": true,
"coin": "bitzeny.json",
"address": "서버에 저장될 비트제니 지갑주소",
"rewardRecipients": {
"마이닝풀 운영자의 비트제니 지갑주소": 1.0
},
"paymentProcessing": {
"minConf": 10,
"enabled": true,
"paymentMode": "prop",
"_comment_paymentMode":"prop, pplnt",
"paymentInterval": 120,
"minimumPayment": 0.1,
"maxBlocksPerPayment": 3,
"daemon": {
"host": "127.0.0.1",
"port": 9252,
"user": "RPC사용자이름",
"password": "RPC비밀번호"
}
},
$ cd ~/zny-nomp && node init.js
마이닝풀 설정은 다음과같다.
Network Connected: Mainnet
Detected Reward Type: POW
Current Block Height: 1204182
Current Connect Peers: 8
Current Block Diff: 31087.109275648
Network Difficulty: 31941.141875460165
Network Hash Rate: 20.33 MH
Stratum Port(s): 3032
Pool Fee Percent: 1%
Block polling every: 500 ms
서버주소에서 8080
포트로 연결이 가능하다.
실리콘밸리 http://140.82.49.51:8080
접속화면은 다음과 같다.
다음의 방법으로 채굴자가 마이닝풀에 접속한다.
마이닝풀에서 채굴을 하지말고, 다른 컴퓨터에서 실행하는것이 좋다. WARN
CPU의 과열에 주의한다.
cpuminer(kawaii) 설치
git clone https://github.com/cryptozeny/cpuminer.git && cd cpuminer/ && git checkout v2.6.0-kawaii && sudo apt-get install -y build-essential libcurl4-openssl-dev automake && ./autogen.sh && ./nomacro.pl && ./configure CFLAGS="-O3" && make
채굴하기: Zq5xs4d2T6HCE7GF1qeiaxr2x77JveytBP
는 각자의 비트제니 주소로 바꾼다.
./minerd -o stratum+tcp://163.44.165.174:3032 -u Zq5xs4d2T6HCE7GF1qeiaxr2x77JveytBP
다음과 같이 (kawaii!!!)
가 출력되면 성공이다. 하지만 해시파워가 부족하여 실제로 블록을 발견한것은 아니다. 블록을 찾는것은 매우 많은 해시파워가 필요하다.
+ [2018-04-26 06:50:30] accepted: 1/1 (100.00%), 0.88 khash/s (kawaii!!!)
Block #1204567
BlockHash 000000017f93289d41020bfebe8a4e466b13f5ec93d8b9d8e17b79737b1d2ca2
https://insight.bitzeny.jp/tx/bd9e65b4febd607d6ddacf24be841c10acfd3e3e57339ff3b720ae2f113de062
- ZtuKPEbKgrgS5eocx92t5C3WawaZ3kDUDP
62.5
ZNY 발견된 블럭 - ZtN5eCDrR9PsjpS4VyxXwMCuHj2PMeKsnD
0.62539624
ZNY 마이닝풀 수수료1%
- Zq5xs4d2T6HCE7GF1qeiaxr2x77JveytBP
61.8746
ZNY 채굴자 지급99%
$ ~/bitzeny/src/bitzeny-cli getaccountaddress "" && ~/bitzeny/src/bitzeny-cli getbalance
ZszL6w9m8Y3FPaBgbckNHhREh14CnGrw1q
0.62539624
2018-04-26 18:42:45 [Payments] [bitzeny kawaii network] Sent 61.8746 to 1 miners; txid: bd9e65b4febd607d6ddacf24be841c10acfd3e3e57339ff3b720ae2f113de062
채굴자에게 지급되는 수량은 99 % - 네트워크 전송 수수료
: 이것은 마이닝풀에서 채굴자지갑으로 보내는 전송수수료가 포함된다. FEE: 0.00000376 ZNY
그러므로 채굴자가 얻게되는 보상은 99 %
에서 약 0.000006016 %
을 차감한 98.999993984 %
가 된다. 약 0.000006016 %
이라고 표현한 것은 이것이 네트워크 수수료이기 때문에 변동할수 있다. 현재 2018-04-26
기준 tx fee rate
는 0.00001011 ZNY per kB
이며 채굴되는 Newly Generated Coins
의 block size
는 372 (bytes)
이다.
61.8746 + 0.62539624 = 62.49999624 + 0.00000376 = 62.5
http://140.82.49.51:8080/stats
$ ~/bitzeny/src/bitzenyd -daemon
데몬이 실행되길 기다린다 시간이 오래 걸릴수 있다.
$ cd ~/zny-nomp && node init.js &
로그를 남기는 실행스크립트 만들기: 실행파일 ~/startup-zny-nomp.sh
를 만들고 로그는~/zny-nomp.log
에 기록된다.
$ cd && echo '#!/bin/bash' >> startup-zny-nomp.sh && echo "node init.js" >> startup-zny-nomp.sh && cat startup-zny-nomp.sh && chmod +x startup-zny-nomp.sh
$ cd && cd ~/zny-nomp && setsid ~/startup-zny-nomp.sh >~/zny-nomp.log 2>&1 < ~/zny-nomp.log &
로그확인
$ tail -f ~/zny-nomp.log
node 종료
$ ps aux | grep node
$ kill <PID번호>
bitzenyd 종료
$ ps aux | grep bitzenyd
$ kill <PID번호>
문의사항은 블록체인 혹은 일본코인 갤러리에서 제니공주 를 찾아주세요
http://gall.dcinside.com/m/blockchain 혹은 http://gall.dcinside.com/m/japanesecoin
디스코드 일코갤/코인개발