git.iko.soy/xmrig-bash-scripts
on 94d6c65 help sign in
16 files changed+115−284
since splitsnapshots
unifiedsplit
.gitignore−3 README.md+17−18 build.sh+1−3 config.sh+1−3 crontab-off.sh+8−3 crontab-on.sh+7−3 crontab.sh+2−5 depends.sh+2−4 functions.sh+27−71 input.sh−61 install.sh+16−22 maintenance.sh+2−4 settings.sh+18−33 start.sh+12−45 stop.sh+1−3 update.sh+1−3
.gitignore−3
@@ -1,7 +1,4 @@
11xmrig-cpu/
22*.swp
33crontab
4−null
54config.json
6−myconfig.json
7−mysettings.sh
README.md+17−18
@@ -11,7 +11,6 @@ A set of convenience scripts, written in bash, to help manage installation, conf
1111There is allot to install so the install script will do most of the heavy lifting.
1212At the start the expectation is that you have:
1313* Computer running Ubuntu 18.04 (LTS)
14−* Bash shell
1514* User account with sudo privileges
1615* Installed git
1716* Optionally installed [xmrig-proxy](https://github.com/xmrig/xmrig-proxy)
@@ -22,37 +21,38 @@ Some knowledge of:
2221* Linux Command Line Interface
2322* Linux shell `bash`
2423
24+There is more to install but the install script will install the rest.
25+
2526### Installation
2627
27281. Change to your user home directory.
2829 `cd ~`
29−1. Install git.
30+
31+2. Install git.
3032 `sudo apt install git`
31−1. Clone this project.
33+
34+3. Clone this project.
3235 `git clone https://github.com/seanwhe/xmrig-bash-scripts`
33−1. Change into the cloned directory.
36+
37+4. Change into the cloned directory.
3438 `cd xmrig-bash-scripts`
35−1. Run the install script
39+
40+5. Edit the settings file to your preference.
41+ `vim settings.sh`
42+
43+6. Run the install script
3644 `./install.sh`
37−1. When prompted: "Enter your own settings?" enter 'y'es.
38−1. Enter values for your:
39− 1. Pool server URL
40− 1. Pool server TCP port
41− 1. Receive wallet address
42− 1. Email address
43− 1. Miner identifier name
44−1. After install is complete. Attach to the screen session created during the installation.
45+
46+7. After install is complete. Attach to the screen session created during the installation.
4547 `screen -r`
4648
4749### Operation
4850
4951Defaults - The settings.sh contains a number of variables. With the exception of the 'xmrig' binary, which is installed to `/usr/bin/xmrig`, all files remain in the cloned project directory `~/xmrig-bash-scripts`. Any files generated while running the scripts are also created in this directory.
5052
51−During install the folder source for [xmrig cpu](https://github.com/xmrig/xmrig) is cloned to `~/xmrig-bash-scripts/xmrig-cpu/`. The file `config.json`, used to configure xmrig, is also created in this path and is passed to xmrig at startup.
52−
53−During installation it is recomended to enter your own settings. This creates a file named 'mysettings.sh' which will not be overwritten during future installs or upgrades. Values for variables found in 'mysettings.sh' are used to create 'config.json'.
53+During install the folder source for [xmrig cpu](https://github.com/xmrig/xmrig) is cloned to `~/xmrig-bash-scripts/xmrig-cpu/`. The `config.json` is also created in this path.
5454
55−This should work out the box, if you follow the installation steps and enter your own values for 'mysettings.sh.
55+This should work out the box, if you edit only the top section of `settings.sh` and followed the steps here.
5656
5757Once you have a running xmrig then you can start playing around and tweaking to suite requirements.
5858
@@ -67,7 +67,6 @@ The scripts are designed to be modular to promote resuse, execute exclusion and
6767* crontab-on.sh - redefines the users crontab as created during install.
6868* depends.sh - installs dependancies required by xmrig and these scripts.
6969* functions.sh - a collection of functions used in various of the scripts.
70−* input.sh - prompts to enter values for creating 'mysettings.sh'
7170* install.sh - the main entry point when first installing.
7271* maintenance.sh - performs apt update, upgrade, autoremove and autoclean operations.
7372* settings.sh - contains variables used by these scripts.
build.sh+1−3
@@ -1,7 +1,5 @@
11#!/bin/bash
22
3−echo "${_GREEN}BUILD STARTED${_RESET}"
4−
53# Clone source
64if [ -d "$_XMRIG_CLONE_LOCATION" ]; then
75
@@ -47,5 +45,5 @@ sudo cp $_XMRIG_BUILD_LOCATION/xmrig $_XMRIG_TARGET_LOCATION
4745
4846cd $_WORK_DIR
4947
50−echo "${_CYAN}BUILD STOPPED${_RESET}"
48+echo "BUILD COMPLETE"
5149
config.sh+1−3
@@ -1,8 +1,6 @@
11#!/bin/bash
22
3−echo "${_GREEN}CONFIG STARTED${_RESET}"
4−
53echo "$_CONFIG_JSON" | tee config.json
64
7−echo "${_CYAN}CONFIG STOPPED${_RESET}"
5+echo "CONFIG CREATED"
86
crontab-off.sh+8−3
@@ -1,12 +1,15 @@
11#!/bin/bash
22
3−echo "${_GREEN}DISABLE CRONTAB STARTED${_RESET}"
4−
53# Removes a user crontab
64# Used in conjunction with crontab-on.sh to toggle user crontab between states:
75# on - start/stop xmrig at specified times
86# off - do not start/stop xmrig
97
8+echo "#################################"
9+echo "# DISABLING CRONTAB #"
10+echo "#################################"
11+
12+
1013# Remove existing crontab
1114echo "Backup existing crontab"
1215crontab -l > crontab
@@ -14,5 +17,7 @@ crontab -l > crontab
1417echo "Removing exiting crontab"
1518crontab -r
1619
17−echo "${_CYAN}DISABLE CRONTAB STOPPED${_RESET}"
20+echo "#################################"
21+echo "# CRONTAB DISABLED #"
22+echo "#################################"
1823
crontab-on.sh+7−3
@@ -1,12 +1,14 @@
11#!/bin/bash
22
3−echo "${_GREEN}ENABLE CRONTAB STARTED${_RESET}"
4−
53# Defines a user crontab with schedules as defined in settings.sh
64# Used in conjunction with crontab-off.sh to toggle user crontab between states:
75# on - start/stop xmrig at specified times
86# off - do not start/stop xmrig
97
8+echo "####################################"
9+echo "# ENABLING CRONTAB #"
10+echo "####################################"
11+
1012# Get settings
1113. settings.sh
1214. functions.sh
@@ -16,5 +18,7 @@ sleep 5
1618. crontab.sh
1719sleep 5
1820
19−echo "${_CYAN}ENABLE CRONTAB STOPPED${_RESET}"
21+echo "####################################"
22+echo "# CRONTAB ENABLED #"
23+echo "####################################"
2024
crontab.sh+2−5
@@ -1,8 +1,5 @@
11#!/bin/bash
22
3−
4−echo "${_GREEN}CRONTAB STARTED${_RESET}"
5−
63# Set values in settings script
74
85# Remove existing crontab
@@ -12,11 +9,11 @@ crontab -r
129
1310# Setup users contab
1411
15−crontab -l | { cat; echo "#Start at $_USER_CRONSTART on days $_USER_CRONDAYS
12+crontab -l | { cat; echo "#Start at $_USER_TIMESTART on days $_USER_CRONDAYS
16130 $_USER_CRONSTART * * $_USER_CRONDAYS screen -dmS $_XMRIG_SCREEN xmrig --config=$_XMRIG_CONFIG_LOCATION"; } | crontab -
1714
1815crontab -l | { cat; echo "#Stop at $_USER_TIMESTOP on days $_USER_CRONDAYS
19160 $_USER_CRONSTOP * * $_USER_CRONDAYS screen -S $_XMRIG_SCREEN -X kill"; } | crontab -
2017
21−echo "${_CYAN}CRONTAB STOPPED${_RESET}"
18+echo "CRONTAB CREATED"
2219
depends.sh+2−4
@@ -2,9 +2,7 @@
22
33# Install the software requirements
44
5−echo "${_GREEN}INSTALL DEPENDS STARTED${_RESET}"
6−
7−if [ "$_APT_DEPENDS" -eq "1" ]; then
5+if [ $_APT_DEPENDS = 1 ]; then
86
97 # Install xmrig depends
108 sudo apt install -y software-properties-common git build-essential cmake libuv1-dev libssl-dev libmicrohttpd-dev libhwloc-dev gcc g++
@@ -14,4 +12,4 @@ if [ "$_APT_DEPENDS" -eq "1" ]; then
1412
1513fi
1614
17−echo "${_CYAN}INSTALL DEPENDS STOPPED${_RESET}"
15+echo "DEPENDENCIES INSTALLED"
functions.sh+27−71
@@ -1,48 +1,6 @@
11#!/bin/bash
22
3−echo -e "${_GREEN}LOADING FUNCTIONS${_RESET}"
4−
5−function prompt_confirm() {
6− while true; do
7− read -r -n 1 -p "${1:-Continue?} [y/n]: " REPLY
8− case $REPLY in
9− [yY]) echo ; return 0 ;;
10− [nN]) echo ; return 1 ;;
11− *) printf " \033[31m %s \n\033[0m" "invalid input [y/n]"
12− esac
13− done
14−}
15−
16−function show_settings () {
17− echo "${_CYAN}Settings from loaded environment:${_RESET}"
18− echo "${_GREEN}Pool URL:${_RESET}: $_POOLS_URL"
19− echo "${_GREEN}Recieve Wallet:${_RESET}: $_POOLS_USER"
20− echo "${_GREEN}Email Address:${_RESET}: $_POOLS_PASS"
21−}
22−
23−function show_mysettings () {
24− if [ -f $_WORK_DIR/$_MYSETTINGS_FILE ]; then
25− load_mysettings
26− echo "${_CYAN}Settings from mysettings.sh:${_RESET}"
27− echo "${_GREEN}Pool URL:${_RESET}: $_POOLS_URL"
28− echo "${_GREEN}Recieve Wallet:${_RESET}: $_POOLS_USER"
29− echo "${_GREEN}Email Address:${_RESET}: $_POOLS_PASS"
30− fi
31−}
32−
33−function load_mysettings () {
34− if [ -f $_WORK_DIR/$_MYSETTINGS_FILE ]; then
35− . $_MYSETTINGS_FILE
36− fi
37−}
38−
39−function my_config_json () {
40−
41− _CONFIG_JSON=$(jo -p -B api=$(jo id=$_API_ID worker-id=$_API_WORKER_ID) autosave=$_AUTOSAVE background=$_BACKGROUND colors=$_COLORS cpu=$(jo enabled=$_CPU_ENABLED huge-pages=$_CPU_HUGE_PAGES hw-aes=$_CPU_HW_AES priority=$_CPU_PRIORITY asm=$_CPU_ASM cn=$(jo -a $_CPU_CN) cn/0=$_CPU_CN_0 cn-lite/0=$_CPU_CN_LITE_0) opencl=$(jo enabled=$_OPENCL_ENABLED cache=$_OPENCL_CACHE loader=$_OPENCL_LOADER platform=$_OPENCL_PLATFORM) donate-level=$_DONATE_LEVEL donate-over-proxy=$_DONATE_OVER_PROXY http=$(jo enabled=$_HTTP_ENABLED host=$_HTTP_HOST port=$_HTTP_PORT access-token=$_HTTP_ACCESS_TOKEN restricted=$_HTTP_RESTRICTED) log-file=$_LOG_FILE pools=$(jo -a $(jo algo=$_POOLS_ALGO url=$_POOLS_URL user=$_POOLS_USER pass=$_POOLS_PASS rig-id=$_POOLS_RIG_ID nicehash=$_POOLS_NICEHASH keepalive=$_POOLS_KEEPALIVE enabled=$_POOLS_ENABLED tls=$_POOLS_TLS tls-fingerprint=$_POOLS_TLS_FINDERPRINT daemon=$_POOLS_DAEMON)) print-time=$_PRINT_TIME retries=$_RETRIES retry-pause=$_RETRIES_PAUSE syslog=$_SYSLOG user-agent=$_USER_AGENT watch=$_WATCH)
42−
43−}
44−
45−function build_xmrig () {
3+build_xmrig () {
464 if [ -d $_XMRIG_BUILD_LOCATION ]; then
475 # Remove existing build directory
486 rm -rf $_XMRIG_BUILD_LOCATION
@@ -58,23 +16,23 @@ function build_xmrig () {
5816 cd $_XMRIG_BUILD_LOCATION
5917
6018 # Configure cmake scafolding
61− cmake ..
19+ cmake .. -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7
6220
6321 # Compile the software
6422 make
6523}
6624
6725
68−function start_xmrig () {
26+start_xmrig () {
6927 screen -dmS $_XMRIG_SCREEN xmrig --config=$_XMRIG_CONFIG_LOCATION
7028}
7129
7230
73−function stop_xmrig () {
31+stop_xmrig () {
7432 screen -S $_XMRIG_SCREEN -X kill
7533}
7634
77−function check_cpu () {
35+check_cpu () {
7836 # Check if CPU supports AES-NI
7937 cpuid | grep -i aes > hw-aes.txt
8038 if grep -q true "hw-aes.txt"; then
@@ -91,35 +49,33 @@ function check_cpu () {
9149 _ENV_CORE_L3=$(getconf LEVEL3_CACHE_SIZE)
9250}
9351
94−function calc_threads () {
95− # Each thread needs 2048 byte (2 Megabyte)
96− # Calculate number of threads supported with L3 cache size
97−
98− _ENV_THREAD_QTY=$(( ($_ENV_CORE_L3/2048)/1000 ))
52+calc_threads () {
9953
10054 # Affine number of threads for _CPU_CN
101− _COUNTER="$(( $_ENV_THREAD_QTY-1 ))"
55+ _COUNTER="$(($_ENV_CORE_THREADS - 1))"
56+ _ENV_CPU_THREADS=()
10257
103− _ENV_CPU_THREAD_AFFINITY="$(seq -s " " 0 $_COUNTER)"
58+ for i in `seq 0 $_COUNTER`; do
59+ _ENV_CPU_THREADS+=("$i")
60+ done
10461
105−}
62+ _ENV_CPU_THREAD_AFFINITY="$_ENV_CPU_THREADS"
63+
64+ # Setting according to cpu cores but xmrig will not use all
65+ # change to make value use _ENV_CORE_THREADS
66+ # Check that hugepages set in /etc/sysctl.conf
67+
68+ _ENV_CHECK="nr_hugepages"
10669
107−function calc_hugepages () {
108− # Setting according to cpu cores but xmrig will not use all
109− # change to make value use _ENV_CORE_THREADS
110− # Check that hugepages set in /etc/sysctl.conf
111−
112− _ENV_CHECK="nr_hugepages"
113−
114− if sudo grep -q $_ENV_CHECK /etc/sysctl.conf; then
115− sudo sysctl -p
116− else
117− # Set value in current env
118− sudo sysctl -w vm.nr_hugepages="$_ENV_THREAD_QTY"
119− # Add value to sysctl
120− sudo sysctl -p
121− fi
70+ if sudo grep -q $_ENV_CHECK /etc/sysctl.conf; then
71+ sudo sysctl -p
72+ else
73+ # Set value in current env
74+ sudo sysctl -w vm.nr_hugepages="$_ENV_CORE"
75+ # Add value to sysctl
76+ sudo sysctl -p
77+ fi
12278
12379}
12480
125−echo -e "${_CYAN}FUNCTIONS LOADED${_RESET}"
81+echo -e "FUNCTIONS LOADED\n\n"
input.shdeleted−61
@@ -1,61 +0,0 @@
1−#!/bin/bash
2−
3−# Ask user questions
4−# Capture input
5−# if setting already exist use existing
6−
7−echo -e "${_GREEN}USER SETTINGS STARTED${_RESET}"
8−
9−if [ -f $_WORK_DIR/$_MYSETTINGS_FILE ]; then
10−
11− # Call function
12−
13− load_mysettings
14−
15− my_config_json
16−
17−else
18− echo -e " ${_YELLOW}Opt for default settings or enter your own.\n"
19−
20− echo -e " No - 'config.json' created with values from 'settings.sh'."
21− echo -e " Yes - 'config.json' created with values from 'mysettings.sh' (recomended).\n"
22−
23− echo -e " When 'mysettings.sh' exists this prompt will be skipped at furture installation."
24− echo -e " Own settings is recomended to avoid your settings being overidden in upgrades.${_RESET}\n"
25−
26−
27− prompt_confirm "Enter your own settings?"
28−
29− if [ "$?" -eq 0 ]; then
30−
31− # Create a file
32−
33− touch $_MYSETTINGS_FILE_LOCATION
34− chmod +x $_MYSETTINGS_FILE_LOCATION
35− echo "#!/bin/bash" > $_MYSETTINGS_FILE_LOCATION
36−
37− # Prompt user input
38−
39− echo "Current pool URL: $_POOLS_URL"
40− read -p "Enter new pool URL: " _POOLS_URL
41− echo "_POOLS_URL=\"$_POOLS_URL\"" >> $_MYSETTINGS_FILE_LOCATION
42−
43− echo "Current Receive Wallet address: $_POOLS_USER"
44− read -p "Enter new Receive Wallet address: " _POOLS_USER
45− echo "_POOLS_USER=\"$_POOLS_USER\"" >> $_MYSETTINGS_FILE_LOCATION
46−
47− echo "Current email address: $_POOLS_PASS"
48− read -p "Enter new email address: " _POOLS_PASS
49− echo "_POOLS_PASS=\"$_POOLS_PASS\"" >> $_MYSETTINGS_FILE_LOCATION
50−
51− fi
52−
53− # Call function
54−
55− load_mysettings
56−
57− my_config_json
58−
59−fi
60−
61−echo "${_CYAN}USER SETTINGS STOPPED${_RESET}"
install.sh+16−22
@@ -1,23 +1,11 @@
11#!/bin/bash
22
3−
4−# Colors
5−_CYAN=`tput setaf 1`
6−_GREEN=`tput setaf 2`
7−_YELLOW=`tput setaf 3`
8−_BLUE=`tput setaf 4`
9−_MAGENTA=`tput setaf 5`
10−_CYAN=`tput setaf 6`
11−_RESET=`tput sgr0`
12−
13−echo "${_GREEN}INSTALLATION STARTED${_RESET}"
14−
15−_DEBUG=$1
3+_DEBUG=true
164
175if $_DEBUG; then
18− set +x
19−else
206 set -x
7+else
8+ set +x
219fi
2210
2311# Set that user passwdless sudo
@@ -33,24 +21,30 @@ fi
3321
3422# Get settings
3523. settings.sh
24+sleep 5
25+
26+# Stop running instance
27+. stop.sh
3628
3729# Update system
3830. maintenance.sh
31+sleep 5
3932
4033# Install dependencies
4134. depends.sh
42−
43−# User input
44−. input.sh
45−
46−# Stop running instance
47−. stop.sh
35+sleep 5
4836
4937# Get source and build by sourcing our build file
5038. build.sh
39+sleep 5
5140
5241# Create a config.json
5342. config.sh
43+sleep 5
44+
45+# Setup crontab for user
46+. crontab.sh
47+sleep 5
5448
5549# Unset REPO variable so start script will execute program
5650SCREEN=""
@@ -59,4 +53,4 @@ SCREEN=""
5953. start.sh
6054
6155
62−echo -e "${_CYAN}INSTALLATION COMPLETED${_RESET}"
56+echo -e "INSTALLATION COMPLETE\n"
maintenance.sh+2−4
@@ -1,12 +1,10 @@
11#!/bin/bash
22
3−echo "${_GREEN}MAINTENANCE STARTED${_RESET}"
4−
5−if [ "$_APT_MAINETANCE" -eq "1" ]; then
3+if [ $_APT_MAINETANCE = 1 ]; then
64
75 sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y && sudo apt autoclean
86
97fi
108
11−echo "${_CYAN}MAINTENANCE STOPPED${_RESET}"
9+echo "MAINTENANCE COMPLETE"
1210
settings.sh+18−33
@@ -1,22 +1,17 @@
11#!/bin/bash
22
3−echo -e "${_GREEN}LOADING DEFAULT SETTINGS${_RESET}"
3+_EMAIL="miners@prepaidmeters.com"
44
5−_EMAIL="spam@iko.soy"
5+_RECEIVE_WALLET="854sqm2Cm4TB2XgPHWqSPSbnFAe3SMzdEDzZHpukQ8NHBPFropbnkFmEKiZPgwjMFC9PTjaFscR2UU6ZwFCqJzGMUiZVbTM"
66
7−_RECEIVE_WALLET="44FADBDhNRvjJszF5mLS4VCwZ71mY7ftfUErEisPoT724hb5eYuvuFqWthniY8dGPBTcWuBoeLrLJVkxLHCb1Lsd4DdbZzZ"
8−
9−_POOL_SERVER_URL="xmrpool.eu"
10−_POOL_SERVER_PORT="5555"
11−
12−# Call function
13−show_settings
7+_POOL_SERVER_URL="192.168.4.5"
8+_POOL_SERVER_PORT="3333"
149
1510#######################################################################
1611# DO NOT CHANGE AFTER THIS POINT UNLESS YOU KNOW WHAT YOU ARE DOING #
1712#######################################################################
1813
19−_API_ID='null'
14+_API_ID="null"
2015_API_WORKER_ID="$HOSTNAME"
2116
2217_AUTOSAVE="true"
@@ -34,29 +29,24 @@ calc_threads
3429_CPU_ENABLED="true"
3530_CPU_HUGE_PAGES="true"
3631_CPU_HW_AES="$_AES_NI"
37−_CPU_PRIORITY='null'
32+_CPU_PRIORITY="null"
3833_CPU_ASM="true"
3934_CPU_CN="$_ENV_CPU_THREAD_AFFINITY"
4035
4136_CPU_CN_0="false"
4237_CPU_CN_LITE_0="false"
4338
44−_OPENCL_ENABLED="false"
45−_OPENCL_CACHE="true"
46−_OPENCL_LOADER='null'
47−_OPENCL_PLATFORM="AMD"
48−
49−_DONATE_LEVEL="0"
39+_DONATE_LEVEL="5"
5040
5141_DONATE_OVER_PROXY="1"
5242
5343_HTTP_ENABLED="true"
5444_HTTP_HOST=$(hostname --all-ip-addresses | awk '{print $1}')
5545_HTTP_PORT="8080"
56−_HTTP_ACCESS_TOKEN='null'
46+_HTTP_ACCESS_TOKEN="null"
5747_HTTP_RESTRICTED="false"
5848
59−_LOG_FILE='null'
49+_LOG_FILE="null"
6050
6151_POOLS_ALGO="cn/r"
6252_POOLS_URL="$_POOL_SERVER_URL:$_POOL_SERVER_PORT"
@@ -66,8 +56,8 @@ _POOLS_RIG_ID="$HOSTNAME"
6656_POOLS_NICEHASH="true"
6757_POOLS_KEEPALIVE="true"
6858_POOLS_ENABLED="true"
69−_POOLS_TLS='null'
70−_POOLS_TLS_FINDERPRINT='null'
59+_POOLS_TLS="null"
60+_POOLS_TLS_FINDERPRINT="null"
7161_POOLS_DAEMON="false"
7262
7363_PRINT_TIME="30"
@@ -77,10 +67,12 @@ _RETRIES_PAUSE="5"
7767
7868_SYSLOG="false"
7969
80−_USER_AGENT='null'
70+_USER_AGENT="null"
8171
8272_WATCH="true"
8373
74+_CONFIG_JSON=$(jo -p -B api=$(jo id=$_API_ID worker-id=$_API_WORKER_ID) autosave=$_AUTOSAVE background=$_BACKGROUND colors=$_COLORS cpu=$(jo enabled=$_CPU_ENABLED huge-pages=$_CPU_HUGE_PAGES hw-aes=$_CPU_HW_AES priority=$_CPU_PRIORITY asm=$_CPU_ASM cn=$(jo $_CPU_CN) cn/0=$_CPU_CN_0 cn-lite/0=$_CPU_CN_LITE_0) donate-level=$_DONATE_LEVEL donate-over-proxy=$_DONATE_OVER_PROXY http=$(jo enabled=$_HTTP_ENABLED host=$_HTTP_HOST port=$_HTTP_PORT access-token=$_HTTP_ACCESS_TOKEN restricted=$_HTTP_RESTRICTED) logfile=$_LOGFILE pools=$(jo -a $(jo algo=$_POOLS_ALGO url=$_POOLS_URL user=$_POOLS_USER pass=$_POOLS_PASS rig-id=$_POOLS_RIG_ID nicehash=$_POOLS_NICEHASH keepalive=$_POOLS_KEEPALIVE enabled=$_POOLS_ENABLED tls=$_POOLS_TLS tls-fingerprint=$_POOLS_TLS_FINDERPRINT daemon=$_POOLS_DAEMON)) print-time=$_PRINT_TIME retries=$_RETRIES retry-pause=$_RETRIES_PAUSE syslog=$_SYSLOG user-agent=$_USER_AGENT watch=$_WATCH)
75+
8476# Set working directory
8577_WORK_DIR="$(pwd)"
8678cd $_WORK_DIR
@@ -95,7 +87,7 @@ _XMRIG_CLONE="xmrig-cpu"
9587_XMRIG_CLONE_LOCATION="$_WORK_DIR/$_XMRIG_CLONE"
9688
9789# Set branch from which to build
98−_XMRIG_BRANCH="master"
90+_XMRIG_BRANCH="beta"
9991
10092# Set build directory
10193_XMRIG_BUILD="build"
@@ -106,12 +98,6 @@ _XMRIG_BUILD_LOCATION="$_XMRIG_CLONE_LOCATION/$_XMRIG_BUILD"
10698# Set where to install binary
10799_XMRIG_TARGET_LOCATION="/usr/bin/"
108100
109−# Set mysettings file
110−_MYSETTINGS_FILE="mysettings.sh"
111−
112−# Set mysettings file location
113−_MYSETTINGS_FILE_LOCATION="$_WORK_DIR/$_MYSETTINGS_FILE"
114−
115101# Set the config file name
116102_XMRIG_CONFIG="config.json"
117103
@@ -119,8 +105,8 @@ _XMRIG_CONFIG="config.json"
119105_XMRIG_CONFIG_LOCATION="$_WORK_DIR/$_XMRIG_CONFIG"
120106
121107# Set values for crontab
122−_USER_CRONSTART="17"
123−_USER_CRONSTOP="8"
108+_USER_CRONSTART="18"
109+_USER_CRONSTOP="6"
124110_USER_CRONDAYS="1-5"
125111
126112# Set the name of the screen created by start script
@@ -134,6 +120,5 @@ _APT_MAINETANCE="1"
134120# 1 = yes 0 = no
135121_APT_DEPENDS="1"
136122
137−
138−echo -e "${_CYAN}DEFAULT SETTINGS LOADED${_RESET}"
123+echo -e "SETTINGS LOADED\n\n"
139124
start.sh+12−45
@@ -1,59 +1,26 @@
11#!/bin/bash
22
3−echo "${_GREEN}MINING STARTED${_RESET}"
4−
53# When this script is:
64# * run by crontab, load the settings
75# * run by install, do not load settings
86
97# Reload settings and functions for when running standalone
10−. functions.sh
118. settings.sh
9+. functions.sh
1210
13−# if ! screen -list | grep -q "$_XMRIG_SCREEN"; then
14−
15− # Call functions
16− show_settings
17− show_mysettings
18− # start_xmrig
11+if ! screen -list | grep -q "$_XMRIG_SCREEN"; then
12+
13+ # Call function
14+ start_xmrig
1915
2016 # List screen
21− # screen -ls
22−# else
17+ screen -ls
18+else
2319
2420 # List screen
25− # screen -ls
26−
27−# fi
28−echo "[Unit]" | sudo tee /etc/systemd/system/xmrig.service
29−echo "Description=XMRIG service" | sudo tee -a /etc/systemd/system/xmrig.service
30−echo "After=network.target" | sudo tee -a /etc/systemd/system/xmrig.service
31−echo "StartLimitIntervalSec=0" | sudo tee -a /etc/systemd/system/xmrig.service
32−echo "[Service]" | sudo tee -a /etc/systemd/system/xmrig.service
33−echo "Type=simple" | sudo tee -a /etc/systemd/system/xmrig.service
34−echo "Restart=always" | sudo tee -a /etc/systemd/system/xmrig.service
35−echo "RestartSec=3" | sudo tee -a /etc/systemd/system/xmrig.service
36−echo "User=root" | sudo tee -a /etc/systemd/system/xmrig.service
37−echo "ExecStart=$_XMRIG_BUILD_LOCATION/xmrig --config=$_XMRIG_CONFIG_LOCATION" | sudo tee -a /etc/systemd/system/xmrig.service
38−echo "" | sudo tee -a /etc/systemd/system/xmrig.service
39−echo "[Install]" | sudo tee -a /etc/systemd/system/xmrig.service
40−echo "WantedBy=multi-user.target" | sudo tee -a /etc/systemd/system/xmrig.service
41−
42−echo "STARTING XMRIG/SERVICES"
43−
44−sudo service logrotate start
45−sudo service ntp start
46−sudo service xmrig start
47−
48−echo "STARTING XMRIG/SERVICES @ BOOT"
49−
50−sudo systemctl enable logrotate
51−sudo systemctl enable ntp
52−sudo systemctl enable xmrig
53−
54−echo "${_CYAN}MINING RUNNING${_RESET}"
55−echo "${_YELLOW} The process is running in a screen session."
56−echo "${_YELLOW} The screen session is named:${_RESET} $_XMRIG_SCREEN"
57−echo "${_YELLOW} Command to view process:${_RESET} screen -r $_XMRIG_SCREEN"
58−echo "${_MAGENTA} ENJOY!!!${_RESET}"
21+ screen -ls
22+
23+fi
24+
25+echo "MINING STARTED"
5926
stop.sh+1−3
@@ -4,8 +4,6 @@
44# * run by crontab, load the settings
55# * run by install, do not load settings
66
7−echo "${_GREEN}END MINING STARTED${_RESET}"
8−
97if [ -z "$_XMRIG_SCREEN" ]; then
108 # Load settings when run by crontab
119 . settings.sh
@@ -18,5 +16,5 @@ else
1816 stop_xmrig
1917fi
2018
21−echo "${_CYAN}END MINING STOPPED${_RESET}"
19+echo "MINING STOPPED"
2220
update.sh+1−3
@@ -1,11 +1,9 @@
11#!/bin/bash
22
3−echo "${_GREEN}UPDATE STARTED${_RESET}"
4−
53git pull
64
75# install
86. install.sh
97sleep 5
108
11−echo "${_CYAN}UPDATE COMPLETE${_RESET}"
9+echo "UPATE COMPLETE"