ethOSでclaymore.stub.confをリモート配布する仕組みを作りました

前回の投稿「ethOSでNiceHashプールにつないでみた(ETH+DCR デュアルマイニング環境)」でethOSからNiceHashプールにつながるようになり、マイニング報酬は基軸通貨であるBTCで払い出されるようになりました。デュアルマイニングもなかなか効率がいいので、いまでは全てのリグがこの設定になっています。

ただ5リグもclaymore.stub.confファイルを設定しているとだんだん面倒になってくるんですよね。。。メインの設定ファイルlocal.confはリモート配布できるようになっているのにこれができないのは今後リグを増設する上でも管理の障壁となりそうです。

ethOSのナレッジベースを見ると「配布方法は独自で作ってね」とのこと。「ないなら作ってしまえ」がエンジニア魂ということで、claymore.stub.confをリモート配布する仕組みを作りました!

ethos-putcmconf
https://github.com/eth-senpai/ethos-putcmconf

設計思想としてはデフォルトで実装されているputconfコマンドを踏襲していて、外部サーバに置いてあるclaymore.stub.conf上書き用の設定ファイルを取得してローカルのclaymore.stub.confファイルを上書きします。起動時の自動実行と明示的な手動実行が可能です。

インストールはethOSから以下のコマンドを順次実行してください。

git clone https://github.com/eth-senpai/ethos-putcmconf
cd ethos-putcmconf
chmod 755 install.sh
sudo ./install.sh
cd

次に、外部サーバでホストするclaymore.stub.txtファイルについてですが、NiceHashプールはワーカー名を指定する必要があり、claymore.stub.confのウォレットアドレスに「.(ドット)」でワーカー名を指定していました。

このまま外部サーバに置いてしまうと同一のワーカー名として配布することになってしまうので、リモートのclaymore.stub.txtにはワーカー名を記述しないようにして、取得時にコマンド側で自動的にホスト名をワーカー名として付加する仕組みにしました。前回の投稿で作成したclaymore.stub.confを外部サーバにホストする想定でご説明します。

# WARNING! Remove "#" characters to enable lines, with "#" they are disabled and will be ignored by miner! Check README for details.
# WARNING! Miner loads options from this file only if there are not any options in the command line!
-colors 0
-dbg -1
-esm 3
-epool stratum+tcp://daggerhashimoto.jp.nicehash.com:3353
-ewal xxxxxxxxxxxxxxxxx ← ウォレットアドレスのみを記述(「.(ドット)」も不要)
-epsw x
#-eworker WORKER
-allpools 1
-estale 0
#-gser 2
#-allcoins 1
#-wd 0

#uncomment and configure the -dpool and -dwal lines below to enable dualmining.
-mode 0

#-ewal 0xD69af2A796A737A103F12d2f0BCC563a13900E6F
#-epsw x
-dpool stratum+tcp://decred.jp.nicehash.com:3354
-dwal xxxxxxxxxxxxxxxxx ← -ewalと同じウォレットアドレスのみを記述(「.(ドット)」も不要)
#-dpsw x
#-esm 1
#-mode 0
#-tt 70

こちらをclaymore.stub.txtというファイル名で(拡張子は.txt)外部サーバでホストしてください。

ホームディレクトリにremotecm.confというファイルが作られていますので、ここにremote.confと同じように外部サーバでホストしているファイルのURLを記述します。

# vi remotecm.conf

http://your-server.com/claymore.stub.txt ← 行頭の#を削除して実際のURLを記述
#comment out or remove the top line to enable single-rig mode

それでは実際に外部サーバからclaymore.stub.txtファイルを取得してみましょう!putcmconf && minestopコマンドを実行して、以下のメッセージが表示されれば正常に動作しています。実行後は設定を適用してマイニングが再起動します。

 # putcmconf && minestop
 .........IMPORTED REMOTECM CONFIG INTO LOCAL claymore.stub.conf.

miner STOPPED

念のためローカルのclaymore.stub.confファイルを見てみましょう。ホスト名が付加され、前回の投稿で作成したclaymore.stub.confと同じ内容になっています。

# cat claymore.stub.conf

# WARNING! Remove "#" characters to enable lines, with "#" they are disabled and will be ignored by miner! Check README for details.
# WARNING! Miner loads options from this file only if there are not any options in the command line!
-colors 0
-dbg -1
-esm 3
-epool stratum+tcp://daggerhashimoto.jp.nicehash.com:3353
-ewal xxxxxxxxxxxxxxxxx.40a7e4 ← ホスト名が付加されました
-epsw x
#-eworker WORKER
-allpools 1
-estale 0
#-gser 2
#-allcoins 1
#-wd 0

#uncomment and configure the -dpool and -dwal lines below to enable dualmining..40a7e4 ← ここも付加されますが動作に影響はないので気にしないでください
-mode 0

#-ewal 0xD69af2A796A737A103F12d2f0BCC563a13900E6F
#-epsw x
-dpool stratum+tcp://decred.jp.nicehash.com:3354
-dwal xxxxxxxxxxxxxxxxx.40a7e4 ← ホスト名が付加されました
#-dpsw x
#-esm 1
#-mode 0
#-tt 70

デュアルマイニング環境で今後リグを増設する予定の方はぜひ使ってみてください。

 

※当プログラムを使用したことによる損害について、当方は一切の責任を負いかねます。自己責任でご利用ください。