Ok well, as many others I am mining from different machines, and well, checking all of them for found blocks is very hard, also I am not using the same wallet for all of them so basically I prefer the machines to e-mail me when they find a block.
Also the script checks if primecoind is still running, and if it's not it tries to start it again.
1. Install a mail server (if you don't have one) so that you can receive e-mails
On Debian/Ubuntu you should install exim4 in order to get your e-mail working.
apt-get update
apt-get upgrade
apt-get install exim4-daemon-light mailutils
dpkg-reconfigure exim4-config
On CentOS/Slackware/Arch/Gentoo I am sure you will find many tutorials of doing this.
2. Save this script in a file and make it executable (chmod +x filename)
#!/bin/bash
primecoind=`which primecoind`
#we check if primecoind is running and if not we start it again
if ! pgrep -f $primecoind >/dev/null 2>&1; then
$primecoind --daemon
sleep 10
fi
#we check if a block was found or not
generated=`cat $HOME/.primecoin/debug.log | grep generated | grep -v prime | sed 's/generated //g'`
if [ -z "$generated" ] ; then
exit
fi
#we found a block
ip=`hostname -I`
$primecoind listtransactions | /usr/bin/mail -s "I found one! $generated XPM $ip" -r primecoind@$ip
[email protected]#clean up and server restart
$primecoind stop
sleep 10
rm -rf $HOME/.primecoin/debug.log
$primecoind --daemon
3. Add this to your cron daemon
crontab -e
And add the following:
For 15 minutes checks:
0,15,30,45 * * * * /path/to/yourscript
For hourly checks:
0 */2 * * * /path/to/yourscript
Save and close.
To check that it was added:
crontab -l
Regards
P.S. This script can be easily modified to work with any daemon by fiddling with 'which primecoind' maybe replacing it with 'which bitcoind', not just the primecoin one, because I think they all work the same way.