Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # metiscoin All-In-One EZ Setup Script
- # Hacked together by GigaWatt
- # Donations welcome!
- # BTC: 1E2egHUcLDAmcxcqZqpL18TPLx9Xj1akcV
- # XPM: AWHJbwoM67Ez12SHH4pH5DnJKPoMSdvLz2
- # SRC: sMCD2p55fkPD6s8EzDrL7vVp8EYqPkJ6mo
- # MTS: MEu8jBkkVvTLwvpiPjWC9YntyDH2u5KwVy
- # Last Update: 21 January, 2014
- {
- # PUT YOUR SETTINGS HERE
- YPOOL_WORKER="gigawatt.metiscoin"
- YPOOL_WORKERPASS="x"
- # Build swapfile
- if [[ ! -f /swapfile ]]; then
- echo "Building swapfile..."
- sudo dd if=/dev/zero of=/swapfile bs=64M count=16
- sudo mkswap /swapfile
- sudo swapon /swapfile
- # Mount on reboot
- if [[ -z "$(cat /etc/fstab | grep swapfile)" ]]; then
- echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab > /dev/null 2>&1
- fi
- fi
- # Auto reboot on kernel panic
- if [[ -z "$(cat /etc/sysctl.conf | grep '^kernel.panic')" ]]; then
- echo "kernel.panic=3" | sudo tee /etc/sysctl.conf >/dev/null 2>&1
- fi
- echo "Installing libraries..."
- sudo apt-get update
- sudo apt-get install build-essential bc curl dos2unix fail2ban git haveged libboost-all-dev libdb++-dev libminiupnpc-dev libssl-dev m4 nano vim -y
- # Enable HAVEGED for entropy
- sudo update-rc.d haveged defaults
- sudo service haveged start
- echo "Downloading metiscoin miner..."
- cat << "SCRIPT" > ~/build-metiscoin-from-git
- #!/bin/bash
- if [[ -d ~/xptminer ]]; then
- cd ~/xptminer
- git pull
- cd ~/xptminer
- make clean
- else
- cd ~
- git clone https://github.com/llamasoft/xptminer-linux.git xptminer
- fi
- cd ~/xptminer
- CFLAGS="-march=native -mtune=native" make
- sudo cp xpt /usr/local/bin/xpt
- SCRIPT
- chmod +x ~/build-metiscoin-from-git
- ~/build-metiscoin-from-git
- echo "Building miner config file..."
- echo "export XPT_USER=${YPOOL_WORKER}" > ~/miner.cfg
- echo "export XPT_PASS=${YPOOL_WORKERPASS}" >> ~/miner.cfg
- # Watchdog runner
- cat << "SCRIPT" > ~/start-miner
- #!/bin/bash
- export PATH="/usr/local/bin:$PATH"
- . ~/miner.cfg
- cores=$(cat /proc/cpuinfo | grep processor | wc -l)
- echo Starting metiscoin miner
- killall --older-than 60s -q xpt
- rm ~/miner.log > /dev/null 2>&1
- function background_loop
- while :; do
- /usr/local/bin/xpt -o ypool.net -u ${XPT_USER} -p ${XPT_PASS} -t ${cores} > ~/miner.log 2>&1
- sleep 5
- date >> ~/crash.log
- done
- background_loop &
- SCRIPT
- chmod +x ~/start-miner
- ~/start-miner
- # Add to startup
- mkdir /var/spool/cron/crontabs/ > /dev/null 2>&1
- echo "@reboot ${HOME}/start-miner" | sudo tee /var/spool/cron/crontabs/$(whoami) > /dev/null 2>&1
- echo "" | sudo tee -a /var/spool/cron/crontabs/$(whoami) > /dev/null 2>&1
- sudo chmod 0600 /var/spool/cron/crontabs/$(whoami)
- sudo update-rc.d cron defaults
- # Watchdog stopper
- cat << "SCRIPT" > ~/stop-miner
- #!/bin/bash
- {
- killall -q start-miner xpt
- rm ~/miner.log
- } >/dev/null 2>&1
- SCRIPT
- chmod +x ~/stop-miner
- # Watchdog restarter
- cat << "SCRIPT" > ~/restart-miner
- #!/bin/bash
- ~/stop-miner
- ~/start-miner
- SCRIPT
- chmod +x ~/restart-miner
- # Peek at status
- cat << "SCRIPT" > ~/peek
- #!/bin/bash
- tail -n 20 ~/miner.log
- echo
- echo
- echo '=========================================================='
- echo
- echo "Memory Info:"
- ps fup $(pidof xpt)
- echo
- free -h
- SCRIPT
- chmod +x ~/peek
- echo
- echo
- echo '=========================================================='
- echo 'All Done!'
- echo 'metiscoin miner should be up and running'
- echo
- echo 'Run ~/start-miner to start mining'
- echo 'Run ~/stop-miner to stop mining'
- echo 'Run ~/restart-miner to stop and restart the miner'
- echo 'Run ~/peek to check on your mining status'
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement