Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- if [[ $EUID -ne 0 ]]; then
- echo "You must be the superuser to run this script"
- exit 1
- fi
- #Format the date
- TODAY=`date +%F.%s`
- #SSH
- SSHUSER="root"
- SSHSERVER="10.0.0.4"
- SSHDUMPDIR=""
- #MySQL
- MYSQLUSER="root"
- MYSQLPASSWORD="Passw0rd"
- #Bin
- TAR="/bin/tar"
- SCP="/usr/bin/scp"
- SSH="/usr/bin/ssh"
- MYSQLDUMP="/usr/bin/mysqldump"
- #Dir
- BACKUP="/backup/${TODAY}"
- TMP="/data/tmp/"
- #Filenames
- MAIN_PACKAGE="backup-"${TODAY}".gz"
- WEB_FILENAME="web.tgz"
- DB_FILENAME="sql.gz"
- APACHE2_FILENAME="apache.tgz"
- RESTORE="restore.sh"
- [ ! -e $BACKUP ] && mkdir -p ${BACKUP}
- #Web
- ${TAR} -zcvf ${TMP}${WEB_FILENAME} /var/www/html/*
- if [[ -e ${TMP}${WEB_FILENAME} ]]; then
- mv ${TMP}${WEB_FILENAME} ${BACKUP}
- else
- clear
- echo "${TMP}${WEB_FILENAME} not found"
- exit 1
- fi
- #Db
- ${MYSQLDUMP} -u ${MYSQLUSER} -p${MYSQLPASSWORD} --all-databases | gzip > ${BACKUP}/${DB_FILENAME}
- #Apache2
- ${TAR} -zcvf ${TMP}${APACHE2_FILENAME} /etc/apache2/sites-available/* /etc/apache2/apache2.conf
- if [[ -e ${TMP}${APACHE2_FILENAME} ]]; then
- mv ${TMP}${APACHE2_FILENAME} ${BACKUP}
- else
- clear
- echo "${TMP}${APACHE2_FILENAME} not found"
- exit 1
- fi
- #Restore.sh
- if [ -e ${BACKUP}/${RESTORE} ]; then
- echo "File ${BACKUP}/${RESTORE} already exists!"
- else
- echo "
- #!/bin/sh
- ARCHIVES=(*)
- for file in "${ARCHIVES[@]}"; do
- echo "${file}"
- done
- " > ${BACKUP}/${RESTORE}
- fi
- gzip /${MAIN_PACKAGE}
- rm -r /backup
- #Home Server
- ${SSH} ${SSHUSER}@${SSHSERVER}
- ${SCP} -r /${MAIN_PACKAGE} ${SSHUSER}@${SSHSERVER}:${SSHDUMPDIR}
Add Comment
Please, Sign In to add comment