Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Verficiar el nivel de usuario, para
- # realizar el volcado se debe tener privilegios de 'root'
- # La id de usuario para 'root' es '0'.
- if [ $UID -ne 0 ];then
- # se envia la salida al 'standar error'
- echo "Debe ser usuario 'root' para ejecutar este programa" >&2
- # se sale del script con exit status 1
- exit 1
- fi
- mariadb_dump () {
- # una variable local solo existe dentro de la funcion
- # puede llamarse igual que otras variables de fuera
- # pero sigue siendo independiente.
- local timestamp=$1
- # un retorno es un exit status pero de funciones
- # con el operador '||' (or) si el volcado termina con
- # errores a funcion retorna '1'
- # de lo contrario retorna '0'
- echo 'Volcado de bases de datos...'
- mysqldump --all-databases > ${backupdir}/${timestamp}_mariadb.sql || return 1
- return 0
- }
- timestamp=$(date +%s)
- backupdir="/var/backups/mariadb"
- if [ -d "$backupdir" ]; then
- # el programa termina si la funcion retorna '1'
- mariadb_dump $timestamp && ls -1 $backupdir || { echo "No se pudo hacer volcado"; exit 1; }
- else
- mkdir -v -p $backupdir
- mariadb_dump $timestamp && ls -1 $backupdir || { echo "No se pudo hacer volcado"; exit 1; }
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement