25 lines
597 B
Bash
Executable file
25 lines
597 B
Bash
Executable file
#!/bin/sh
|
|
|
|
# Configuration
|
|
# Le fichier sera nommé BASE_DIR/PREFIXEbasenameSUFFIXE
|
|
BASE_DIR="/var/backups/postgresql"
|
|
PREFIXE="sauv_pgsql"
|
|
SUFFIXE=_$( date +%Y%m%d-%H%M ).sql.gz
|
|
DUREE_DE_VIE=5
|
|
|
|
# Vérifications initiales
|
|
if [ ! -d "$BASE_DIR" ]; then
|
|
echo "ERREUR : répertoire de sauvegarde inexistant : $BASE_DIR ." >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Sauvegarde des bases
|
|
su -l -c pg_dumpall postgres | gzip -c > "$BASE_DIR/$PREFIXE$SUFFIXE"
|
|
|
|
|
|
# Suppression des anciennes bases
|
|
if [ "$1" = "--delete-olds" ]; then
|
|
find $BASE_DIR -name "$PREFIXE*" -mtime +$DUREE_DE_VIE -print0 | xargs -n 200 -r -0 rm -f
|
|
fi
|
|
|
|
|