Colocar um script como o abaixo em /etc/cron.hourly
deve ser capaz de atingir sua meta. O $?
pega o status de saída e, se não for igual a 0, ele executa o comando, caso contrário, ele não faz nada.
#!/bin/bash
email=user@localhost
address=192.168.0.2
ping -c 3 "${address}" > /dev/null 2>&1
if [ $? -ne 0 ]; then
echo "Pi is down" | mailx -s "Pi is down" "${email}"
fi