跳到主要內容

使用更穩定快速的 Ubuntu Server 作業系統挖礦 (XMR / ETN)、Compile XMR Stak 教學



一般挖礦可能都是使用 Windows 7 或 Windows 10 作為系統,但其實 Win 系列向來都有穩定性不足的問題,而且如果對於慣用 Linux 的人來說使用起來應該會覺得非常、非常麻煩,自訂性非常的差、一堆莫名其妙的進程關都不關不掉,更不要說使用的如果不是專業版的 Windows 還會碰到莫名其妙的亂更新、亂重組硬碟和一堆有的沒的系統維護排程,這對於應該 24HR 全速運轉的礦機來說是非常不必要也會造成收益的損失。

那要挑選哪個 Linux 系統呢?其實先前有介紹過「Hive OS」這個專為礦機所設計的 Linux 發行版,但有人回饋說這個系統的穩定度也是不太 OK,那就得回歸古法來使用 Ubuntu 或習慣的發行版了,其中更適合的是安裝「無 GUI」的作業系統,因為老實說礦機並不需要圖形介面輸出更不需要外接螢幕來浪費電,那能直接使用 SSH (或不習慣的人可以用 VNC) 操控是最好的,所以就選擇了 Ubuntu Server 來做操作。


Ubuntu 作業系統的安裝可以參考這篇,並且記得改為下載 Ubuntu Server 的 ISO 檔。



挖礦程式


XMR Stak
GitHub: https://github.com/fireice-uk/xmr-stak 
那又會以 CryptoNight 算法的挖礦程式 XMR Stak 作為範例,這個挖礦程式在先前已經介紹非常多遍了,可以拿來挖 Monero、Electroneum ...等匿名加密貨幣,也會自行 Compile 無手續費的版本讓挖礦收益能最大化。



建置環境


CUDA Toolkit: https://developer.nvidia.com/cuda-downloads
APP SDK: https://developer.amd.com/amd-accelerated-parallel-processing-app-sdk
首先在 Ubuntu 的環境需要先安裝「CUDA 8.0+」(Nvidia GPU) 或「APP SDK 3.0」(AMD GPU),這邊會以 Nvidia 的來做示範,只要安裝和自己顯卡對應的套件即可,不需要兩個都安裝。


wget https://developer.nvidia.com/compute/cuda/9.1/Prod/local_installers/cuda-repo-ubuntu1604-9-1-local_9.1.85-1_amd64
sudo dpkg -i cuda-repo-ubuntu1604-9-1-local_9.1.85-1_amd64.deb
sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda
上述指令是安裝 CUDA 9.1 (N卡),對應的是 Ubuntu 16.04 版本,64 位元 CPU,如果和我的建置環境不同切勿照抄這些指令,得到 CUDA 頁面重新選擇自己的對應版本並且 wget 下載回來並使用下載頁下方附註的指令。



Compile XMR Stak


sudo apt install libmicrohttpd-dev libssl-dev cmake build-essential libhwloc-dev
git clone https://github.com/fireice-uk/xmr-stak.git
mkdir xmr-stak/build
cd xmr-stak/build
cmake ..
make install
安裝完成 CUDA 或 APP SDK 後就可以來 Compile XMR Stak 了,我遇到的情況是因為沒有建置 OpenCL 的環境所以造成 cmake 錯誤,但其實在我之前測試的結果裡好像並不需要 OpenCL 的,所以就加上了 -DOpenCL_ENABLE=OFF 這個參數直接將它關閉。


cd bin
./xmr-stak
然後可使用的 XMR Stak 就會出現在 bin 資料夾內,使用指令就可以開啟挖礦程式並執行產生 Config 的嚮導,只要照提問填寫即可,如果想挖 ETN 的話礦池可以參考「台灣 ETN 礦池」


設定完成後就會開始挖礦了,也一樣可以按「r、h、c」來查看挖礦狀況。


sudo vim cpu.txt (config.txt / nvidia.txt / amd.txt)
至於要將挖礦程式設定到最佳化的部分可以先使用 ls 指令查看資料夾內所有的 Config 檔再用 vim 或習慣的編輯器進行改寫,就如同 Windows 版的設定一樣,可以參考之前寫過的介紹進行編輯。




留言



這個網誌中的熱門文章

Linux (Ubuntu) 查詢硬碟容量、剩餘大小指令

在 Ubuntu Desktop 版本或有安裝 GUI 像 Xfce 的 Server 版本當然可以直接從圖形介面查看硬碟容量和已經使用的大小, 但如果是在純 CLI 版本或使用 SSH 連線時呢?那就需要用到指令了。 顯示硬碟容量、已使用、可用大小。 df -h 查詢資料夾所占硬碟的大小。 du -h 查詢檔案大小 ls -l

吃光硬碟讀寫的大怪獸 - Superfetch 是什麼?可以關嗎?

Superfetch 是 Windows 內建的硬碟快取功能,它會預先將檔案讀取起來到 Ram 裡方便稍後做使用,所以常常在工作管理員內都可以看到 Superfetch 往往占掉了不少的硬碟使用量,那這樣的情形是好的嗎?其實理論上並不會有太大影響,畢竟 Superfetch 只是將等會要讀取的內容先預置在 Ram 中,如果不趁硬碟負載小的時候優先讀取,之後反而可能忙不過來呢。當然如果你是使用 SSD 的話可能會為使用壽命擔心, 高頻率的讀取可能加速固態硬碟老化,那在讀取速度原本就很快的 SSD 當然就相對的沒有必要開啟 Superfetch 了。 Superfetch 在電腦待機時吃掉大部分硬碟使用量是很常有的事。 要關閉也很簡單, Win+R > services.msc 打開「服務」,找到 Superfetch。 右鍵 > 內容,將它更改為「 已停用 」後確定即可。

鍵盤按鍵壞了怎麼辦?用 Sharpkeys 換一個鍵來用就好啦 (重新設定 / 配置鍵盤按鍵 / Key Mapping)

我有一個壞習慣就是很常按 Alt+Tab,有時候即使沒要跳畫面還是偶爾會手癢按個幾下,尤其 Alt 又是大拇指按的,可能我的大拇指特別有力所以最近把 Alt 真的按壞了,我是用青軸的機械式鍵盤,所以每個軸都是獨立的應該是可以更換,但如果是用薄膜式鍵盤呢?那可能只能整把換掉了, 或是交換一下鍵位拿一個平常沒在用的鍵頂替一下,也就是今天要介紹的「Sharpkeys」。 Sharpkeys 官方網站 :  http://www.randyrants.com/category/sharpkeys GitHub :  https://github.com/randyrants/sharpkeys 使用 Sharpkeys 會需要 .NET Framework 4.0,如果還沒有安裝的可以到 微軟官方 下載。 開啟 Sharpkeys 後點選 「Add」 ,左方是選擇 「被重新分配的鍵位」 ,右方是 「替代的鍵位」 ,你也可以按 Type Key 直接用打的讓系統偵測。 像我就做了兩個 Key Mapping,其實就是 Win 鍵和 Alt 鍵互換啦,設定完成後就按「Write to Registry」寫入註冊表, 然後重開機或重新登入就可以生效囉。