We use ping in a bash script as well as php calling netcat.
That wouldn't necessarily detect a full hard drive. The drive could fill up, but the OS could still remain up and send and receive ICMP packets.
I would look into something along the lines of Big Brother. http://www.bb4.org/