#!/bin/bash # Linux 64 bit kernel shell script to collect hardware errors via /var/log/mcelog # and send email alert. # ------------------------------------------------------------------------- # Copyright (c) 2008 nixCraft project <http://cyberciti.biz/fb/> # This script is licensed under GNU GPL version 2.0 or above # ------------------------------------------------------------------------- # This script is part of nixCraft shell script collection (NSSC) # Visit http://bash.cyberciti.biz/ for more information. # ------------------------------------------------------------------------- # Tested under RHEL and Debian Linux 64 bit version. # mcelog must be installed. # See: http://www.cyberciti.biz/tips/linux-server-predicting-hardware-failure.html LOGGER=/usr/bin/logger FILE=/var/log/mcelog AEMAIL="vivek@nixcraft.net.in" ASUB="H/W Error - $(hostname)" AMESS="Warning - Hardware errors found on $(hostname) @ $(date). See log file for the details /var/log/mcelog." OK_MESS="$0 - OK: NO Hardware Error Found." WARN_MESS="$0 - ERROR: Hardware Error Found." die(){ echo "$@" exit 999 } warn(){ echo $AMESS | email -s "${ASUB}" ${AEMAIL} $LOGGER "$WARN_MESS" } [ ! -f "$FILE" ] && die "Error - No $FILE exists or mcelog is not configured" [ $(grep -c -i "hardware error" $FILE) -gt 0 ] && warn || $LOGGER $OK_MESS
Featured Articles:
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- 20 Linux Server Hardening Security Tips
- 10 Greatest Open Source Software Of 2009
- My 10 UNIX Command Line Mistakes
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- Top 20 OpenSSH Server Best Security Practices
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Linux Video Editor Software
Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our email newsletter to make sure you don't miss a single tip/tricks.
- Download Script
- Email this to a friend
- Rss Feed
- Last Updated: 06/3/09
{ 5 comments… read them below or add one }
Thanks, I’ll edit and use it…(heh I dont think you want to get emails for my hardware failure) :-)
Regards;
Vivek;
I tried the script on my ubuntu904 (i386 machine) but I get this error;
(I apt-get install mcelog ) but still get;
Error – No /var/log/mcelog exists or mcelog is not configured
How do I configure the mcelog?
Thanks!
This script only works with 64bit Linux kernel.
can you please tell how to get this work on 32 bit os ?
Thanks :)
No, you can’t this only work in 64bit CPU / computer.