diff --git a/README.md b/README.md index 40c45e0..ee7863c 100644 --- a/README.md +++ b/README.md @@ -1 +1,99 @@ -Set of scripts used on my server for backup and notifications +Scripts for different tasks +=========================== + +These scripts perform multiple of different tasks that help monitor the server and send emails after performing functions. +To send emails the sendEmail package is required + +
apt-get install sendemail
+ +Change the following lines in scripts that send emails + +Edit the following for emails: +

+MAILTO="support@comprofix.com"
+SMTP=mail.comprofix.com
+MAILFROM="support@comprofix.com"
+
+ +#### 00logwatch + +This script sends a report based on the log files and settings. + +Installation +

+apt-get install logwatch
+ln -s $(pwd)/00logwatch /etc/cron.daily
+
+ +#### check_updates_deb_sh + +This script checks for updates on your debian system. If any updates are found it will download them ready for Installation and an email will be sent to an email address specified + +Installation +

+ln -s $(pwd)/check_updates_deb_sh /etc/cron.daily
+
+ +#### check_updates_rpm.sh + +This is the same as above but for use on rpm based distributions (CentOS, Fedora etc) + +This script has been tested and used on CentOS. + +#### dbbackup.sh + +This scripts backs up mysql databases and rotates the number of backups through seven days. + +Specify the user and password that has access to the databases. + +

+DBUSER='dbbackup'
+DBPASS='EWFfP3GZsqr427Yj'
+BACKUPDIR='/BACKUP/db/'
+
+ +#### diskalert.sh + +Sends and email when disk space reaches greater than 90%. + +Installation +

+ln -s ${pwd}/diskalert.sh /etc/cron.hourly
+
+ +#### gitlabbackup.sh + +If you run your own gitlab server. + +Add the following lines to /etc/gitlab/gitlab.rb once added run gitlab-ctl reconfigure for changes to take effect + +

+gitlab_rails['backup_path'] = 'BACKUP FOLDER'
+gitlab_rails['backup_keep_time'] = 604800 #7 days of backups to keep
+
+ +Change the BACKUP FOLDER to a location where you want the backups to be saved. + +Installation +

+ln -s ${PWD}/gitlabbackup.sh /etc/cron.daily
+
+ +#### nasbackup.sh + +This script does an rsync from one folder location to another + +Installation +

+ln -s ${PWD}/nasbackup.sh /etc/cron.daily
+
+ +#### rkhunter.sh + +Script sends an email with the rkhunter scan and report. + +Installation +

+apt-get install rkhunter
+ln -s ${PWD}/rkhunter.sh /etc/cron.daily
+
diff --git a/dbbackup.sh b/dbbackup.sh index 71395e0..e145b3b 100755 --- a/dbbackup.sh +++ b/dbbackup.sh @@ -5,6 +5,7 @@ DBUSER='dbbackup' DBPASS='EWFfP3GZsqr427Yj' BACKUPDIR='/BACKUP/db/' + rotate_backups() { find $BACKUPDIR -type f -mtime +7 -exec rm -frv {} \; @@ -13,7 +14,7 @@ rotate_backups() { rotate_backups databases=`mysql --user=$DBUSER --password=$DBPASS -e "SHOW DATABASES;" | tr -d "| " | grep -v Database` - + for db in $databases; do if [[ "$db" != "information_schema" ]] && [[ "$db" != "performance_schema" ]] && [[ "$db" != "mysql" ]] && [[ "$db" != _* ]] ; then echo "Dumping database: $db" @@ -21,5 +22,3 @@ for db in $databases; do fi done - - diff --git a/wwwbackup.sh b/wwwbackup.sh deleted file mode 100755 index c2bf2c2..0000000 --- a/wwwbackup.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash - -DATE=$(date +%Y%m%d%H%M) -BACKUPDIR='/BACKUP/www' -WWW='/var/www/' - -rotate_backups() { - find $BACKUPDIR -type f -mtime +7 -exec rm -frv {} \; -} - - -rotate_backups - -cd $WWW - -for folder in `ls -d *`; do - tar -zcvf $BACKUPDIR/$folder-$DATE.tar.gz $folder -done -