우분투 리눅스에서 마이닝(채굴)하기

작년말부터 시작된 암호화화폐 열풍으로 인해 간혹 채굴시스템에 대한 문의가 들어오곤 합니다. 지금은 조금 줄어든듯 해도 여전히 활발하게 움직이는 부분들이 보입니다.

사실 블록체인이란 기술이 상당히 좋은 기술이고 많은 부분들에서 잘 이용될 경우 긍정적인 세상의 발전을 이루어 나갈 수 있다고 볼수 있습니다. 처음 이 이론이 나왔을때 무척 놀랬던 기억이 있습니다. 블록체인을 유지하기 위해서는 많은 사람들의 PC자원이 필요하고 그 자원을 나누는 보상(?)으로 암호화화폐(가상화폐)를 주며 기반을 만들어 나갔던것으로 이해하고 있는데 일반인들은 기술보다는 암호화화폐(코인)에 마음이 끌리게 되는게 당연하죠.

일반적으로 채굴에 관련된 정보는 채굴 커뮤니티들을 통해 얻을 수 있습니다. 많은 경우 윈도우를 이용해 세팅을 합니다만 제 경우엔 테스트 시스템을 만드는데 라이센스 문제도 있고 실제 구동을 시켜봤을때 장시간 안정적으로 동작해야 한다는 점에서 처음부터 리눅스계열을 염두에 두고 있었습니다.

제 사무실내에 파일서버(SMB)과 외부연동 서버(Pydio)를 10여년간 우분투를 이용해서 운영하고 있고 전원에 문제가 생기지 않는 한 서버를 꺼본적이 없을 정도로 안정성에 대해 믿음이 있기 때문에 조금씩 자료를 찾아가며 직접 해본 내용을 정리해보고자 합니다.

준비

4GB 이상의 USB메모리, nVidia Graphic 카드(4GB이상, 1050TI이상), 부팅가능한 PC(60GB이상 용량의 SSD), 우분투 USB를 만들기 위한 윈도우 PC

보통 채굴기는 그래픽카드를 6개이상 연결해 만듭니다. 하지만 우분투를 설치해서 채굴 프로그램을 작동시키는것은 1개나 6개나 마찬가지입니다. 1개만 있으면 1개만 이용해서 돌리고 그 이상의 그래픽카드가 있다면 프로그램에서 모든 그래픽카드를 이용해서 작업을 합니다.

우분투 USB 설치디스크 만들기

우선 우분투를 설치하기 위해 설치이미지를 다운받아 USB에 기록해 부팅 USB를 만듭니다.

1.
설치용 ISO이미지를 다운받습니다.  www.ubuntu.com 사이트에 접속해서 상단 메뉴 중 Download – Desktop 을 선택합니다. (Server버전을 이용하셔도 됩니다만 쉽게 따라할수 있도록 Desktop으로 설명합니다)

ubuntu-desktop-download
우분투 Desktop 다운로드

우분투 버전은 16.04.04 LTS를 이용합니다. 현재 18.04가 발표되기 직전이고 17.04버전도 존재하지만 17.04에서는 몇몇 부분에서 아직 세팅하기 어려운 부분이 있었습니다.

우분투 16.04.04 다운로드 버튼
우분투 16.04.04 LTS 다운로드

다운로드 버튼을 누르면 도네이션을 요청하는 화면이 나타납니다. 우분투와 같은 좋은 소프트웨어를 유지 발전 시켜나가기 위해 도네이션을 하시는것도 좋구요. 우선 무료로 다운로드를 받으려면 하단에 Not now take me to the download > 부분을 클릭하면 다운로드됩니다.

우분투 도네이션 후 다운로드 화면
우분투 도네이션 후 다운로드 화면

2.
이제 USB에 기록하여 설치디스크를 만들어야 합니다. 여러가지 방법이 있지만 요즘은 Rufus프로그램이 가장 편리합니다.  사이트에 접속하여 다운로드(설치하시기 번거롭다면 포터블 버전을 사용) 받거나 여기(이 링크는 2.18버전의 포터블링크입니다. 연결이 되질 않는다면 사이트에 접속해서 다운로드 받으세요) 를 눌러 프로그램을 다운로드 후 USB를 PC에 연결하고 실행합니다.

Rufus USB 설치 디스크 만들기
Rufus USB 설치 디스크 만들기

1번 표시된 버튼을 클릭해 다운로드 받은 우분투 ISO(ubuntu-16.04.4-desktop-amd64.iso)파일을 선택하고 2번 표시된 시작버튼을 클릭합니다.

Rufus SysLinux 선택
Rufus SysLinux 선택

이 화면이 나타납니다. 리눅스 부팅을 하기 위한 추가파일을 다운로드하여 설치에 사용하겠다는 메시지입니다. 예 버튼을 클릭합니다.

Rufus 이미지 기록방식 선택
Rufus 이미지 기록방식 선택

이미지 기록방식을 선택하는 부분입니다. ISO 이미지 모드로 선택하고 OK버튼을 클릭하면 USB부팅 이미지 제작이 시작됩니다.

3.
이제 채굴을 할 PC에 제작된 USB메모리를 삽입하고 USB로 부팅할 준비를 합니다. 메인보드에 따라(바이오스 형식에 따라) USB로 부팅(부팅순서 선택)하는 방법이 달라집니다. 메인보드 매뉴얼이나 제조사 FAQ등을 찾아 PC의 전원을 넣으면서 USB로 부팅하는 키를 눌러 여러번 눌러 부팅순서를 선택한 후 USB로 부팅을 시작합니다.

Gigabyte – F12 / ASUS – F8 / ECS – F7 or ESC / Samsung – ESC / LG Gram – F10
Intel – F10 (추후 다른 보드들은 추가로 넣겠습니다)

하단중앙으로 작은 사람아이콘과 키보드아이콘이 나타나면 정상적으로 설치가 시작되는것입니다. 조금 기다리면 설치화면이 나타납니다.

우분투 설치

이제 우분투 설치를 시작합니다. 예전엔 리눅스 설치방법이 상당히 까다로웠으나 요즘은 윈도우 설치하는것만큼 쉬워졌습니다. 천천히 따라오시면 쉽게 설치할 수 있습니다.

우분투 설치 언어선택 화면
우분투 설치 언어선택 화면

좌측의 리스크를 스크롤 하면 한국어를 선택할 수 있습니다. 한국어를 사용할 수 있는데 굳이 영어로 하실 필요는 없을것입니다. 한국어를 클릭하면 Install Ubuntu버튼이 한글로 바뀝니다. 그 버튼(Ubuntu 설치)을 클릭합니다.

우분투 설치중 업데이트 선택
우분투 설치중 업데이트 선택

인터넷이 연결되어 있다면 설치중에 업데이트를 다운로드 받을지를 선택하는 부분입니다. 두 부분다 선택(체크) 후 계속버튼을 클릭합니다.

우분투 설치 형식 선택
우분투 설치 형식 선택

설치 형식을 선택합니다. 위 화면은 새 하드디스크(SSD)가 설치되어 있는 상태라서 저렇게 나오고 윈도우10이나 이전 우분투가 설치되어 있다면 다른 형식으로 나타납니다. 깨끗하게 다 지워내고 설치를 하기 위해 디스크를 지우고 Ubuntu설치를 클릭 후 지금 설치버튼을 클릭합니다.

이 부분에서 설치 형식을 세부적으로 지정이 가능합니다. 스왑영역같은 부분들을 파티션을 따로 만들어 관리를 하는등을 선택할 수 있지만 자동으로 선택을 해도 차이는 미비했습니다.

우분투 설치 파티션 기록 선택
우분투 설치 파티션 기록 선택

최종적으로 파티션 생성을 위한 선택화면입니다. 계속 버튼을 클릭합니다.

우분투 설치 지역 선택
우분투 설치 지역 선택

사는 지역(설치 지역)을 선택하는 부분입니다. 계속 버튼을 클릭합니다.

우분투 설치 키보드 레이아웃 선택
우분투 설치 키보드 레이아웃 선택

키보드 레이아웃을 선택합니다. 스크롤을 내려 한국어 – 자신의 키보드 종류를 선택한 후 계속 버튼을 클릭합니다.

우분투 설치 사용자 정보 입력
우분투 설치 사용자 정보 입력

사용자 정보를 입력합니다. 암호 입력란 아래쪽의 자동으로 로그인을 체크하면 우분투 부팅 후 암호입력없이 자동으로 데스크탑화면으로 진입하게 됩니다. 개인 공간이 아니면 이건 선택하지 않으시는게 좋을것입니다. 계속 버튼을 클릭하면 이제 설치가 진행됩니다.

우분투 설치 진행
우분투 설치 진행

설치가 진행됩니다. SSD라면 대략 5~10여분 이내에 설치가 완료됩니다.

우분투 설치완료
우분투 설치완료

설치가 완료되었습니다. 지금 다시 시작 버튼을 클릭합니다.

우분투 기본 환경 설정

수고하셨습니다. 이제 기본적인 설정을 합니다. 윈도우와 대부분 비슷합니다.

우분투 시동 화면
우분투 시동 화면

좌측 독(Dock)에서 프로그램들을 클릭하여 실행할 수 있고 상단의 상태표시줄을 통해 현재 실행되고 있는 프로그램들을 보고 작은 아이콘들을 통해 설정을 진행하는등을 할 수 있습니다. 우선 절전설정을 합니다. 채굴기는 24시간 동작하여야 하는데 절전모드로 진입을 하게 둬서는 안되죠.

우분투 시스템 세팅 메뉴
우분투 시스템 세팅 메뉴

상단의 톱니바퀴 버튼을 눌러 System Settings…(시스템 설정, 설치중 업데이트가 진행되었다면 이 부분도 한글로 나옵니다. 이건 추후 업데이트를 통해 바뀝니다)을 선택합니다.

우분투 시스템 세팅 화면

우분투 시스템 세팅 화면우분투의 여러 설정을 할 수 있는 부분입니다. 우린 절전설정을 할것이니 밝게 보이는 부분의 Brightness & Lock(밝기와 잠금)아이콘을 클릭합니다.

우분투 밝기와 잠금 조정화면
우분투 밝기와 잠금 조정화면

요 부분의 화면은 메인보드의 기능에 따라 약간씩 달라집니다만 그 기본은 동일합니다. 첫번째 부분은 화면보호기로 진입되는 시간을 설정하고 Lock(잠금) 버튼을 꺼주시면 됩니다. 일부 하이버네이션 기능등이 지원되는 시스템의 경우에는 여기에서 설정을 한 시간대에 최대절전모드로 진입되기 때문입니다. 그 아래 체크부분은 화면보호기에서 복귀할때 암호를 입력할것인지를 묻는 부분입니다. 개인 공간이 아니라면 이 부분의 체크는 남겨두시는게 좋겠죠.

우분투 바탕화면 마우스 우측클릭 메뉴
우분투 바탕화면 마우스 우측클릭 메뉴

이제 터미널을 열어 시스템 업데이트를 합니다. 우분투나 맥시스템은 터미널을 통한 작업을 많이 하게 됩니다. 설치된 프로그램들을 통해서도 작업이 가능하지만 터미널상에서 명령어를 통해 하는것이 더 간단하고 편리하기 때문입니다. 바탕화면의 빈곳에 마우스를 위치시킨 후 마우스 우측버튼을 눌러 나오는 메뉴중 Open Terminal(터미널 열기)를 선택합니다.

우분투 터미널을 통한 업데이트

우분투 터미널을 통한 업데이트우분투 터미널 화면입니다. 이제 우분투 시스템을 최신으로 업데이트를 합니다. 그림처럼 명령어(sudo apt-get update && sudo apt-get upgrade)를 입력 후 엔터를 친 후 암호를 입력하면 업데이트를 위한 작업이 진행됩니다.

sudo는 다음 작업을 관리자 계정으로 실행하라는 명령입니다. 세부적인 명령어들은 구글링등을 통해서 찾아보시면 쉽게 설명되어 있는 곳들이 많이 있습니다. 간략하게만 설명드립니다. apt-get update를 통해 저장소(윈도우는 마이크로소프트사를 통해 업데이트를 하지만 오픈소스인 우분투는 업데이트 서버가 전세계의 여러곳에 있습니다) 및 시스템에서 업데이트 해야 할 부분들을 찾아내고 apt-get upgrade를 통해 실제 다운로드 후 업그레이드를 진행합니다. && 명령은 두 명령을 차례대로 하라는것입니다.

우분투 업데이트 진행 묻기
우분투 업데이트 진행 묻기

이제 업데이트 준비가 되었으니 진행을 하겠냐고 묻습니다. y를 치고 엔터를 누릅니다.

업데이트가 완료되면 sudo reboot(혹은 상단의 톱니바퀴 아이콘을 통해 Shut Down버튼을 눌러)명령으로 재시작을 합니다.

채굴(마이닝) 설정

채굴은 이더리움(Ethereum)을 기준으로 설명합니다. 다른 블록체인들은 추후 더 글을 만들어 보도록 하겠습니다. 채굴은 그래픽카드의 성능을 이용해서 이루어집니다. CPU를 통한 채굴도 가능하지만(Monero계열) 그건 나중에 다루기로 합니다. 여기서 기본으로 다룰 nVidia그래픽카드(지포스)계열은 CUDA기능을 이용하기 때문에 제조사 드라이버를 설치해야 채굴 프로그램에서 그 연산기능을 이용할 수 있습니다. nVidia 드라이버는 간단한 명령을 통해서 설치할 수 있습니다. 보통 375버전이나 384버전을 이용합니다. 채굴 프로그램에 따라서 적당한 드라이버를 선택해 설치하라고 하는데 처음 설치해보는데 이것저것 복잡하게 할것없이 간단하게 가봅니다.

상단 톱니바퀴아이콘을 눌러 About this computer()를 선택하면 현재 PC의 상태가 나옵니다. 이 부분을 보면 현재는 우분투에서 기본지원하는 드라이버만 선택되어 있어 그래픽카드명이 정확하게 나타나질 않습니다.

우분투 시스템 상태 화면
우분투 시스템 상태 화면

터미널을 열고 sudo apt-get install nvidia-384라고 명령을 내리고 암호를 입력해 앞에서 업데이트 하듯이 드라이버 설치를 진행합니다.

$ sudo apt-get install nvidia-384
[sudo] password for 사용자:

설치가 완료되면 PC를 재부팅 합니다.

$ sudo reboot

이제 상단 톱니바퀴아이콘을 눌러 다시 상태화면을 보면 이제 그래픽카드명이 정상적으로 나타나는것을 볼 수 있습니다. (1050TI, 1060 이런식으로 정확히 나타나야 합니다)

그래픽카드정보가 나타나는 자세한정보
그래픽카드정보가 나타나는 자세한정보

보통은 이 부분에서 약간의 메모리 오버클럭 및 그래픽카드의 전원 언더볼팅등을 진행하지만 이 내용만 해도 꽤 많은 설명이 필요합니다. 이런 부분들은 땡글(채굴 커뮤니티)이나 구글링을 통해 방법을 찾아보시면 도움이 될껍니다. 저는 기본적인 부분들만 작성하도록 하겠습니다.

채굴은 보통 두가지 방법으로 할 수 있습니다. 채굴 풀이라는곳에 가입을 해서 함께 하거나 솔로마이닝을 합니다. 하지만 솔로마이닝으로는 결과를 얻기가 어렵고 일반적으로 채굴풀(Mining Pool)을 통합니다. 채굴이 성공을 하게되면 일정수준의 코인이 배분되는데 이걸 기여도에 따라 분배하여 나눠주는 방식이 채굴풀입니다.

우선 채굴풀에 가입을 합니다. 풀은 전세계에 많이 있지만 저는 마이닝풀허브를 이용해 설명을 해드립니다. 한국인이 운영하는 풀이고 한글지원이 되며 땡글사이트의 게시판을 통해 지원을 받기가 좋기때문입니다. 마이닝풀허브(https://miningpoolhub.com)에 접속하여 가입을 합니다. 요즘 해킹이 극성입니다. 핸드폰에 구글 OTP를 설치해서 OTP설정까지 해주시는게 좋습니다.

이제 웹브라우져를 통해 채굴 프로그램을 다운받습니다. 좌측 아이콘중 FireFox아이콘을 클릭해서 다음 주소로 이동합니다.

우분투 FireFox
우분투 FireFox

https://bitcointalk.org/index.php?topic=1433925.0

채굴 프로그램 중 EThash계열 코인을 채굴할 수 있는 클레이모어(Claymore) 프로그램입니다. 채굴을 할 수 있는 프로그램들은 다양합니다. 마이닝풀허브를 통해서도 여러가지를 볼 수 있습니다. 계속 말씀드리듯 기초적으로 하는 방법을 알려드리는것이니 추후에 다른것들도 테스트 해보세요.

이 사이트를 통해 계속 프로그램이 업데이트 되니 가끔 확인을 해보시면 좋습니다. 하드포크등으로 인해 구버전의 프로그램으로는 채굴이 안될수도 있습니다.

사이트에서 조금 스크롤을 해보면 다운로드 받을 수 있는 링크가 있습니다. 이 부분을 클릭해서 다운로드 사이트로 이동합니다.

채굴 프로그램 클레이모어 다운로드 링크
채굴 프로그램 클레이모어 다운로드 링크

다운로드는 MEGA사이트와 구글드라이브를 통해 할 수 있지만 구글 드라이브의 경우엔 간혹 프로그램을 바이러스로 인식(프로그램의 사이즈를 줄인다거나 프로그램 해킹등을 방지하기 위해 압축하고 암호화를 하는데 이걸 백신에서 바이러스로 인식하는 경우가 있습니다)해 다운로드가 진행되지 않는 경우가 있습니다. 윈도우환경에서는 더 심합니다. MEGA로 이동합니다.

클레이모어 메가 다운로드
클레이모어 메가 다운로드

하단쪽이 최근 버전입니다. 각 버전별 두가지로 업로드 되어 있는데 Zip Archive는 윈도우용이고 Gnu Compressed는 리눅스(우분투)용입니다. 11.7버전(2018년 4월 27일 현재)을 다운로드 받기위해 이 라인에 마우스를 위치시킨 후 우측버튼을 눌러 Standard Download를 선택합니다.

클레이모어 메가 스탠다드 다운로드
클레이모어 메가 스탠다드 다운로드

Save File버튼을 눌러 다운로드 합니다.

메가 다운로드 저장
메가 다운로드 저장

다운로드가 완료되면 FireFox 상단에 다운로드 완료를 알려줍니다. 여기에서 다운로드된 폴더를 열기 위해 화살표 부분을 클릭합니다.

다운로드 폴더 열기
다운로드 폴더 열기

다운로드 폴더가 열리면 압축파일을 더블클릭하여 압축관리자 프로그램을 호출합니다.

클레이모어 다운로드 폴더 압축파일
클레이모어 다운로드 폴더 압축파일

압축관리자가 열리면 다운로드 폴더 좌측의 리스트에서 Home 부분을 클릭해서 폴더의 위치를 바꾼 후 압축관리자내의 폴더를 드래그하여 Home 폴더내로 복사합니다. 다른 위치에 압축을 풀어도 되지만 우분투의 계정 기본 폴더가 Home폴더이고 터미널을 열면 시작위치가 이부분입니다. 추후 시작프로그램에 등록할때 좀더 편리하게 하기 위함(사실 제가 설명드리기 편해서 일수도….)입니다.

클레이모어 폴더 압축풀기
클레이모어 폴더 압축풀기

이제 풀어논 폴더명을 간단하게 바꿉니다. 추후 저 긴 폴더명을 다 입력하긴 많이 불편하니까요. 클레이모어 폴더에 마우스 우측버튼으로 Rename…(이름바꾸기)를 선택해 claymore로 이름을 변경해 줍니다.

우분투 폴더명 바꾸기
우분투 폴더명 바꾸기

이제 claymore 폴더를 더블클릭해보면 채굴을 위한 프로그램과 파일들이 보입니다. 여기에서 마우스 우측버튼을 눌러 Open in Terminal 메뉴를 클릭합니다. 이렇게 하면 이 폴더위치에서 터미널이 열립니다. 그냥 바탕화면에서 터미널을 열었다면 $ cd claymore 명령으로 이 위치로 이동할수도 있습니다.  $ ls 명령으로 목록을 보면 나타나는 파일중 ethdcrminer64 프로그램이 채굴용 프로그램입니다.

클레이모어 파일 리스트
클레이모어 파일 리스트

이제 채굴을 위한 모든 준비가 끝났습니다. 채굴을 해볼까요?
다음 명령을 입력합니다. 명령 앞쪽에 ./ 는 꼭 넣어주셔야 합니다. 현재위치의 프로그램을 실행하겠다는 뜻입니다.

$ ./ethdcrminer64 -epool asia.ethash-hub.miningpoolhub.com:20535 -ewal username.workername -eworker username.workername -esm 2 -epsw x

물론 이대로 하시면 안됩니다. 내가 채굴하고 있다는걸 풀에 알려야 하기 때문입니다. 이 부분에서 username 과 workername 부분을 바꿔줍니다. username은 마이닝풀허브에 가입했던 아이디를 넣어주시고 workername에는 내가 구별할 이름을 넣어주면 됩니다. 보통 채굴기를 여러개 운영하게 되면 채굴기가 정상적으로 일을 하고 있는지를 마이닝풀허브의 대쉬보드를 통해 볼수 있는데 workername으로 채굴기별로 이름을 바꿔 구별해두면 문제가 생겼을때 어떤 채굴기에 문제가 생겼는지를 쉽게 알아낼수 있기 때문입니다. 예를 들자면 내아이디.eth01 이런식으로 넣어준다는거죠.

클레이모어 실행
클레이모어 실행

위의 그림은 가상환경에서 캡쳐를 하기 위해 한것이라 그래픽카드를 찾지 못해서 오류가 난 상황입니다. 정상적이라면 채굴이 진행되는 화면이 나옵니다. 이제 정상적으로 채굴이 되는게 보인다면 다 된것입니다. 두세시간이상 채굴을 돌려보고 풀에서 잔고를 보면 아주 작게나마 코인이 들어오는걸 보실수 있습니다. (때론 오래 기다려야 할수도 있습니다. 인내를 가지고 테스트를 해주세요)

이더리움 채굴 초기화면
이더리움 채굴 초기화면

하루이틀정도 충분히 테스트해보세요.

이더리움 채굴화면
이더리움 채굴화면

위 화면에서 보듯 12.409 Mh/s와 같은 메시지가 나타나면 정상적으로 채굴되는것입니다.

이제 PC가 시작되면 자동으로 채굴이 시작되도록 시작프로그램에 등록을 해봅시다. 한두대 정도야 매번 명령을 입력해가며 채굴을 할수도 있지만 여러대로 늘어나게 되면 이것도 일입니다.

좌측 독의 제일 위 검색 아이콘을 클릭 후 start를 입력하면 시작프로그램이 나타납니다. 이걸 클릭합니다.

시작프로그램검색
시작프로그램검색

시작프로그램 설정 화면이 나타나면 Add 버튼을 눌러 프로그램을 등록합니다.

시작프로그램 등록
시작프로그램 등록

Name: 부분에 eth 라고 넣고
Command: 부분에 xterm -e “/home/우분투아이디/claymore/ethdcrminer64 -epool asia.ethash-hub.miningpoolhub.com:20535 -ewal username.workername -eworker username.workername -esm 2 -epsw x”
Comment: 부분은 비워도 상관없습니다.

명령은 xterm이라는 터미널 프로그램을 열어 채굴 프로그램을 실행하라는 명령을 주는것입니다. 물론 우분투아이디라고 쓰여진 부분엔 우분투 설치할때 지정한 아이디를 넣어주면 됩니다. username과 workername에 대해선 위에 설명을 했으니 풀허브의 정보를 넣어주세요.

이제 재부팅을 해보면 자동으로 채굴프로그램이 시작되는걸 보실 수 있을껍니다.

채굴에 대한 정보는 땡글이나 구글링을 통하면 많이 얻을 수 있습니다. 제가 알려드린건 기본이고 더 상세한 세팅은 정보를 찾아보시면 도움이 될껍니다.

채굴 모니터링 프로그램인 ethman이나 네트워크 설정부분에 대한건 추후 필요하다고 느껴지면 또 블로깅을 해보도록 하겠습니다.

따라오시느라 수고하셨습니다.

 

내용은 계속 수정하고 있습니다. 최종 수정은 2018-05-02에 이루어졌습니다.

글쓴이

younoa

Computer Repair Programmer

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다