在Ubuntu上进行以太坊挖矿

使用Ubuntu 16.04服务器配置以太坊矿机

我是Kumanote合同会社的Tanaka。

這次使用Ubuntu 16.04來設置Ethereum的挖礦機,所以我想整理一下相關資訊。主要內容主要是軟體設定的總結。

请注意

    • マイニングプールを使ったマイニングになります。(ソロマイニンングではない)

 

    AMD系のGPUを使ったセットアップなので、NVIDIA系のGPUは本記事対象外となります。

顺便说一下,视频卡(GPU)行业的主要客户是Windows游戏玩家,基本上推荐使用Windows操作系统(不推荐使用Linux)。经过尝试,我发现以下是优缺点。

缺点

採掘効率(Hashrate)はWindowsの方がいいです。(2MH/sくらいデフォルトで違います。)変わらないみたいです。
オーバークロックや消費電力を下げるツール及び関連記事はwindowsの方が充実しています。
色々やっていて動かない時に、windowsだと動くんじゃないかという気持ちがよぎり、少し萎えます。

在中文中也有好处。

    • guiをさわらなくていいです。

windows updateがはしらないので安定して動作します。
がんばればscriptベースで大量のマシンを設定して動作することができます。

我有一点后悔,如果我仔细阅读并购买了适用于挖矿的升级线缆和主板等硬件,那会更好。

正如↑所述,尽管我买了GPU,但存在无法识别的问题…也许更好地谨慎选择主板。

通常情况下,显卡与主板的连接通常为1到2个。
在进行严谨的挖矿时,会连接数个显卡,如4到6个,但这不是常规用法。
因此,即使是前面介绍的主板,也不能保证能正常识别最多6块显卡。
我尝试过使用各种不同的主板,通常使用挖矿卡槽转接线,能够正常识别4到5块显卡。

我在ASROCK FATAL1TY H270 Performance上尝试了,但最多只能识别到3个…
在后来的几天里,经过一些尝试,我发现只有在将所有GPU都连接好并在bios中重新启动后,才能成功地识别到6个。
但有时候会出现不稳定的情况,所以选择扩展插槽时需要谨慎。

↓↓↓ 前置きが長くなりましたが、以下手順になります。 ↓↓↓

os インストール

usbなどにisoファイルを焼き付け、usbからosインストールを行う。

MacでUbuntuのインストールUSBディスクを作成する – Qiitaが詳しいです。

ssh serverのインストール

$ sudo apt-get update -y
$ sudo apt-get install openssh-server

→ sshできるようになるので、windows/macなどからsshします(コマンドがコピペできるようになるので便利です)
以下の作業はすべてローカルマシンからマイニングマシンにsshで接続して作業を行います。

utilityのインストール

$ sudo apt-get install -y git screen vim unzip python
$ vim ~/.vimrc
:color desert
set number

$ vim ~/.bashrc
force_color_prompt=yes                             # delete comment & enable setting
LS_COLORS=$LS_COLORS:'di=0;36:' ; export LS_COLORS #add line at the end

ロケールの設定

$ sudo apt-get install language-pack-ja-base language-pack-ja
$ sudo update-locale LANG=ja_JP.UTF-8
$ vim ~/.bashrc
# add the following lines at the end of file.
case $TERM in
  linux)LANG=C ;;
  *)LANG=ja_JP.UTF-8 ;;
esac

将SSH配置为仅允许使用密钥进行登录。

$ sudo vim /etc/ssh/sshd_config
PasswordAuthentication no # set PasswordAuthentication no

$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ touch ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
$ vim ~/.ssh/authorized_keys # insert my mac public key.
$ cat ~/.ssh/id_rsa.pub | pbcopy # ローカルのmacの公開鍵をクリップボードにコピー -> authorized_keysに行追加

AMD Gpu Driverのインストール

参考
    • ドライバーダウンロードページ

 

    UbuntuでUSBメモリのマウント – Qiita
$ sudo apt dist-upgrade
# amdgpu-pro-17.10-429170.tar.xzをダウンロード USBに焼いて移動
$ ls /dev/sd* # usbの場所を確認 -> 今回はsdb1だった
$ sudo mount -t vfat /dev/sdb1 /media
$ mkdir ~/drivers
$ sudo cp /media/amdgpu-pro-17.10-429170.tar.xz ~/drivers/
$ sudo chown `whoami`:`whoami` ~/drivers/amdgpu-pro-17.10-429170.tar.xz
$ cd ~/drivers
$ tar -Jxvf amdgpu-pro-17.10-429170.tar.xz
$ cd amdgpu-pro-17.10-429170
$ ./amdgpu-pro-install -y
$ sudo shutdown -r now
$ sudo usermod -a -G video $LOGNAME
$ logout
$ groups # check if belongs to video group
$ dpkg -l amdgpu-pro
# check if version 17.10-429170 is installed

安装挖矿软件

请在中国本地参考一下
    Claymore-Dual-Miner
$ mkdir ~/workspace
$ cd ~/workspace
$ wget -O Claymore.v9.5.tar.gz https://github.com/nanopool/Claymore-Dual-Miner/releases/download/v9.5/Claymore.s.Dual.Ethereum.Decred_Siacoin_Lbry_Pascal.AMD.NVIDIA.GPU.Miner.v9.5.-.LINUX.tar.gz
$ mkdir Claymore.v9.5
$ tar xvzf Claymore.v9.5.tar.gz -C ./Claymore.v9.5

マイニング実行

事前準備

libcurl3がないと以下のエラーがでるので、実行前にlibcurl3をインストールしておく

$ sudo apt-get install libcurl3

ちなみにこんなエラーです

./ethdcrminer64: error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory

实施

在Claymore.v9.5安装目录中创建以下执行文件并运行。使用诸如screen命令之类的工具进行执行会很方便。

$ vim start.sh
#!/bin/sh
# export GPU_FORCE_64BIT_PTR=0 # must be comment out for amdgpu-pro
export GPU_MAX_HEAP_SIZE=100
export GPU_USE_SYNC_OBJECTS=1
export GPU_MAX_ALLOC_PERCENT=100
export GPU_SINGLE_ALLOC_PERCENT=100

export ETH_ADDR=自分のethアドレス
export ETH_WORKER_NAME=任意のワーカー名(rig01とか)
export PASC_ADDR=自分のpascアドレス
export PASC_WORKER_NAME=任意のワーカー名(rig01とか)

./ethdcrminer64 \
  -epool asia1.ethermine.org:4444 \
  -ewal $ETH_ADDR.$ETH_WORKER_NAME \
  -epsw x \
  -dpool stratum+tcp://pasc-asia1.nanopool.org:15555 \
  -dwal $PASC_ADDR.$PASC_WORKER_NAME \
  -dpsw x \
  -dcoin pasc \
  -dcri 10 \
  -mode 0 \
  -ftime 10 \
  -etha 2 \
  -allpools 1 \
  -wd 0 \
  -eres 4 \
  -gser 2

备考

    • 以下のオプションはライザーカードなどで台数を増やす時は必須のような予感がしてます(じゃないとhang upすることがあった)

-wd 0 \
-eres 4 \
-gser 2

“epools.txt”, “dpools.txt”なども設定しておいた方が無難です。
同時にpascalcoinも掘っていますが、不要なのであれば、-d*のオブションは不要です。
マイニングの進捗は使用しているmining poolで自分のアドレスを検索するとでてきます。

广告
将在 10 秒后关闭
bannerAds