Send an email on reboot [duplicate]

Solution 1:

First ensure that you have sendmail installed on your server. You can install this by running tasksel and selecting the predefined "Mail server" collection.

Once this is complete, edit your root crontab (sudo crontab -e) and insert this line:

@reboot mail -s "$(hostname) was rebooted at: `date +%m.%d.%Y.%H.%M`" [email protected]

The -s switch sets the subject of the email and the date command will insert the hour and time at which the server rebooted.

Solution 2:

/etc/rc.local is supposed to be run on boot. You can call a script from there. Just make sure the exit code from your script is 0.

Solution 3:

I've found that running Monit on a server, when configured to do so, lets me know every time it is restarted. Investigation follows.

Plus doing it this way adds all the monitoring functionality that helps with other utilities and troubleshooting. The reboot notification is just a bonus; if you're running services on the server, or want a quick glance at the health of the server, this (or a similar package) is a good approach. At least it has been for us...