메뉴 건너뛰기

?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
Extra Form
URL https://blog.aeternity.com/tutorial-mini...d1f908b0fd

안녕하세요. 애터홀릭입니다.

 

애터니티의 마이닝 튜토리얼이 올라왔습니다. 추가로 우분투 설치 방법도 같이 올려 놓았습니다.

아래 내용은 사용자들이 메인넷에서 마이닝 할 수 있는 방법들인데 메인넷이 런칭이 될 경우 그대로 사용하면 됩니다.

기본적으로 이 튜토리얼은 CPU 마이닝입니다. GPU 마이닝은 따로 튜토리얼이 나오지 않을까 생각됩니다.

궁금하신 내용을 댓글로 문의 주시면 답변 드리겠습니다.

 

format_mining.png

 

1. 준비 

리눅스환경에서 커맨드를 입력하려면 Terminal 창을 열어서 사용하시면 됩니다.

 

1) 리눅스 기본 사용법1 : 터미널 창 열기

 

ubuntu1.png

 

2) Erlang 패키지 설치

애터니티 노드는 관리자(root) 계정으로는 동작하지 않습니다. 패키지 설치는 root 권한으로 해도되지만 원할한 진행을 위해 일반 계정으로 진행해주세요. sudo 명령어를 쓰면 비밀번호를 물어보니 입력해야 설치가 완료 됩니다.

sudo apt‐get install erlang

 

위 명령어를 입력하기 전에 아래 명령어를 먼저 입력해주세요.

apt-get update

 

3) 애터니티 테스트넷(메인넷) 패키치 다운로드 및 압축풀기

튜토리얼에서 사용한 테스트넷 버전은 0.22.0 입니다.

파이어폭스가 기본 브라우저로 되어있으니 아래 링크

다운로드 링크 : https://github.com/aeternity/epoch/releases

 

 

 

4) 압축 풀기

 

튜토리얼에는 0.22.0 버전의 파일을 압축을 풀면 압축한 이름으로 폴더(디렉토리)가 생성되고 그 밑에 파일이 존재할 것처럼 이야기를 해놨지만, 압축을 폴더째 안해서 압축을 풀면 폴더 밑에 생성되지 않습니다.

그래서 저는 node 폴더를 새로 생성하고 그 곳에 압축을 풀게끔 해놓았습니다.

 

자신의 계정의 다운로드 폴더로 이동하기 : cd /home/"계정이름"/Downloads

폴더에 패키지가 정상적으로 있는지 확인하기 : ls

압축 풀기 : tar xzvf "패키지 이름" -C "옮겨놓을 경로"

Tips : epo 까지 쓰시고 tab 키를누르면 자동입력 됩니다. 자동입력되지 않는다면 동일한 epo뒤에 알파벳이 동일한 파일이 있어서 그런 것이니 원하는 파일의 이름을 조금더 써주고 tab 키를 눌러주세요.

 

만약 시도하시는 버전의 파일이 압축을 풀었을 때 압축한이름의 폴더가 생성되고 그 밑에 파일이 풀어진다면 압축한 폴더이름을 node로 바꾸셔야 합니다.

폴더 이름 바꾸기 : mv "대상 폴더" "바꿀 이름"

ex) mv epoch node

 

가이드1.png

 

2. 채굴보상을 받을 계정(beneficiary account) 생성하기

 

1) 개인키 키 지원 라이브러리 설치

sudo apt‐get install build‐essential
Wget https://download.libsodium.org/libsodium/releases/libsodium‐1.0.16.tar.gz
tar ‐xf libsodium‐1.0.16.tar.gz && cd libsodium‐1.0.16
./configure && make && sudo make install && sudo ldconfig

 

2) 위에서 압축풀은 epoch 패키지의 이름을 "node"로 바꾸기

 

위에서 언급한 대로 압축풀었을 경우 폴더 밑에 파일들이 압축이 풀릴경우 폴더 이름을 node로 바꾸셔야 합니다.

 

3) 하위 폴더 "bin"으로 가서, "epoch"라는 이름의 쉘스크립트가 있는지 확인하고, 그 것을 실행시켜 계좌 생성을 해야 함

./bin/epoch keys_gen PASSWORD

 

"PASSWORD"는 원하는 것으로 결정하면 됩니다. 이키의 목적은 생성된 공개키와 개인키 쌍의 개인키를 암호화하기 위한 것입니다. 계정을 사용할 때마다 정의한 암호롸 개인 키를 암호 해독해야 합니다.

 

 

생성을 마치면 새폴더 "generated_keys"가생성됩니다. 폴더에는 새로 생성된 공개키와 개인키가 있습니다. 이 예에서는 암호를 "990"으로 했고 공개키는 아래와 같습니다.

 

ak_jRUEtyqPNzM7krHWxQir5c2peCLEd8hKhgnCmu6PBHeAvNiKE

 

3. 계정 설정하기

 

1) epoch.yaml 스크립트 파일 생성하기

스크립트 파일을 "node" 폴더 밑에 다음 설정을 적어서 등록하세요. vi 에디터 말고 gedit 에디터를 사용하세요.

 

 

2) 다음 명령어를 통해 스크립트가 유효한지 확인하세요.

./bin/epoch check_config epoch.yaml

 

 

3) 아래명령어를 입력하여 epoch 노드 실행

ulimit ‐n 50000
./bin/epoch start

 

epoch 데몬은 root(관리자) 계정으로 정상적으로 동작하지 않습니다. epoch node를 실행하기 전에 꼭 사용자 계정으로 전환하세요.

"ulimit -n 50000" 명령어를 사용하다보면 permission 에러로 사용자가 접근 할 수 없다는 에러가 발생합니다.

그럴 경우 아래 링크를 참고해서 해결 하시면 됩니다.

http://egloos.zum.com/powerenter/v/10980761

 

4) 채굴 로그 확인

 

채굴을 시작한 후에, log 디렉토리 밑에 채굴과 관련된 로그가 생길 것입니다. 찾고 싶은 키워드를 통해서 결과를 확인할 수 있습니다. 채굴된 새 블록에 대한 정보도 아래 명령어로 찾을 수 있습니다.

grep “mined” log/epoch_mining*

 

 

결과에 값이 있으면, 새로운 블록이 생성 된 것입니다. 즉 채굴이 되었다는 것이죠.

블록 생성시간은 채굴 하드웨어의 해슁 속도에 의존적입니다.

 

5) 가능한 에러

 

아래와 같은 에러가 있다면 log 디렉토리 밑에 epoch_mining.log 파일을 확인하세요.

 

Failed to mine block, runtime error; retrying with different nonce (was 13078180597498667023). Error:{execution_failed,{signal,sigabrt,true}}

 

그렇다면 설정파일인 epoch.yaml을 수정해야 합니다.

 

변경전: 

mining:
    autostart: true

 

변경후:

mining:
    autostart: true
    cuckoo:
        miner:
            executable: lean30
            extra_args: ""
            node_bits: 30

 

epoch node 재시작 :

./bin/epoch/restart

 

 

log/epoch_mining.log 파일에 "starting mining" 문구를 확인 할 수 있습니다.

 

6) 테스트넷과 동기화 중인지 확인하기

curl http://18.195.109.60:3013/v2/blocks/top
curl http://127.0.0.1:3013/v2/blocks/top

 

 

 

위의 그림파일과 같이, 노드의 해쉬값이 테스트넷의 해쉬와 같다면 동기화 중인 것입니다.

 

7) 공개키로 보상 확인하기

 

이 테스트에 사용중인 공개키는 다음과 같습니다.

ak_jRUEtyqPNzM7krHWxQir5c2peCLEd8hKhgnCmu6PBHeAvNiKE

 

그렇다면 아래 명령어를 입력하여 보상액을 확인하세요.

curl http://localhost:3013/v2/accounts/ak_jRUEtyqPNzM7krHWxQir5c2peCLEd8hKhgnCmu6PBHeAvNiKE

 

채굴자가 3 블록을 찾았고, 각 블록의 보상은 10 테스트넷 애터니티 토큰입니다.

 

Bitcoin-NG에 PoF 때문에 애터니티 토큰의 보상은 블록을 찾은 후에 180 key 블록에 나누어 저장됩니다. 그 것은 9시간 이후 입니다.

 

4. 그외 확인 사항

 

1) 적합성

 

파이썬 SDK를 사용하여 테스트넷에서 보상을 확인하면 올바른 계정 잔액을 확인하지 못할 수도 있습니다. 그 이유는 마지막 epoch 버전이 마지막 파이썬 SDK와 호환되지 않을 수 있기 때문입니다.

 

이 것을 피하기 위해서 항상 로컬로 부터 보상을 확인하세요.

 

2) epoch API 문서

 

epoch의 인터페이스는 아직 공개된적 없습니다. 아래 링크를 통해 확인하세요.

https://github.com/aeternity/epoch-api-docs

 

참고. 우분투 18.04 설치(Install Ubuntu 18.04)

 

1) iso 파일 다운로드. GUI환경이 기본으로 지원되는 x64 데탑용으로 다운 받으세요.

링크 : http://releases.ubuntu.com/18.04/

 

ubuntu.png

 

2) Ubuntu .iso로 부팅시 설치 가능한 USB 드라이버 만들기

링크 : http://rufus.akeo.ie/

 

[rufus screenshot]

 

3) 설치 진행하기

참고로 가상머신에 설치하지 마시고 데탑에 직접 설치하시기를 권장합니다. 

아래 링크에 설치하기 부터 따라하시면 됩니다.

링크 : https://hiseon.me/2018/04/03/install-ubuntu-18-04/

 

이 콘텐츠가 마음에 드셨다면 커피 한잔 (후원)

  • ?
    애터만세 2018.09.30 23:19
    채굴을 못하지만.. 잘읽었습니다ㅠㅠ 리눅스 어려워서 채굴자들이 많이 채굴할 수 있을까여..
  • profile
    애터몬 2018.10.01 16:32
    오.. 대박... 귀한 글이네요 감사합니다.
  • ?
    짱아우옷 2018.10.08 22:49
    잘 따라했는데 요렇게 나오네요.~ 도와주세요.^^

    ① curl http://localhost:3013/v2/accounts/ak_jRUEtyqPNzM7krHWxQir5c2peCLEd8hKhgnCmu6PBHeAvNiKE
    => {"reason":"Account not found"}
    이렇게 나오는것은 아직 채굴한지 얼마되지 않아서 그런가요?

    ② 테스트넷 최근 블럭과 비교를 할려고 하는데 로컬 주소는 되는데
    curl http://31.13.249.70:3013/v2/blocks/top <-- 이 주소가 지금은 안되나봐요.
  • profile
    애터홀릭 2018.10.09 07:42

    안녕하세요.
    1) 계정을 잘 생성하셨는지 확인 부탁드립니다. epoch.yaml 파일도 다시 한번 확인해주세요.

    2) 2번 명령어를 설정 하셨을때 에러메시지를 알려주세요!

  • ?
    기통찬 2018.10.17 15:24
    ulimit 50000 에서 막히네요.
    파일에 내용 추가하고
    su - weblogic 명령하면

    No passwd entry for user ‘weblogic’ 이러네요.

    혹시 조언을 구할수 있을까요?
  • profile
    애터홀릭 2018.10.23 10:26
    답변이 늦었습니다. 아무래도 만드신 계정에 su 명령어를 실행할 권한이 없는 것으로 보이네요.
    혹시 텔레그램으로 연락 주실 수 있나요?
  • ?
    꾸미 2018.10.22 11:30
    채굴을 하려면 컴퓨터 어떠한 사양이 좋아야하나요????
  • profile
    애터홀릭 2018.10.23 10:27
    CPU 채굴의 경우에는 CPU의 연산속도와 RAM이 받쳐줘야합니다.
  • profile
    돈모으자 2018.11.19 13:49
    감사합니다~
  • ?
    안성기 2018.11.28 17:36
    메인넷 채굴은 어떻게 할 수 있나요? 배포가 된 것 같은데.. 잘 모르겠네요.
  • profile
    애터홀릭 2018.11.30 11:15
    안녕하세요. 메인넷 채굴은 CPU로 하느냐 GPU로 하느냐에 따라 설정이 조금 다릅니다. 어떤걸로 하시나요?
  • ?
    안성기 2018.11.30 12:06

    CPU로 하려고 가이드 보면서 1.0.0로마로 바꾸고 퍼블릭키는 제 계인 지갑으로 지정하고 하고 있습니다.
    epoch.yaml에서 스크립트가 유효한지 확인하는 부분에서 막히네요.
    잔실수가 있길래 고쳤는데도 여전히 3,15 라인에서 에러가 있다고 하는데 아무리 봐도 오타도 없어서 진행이 안 되고 있습니다. 프로그래밍 관련은 문외한이라... 제가 어느 부분에서 잘못 했는지 확신이 안 서지만 몇번이고 새로 만들어서 처음부터 다시 작성해도 똑같이 3,15에서 에러라고 하는 것을 보니 external_port 값을 혹시 다르게 지정해야 하는 것은 아닌가 싶어서 여쭤봅니다.
    Configuration error ({yamerl_exception,
    [{yamerl_parsing_error,error,
    "Block mapping value not allowed here",3,15,
    block_mapping_value_not_allowed,undefined,[]}]})
    이렇게 뜹니다.

     

    사실 여길 건너뛰고 다음 단계로 가도 막히네요

    ~~~

    "ulimit -n 50000" 명령어를 사용하다보면 permission 에러로 사용자가 접근 할 수 없다는 에러가 발생합니다.

    그럴 경우 아래 링크를 참고해서 해결 하시면 됩니다.

    ~~~

    올려주신 링크 봐도 이해가 하나도 안 갑니다ㅜ

    -> 루트까지 가서 저 파일에서 해당 부분을 수정하라는 것 같은데 바탕화면에서는 /etc/security/limits.conf까지 접근을 못 하는 것 같고 터미널로는 수정하는 방법을 모르겠네요. vim을 이용해야 할까요? 찾아보면서 해보면 어찌 할 수 있을 것 같긴 합니다만 어렵네요..

  • ?
    안성기 2018.11.30 18:50
    limits.conf가 읽기전용이라 수정을 못하는 난처함이 있네요ㅜ
  • profile
    애터홀릭 2018.11.30 20:57
    아 넵. 한국 텔레그램방 들어오시면 가이드 해드리겠습니다.

  1. no.1

    애터니티 소개

    Date2018.02.14 By애터홀릭 Views480 Votes2
Board Pagination Prev 1 Next
/ 1
CLOSE

SEARCH

CLOSE
닫기
작가에게 커피 한잔(후원)을 사주세요.