LittleDemon WebShell


Linux hosting5.siteguarding.com 3.10.0-962.3.2.lve1.5.88.el7.x86_64 #1 SMP Fri Sep 26 14:06:42 UTC 2025 x86_64
Path : /usr/local/bin/
File Upload :
Command :
Current File : //usr/local/bin/dxm.check_backup

#!/bin/bash

# DXM status check designed for NRPE
# Pavel Piatruk, 2010
# http://www.nksupport.com

. /etc/dxm/dxm.conf

TXT="";
CODE=0
{

# check files backup
if [ "$DOFILES" == 1 ]
then 	if [ -f $STATUS ]
	then    if [ "`stat -c %Y $STATUS`" -lt "`date +%s -d -1day-9hour`" ] 
		then	DAYS=$(((`date +%s`-`stat -c %Y $STATUS`)/3600/24 ))
			TXT=$TXT"TAR CRITICAL - $STATUS $DAYS days old; "
			[ "$CODE" != "2" ] && { [ "$DAYS" -lt 4 ] && CODE=1 || CODE=2 ; }
			echo "after files $CODE"
			
		else 	TXT=$TXT`head -n1 $STATUS`"; "
			grep "^TAR OK" $STATUS || CODE=2
		fi
	else    TXT=$TXT"TAR CRITICAL - ${STATUS} not found; "
		CODE=2
	fi
fi

# check mysqldump  backup
if [ "$DOMYSQL" == 1 ]
then
	if [ -f $STATUSMYSQL ]
	then    if [ "`stat -c %Y $STATUSMYSQL`" -lt "`date +%s -d -1day-9hour`" ]
		then	DAYS=$(((`date +%s`-`stat -c %Y $STATUSMYSQL`)/3600/24))
			TXT=$TXT"MYSQL CRITICAL - $STATUSMYSQL $DAYS days old; "
			[ "$CODE" != "2" ] && { [ "$DAYS" -lt 4 ] && CODE=1 || CODE=2 ; }
		else 	if echo $DUMPDIR | grep -qf $EXCLUDE
			then	TXT=$TXT"MYSQL CRITICAL - DUMPDIR $DUMPDIR is in EXCLUDELIST $EXCLUDE; "
				CODE=2
			else 	TXT=$TXT`head -n1 $STATUSMYSQL`"; "
				grep "^MYSQL OK"  $STATUSMYSQL || CODE=2
			fi
		fi
	else    TXT=$TXT"MYSQL CRITICAL - $STATUSMYSQL not found; "
		CODE=2
	fi
fi


# check posgtresql  backup
if [ "$DOPOSTGRESQL" == 1 ]
then
	if [ -f $STATUSPOSTGRESQL ]
	then    if [ "`stat -c %Y $STATUSPOSTGRESQL`" -lt "`date +%s -d -1day-9hour`" ]
		then	DAYS=$(((`date +%s`-`stat -c %Y $STATUSPOSTGRESQL`)/3600/24))
			TXT=$TXT"POSTGRESQL CRITICAL - $STATUSPOSTGRESQL $DAYS days old; "
			[ "$CODE" != "2" ] && { [ "$DAYS" -lt 4 ] && CODE=1 || CODE=2 ; }
		else 	if echo $DUMPDIR | grep -qf $EXCLUDE
			then	TXT=$TXT"POSTGRESQL CRITICAL - DUMPDIR $DUMPDIR is in EXCLUDELIST $EXCLUDE; "
				CODE=2
			else 	TXT=$TXT`head -n1 $STATUSPOSTGRESQL`"; "
				grep "^POSTGRESQL OK"  $STATUSPOSTGRESQL || CODE=2
			fi
		fi
	else    TXT=$TXT"POSTGRESQL CRITICAL - $STATUSPOSTGRESQL not found; "
		CODE=2
	fi
fi


# check ftp  backup
if [ "$DOFTP" == 1 ]
then
	if [ -f $STATUSFTP ]
        then    if [ "`stat -c %Y $STATUSFTP`" -lt "`date +%s -d -1day-9hour`" ]
                then    DAYS=$(((`date +%s`-`stat -c %Y $STATUSFTP`)/3600/24))
			TXT=$TXT"FTP CRITICAL - $STATUSFTP $DAYS days old; "
			[ "$CODE" != "2" ] && { [ "$DAYS" -lt 4 ] && CODE=1 || CODE=2 ; }
                else    TXT=$TXT`head -n1 $STATUSFTP`"; "
                        grep "^FTP OK"  $STATUSFTP || CODE=2
                fi
        else    TXT=$TXT"FTP CRITICAL - $STATUSFTP not found; "
                CODE=2
	fi
fi

#rsync check

if [ "$DORSYNC" == 1 ]
then
	if [ -f $STATUSRSYNC ]
        then    if [ "`stat -c %Y $STATUSRSYNC`" -lt "`date +%s -d -1day-9hour`" ]
                then    DAYS=$(((`date +%s`-`stat -c %Y $STATUSRSYNC`)/3600/24))
			TXT=$TXT"RSYNC CRITICAL - $STATUSRSYNC $DAYS days old; "
			[ "$CODE" != "2" ] && { [ "$DAYS" -lt 4 ] && CODE=1 || CODE=2 ; }
                else    TXT=$TXT`head -n1 $STATUSRSYNC`"; "
                        grep "^RSYNC OK"  $STATUSRSYNC || CODE=2
                fi
        else    TXT=$TXT"RSYNC CRITICAL - $STATUSRSYNC not found; "
                CODE=2
	fi
fi


# check rotate  backup

if [ "$DOROTATE" == 1 ]
then
	if [ -f $STATUSROTATE ]
        then    if [ "`stat -c %Y $STATUSROTATE`" -lt "`date +%s -d -1day-9hour`" ]
                then    DAYS=$(((`date +%s`-`stat -c %Y $STATUSROTATE`)/3600/24))
			TXT=$TXT"ROTATE CRITICAL - $STATUSROTATE $DAYS days old; "
			[ "$CODE" != "2" ] && { [ "$DAYS" -lt 4 ] && CODE=1 || CODE=2 ; }
                else    TXT=$TXT`head -n1 $STATUSROTATE`"; "
                        grep "^ROTATE OK"  $STATUSROTATE || CODE=2
                fi
        else    TXT=$TXT"ROTATE CRITICAL - $STATUSROTATE not found; "
                CODE=2
	fi
fi



#check lock
if [ -f "$LOCKFILE" ]
then	TXT=$TXT"dxm is running"
	P=`cat $LOCKFILE`
	if sudo ps -p $P >/dev/null 
	then 	TXT=$TXT", process exists; "  
	else	TXT=$TXT", process $P is missing; "
		CODE=2
	fi
fi




} 1>/dev/null 2>/dev/null

if [ "$CODE" == 2 ]
then	echo "DXM CRITICAL : "$TXT
else 	if [ "$CODE" == 1 ] 
	then    echo "DXM WARNING : "$TXT
	else	echo "DXM OK : "$TXT 
	fi
fi


exit $CODE

LittleDemon - FACEBOOK
[ KELUAR ]