在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で自分のアドレスを検索するとでてきます。