Isso deve funcionar (ou ser um passo na direção certa) para que ele seja executado na inicialização,
#!/bin/bash
while true; do
ping -c 1 8.8.8.8 #Note: depending on software version it might be ping -n 1
con=$? #Get exit code, anything other than 0 is bad
if [ $con -ne 0 ]; then #If con doesn't equal 0 then
reboot #This one is pretty obvious
fi
sleep 60 #Wait a minute between checks
done