Próbuję stworzyć skrypt który ma za zadanie robienie kopii zapasowej zdalnego serwera. Oczywiście opieram się na przykładach w sieci. Jeszcze nie jestem na tyle dobry coby z głowy pisać.
Czy ktoś z forumowiczów mógłby zerknąć na to co próbowałem stworzyć i powiedzieć czy to ma szanse działać? Dane na zdalnym serwerze mają ponad 500Gb.
Kod: Zaznacz cały
#!/bin/bash
#lokalna data
DATE=$(date +%F)
#zdalny server
[email protected]
#zdalny katalog do backapowania
REMOTE_DIR=/opt/alfresco*/alf_data
#lokalny katalog na kopie zapasowe
LOCAL_DIR=/backup_222.111.222.111/$DATE
#ilosc przechowywanych kopii
ROTATE=7
#jesli nie ma katalogu to go tworzymy
if [ ! -d $LOCAL_DIR ]
then
mkdir -p $LOCAL_DIR
fi
#kasowanie starszych kopi
OLDEST_BACKUP=$(date -I -d "$ROTATE day ago")
if [ -n "$OLDEST_BACKUP" ]
then
if [ -d $LOCAL_DIR/$OLDEST_BACKUP ]
then
rm -r $LOCAL_DIR/$OLDEST_BACKUP
fi
fi
# Pobieramy ostatni katalog backupu
LAST_BACKUP=$(date -I -d "1 day ago")
#zdalnie
rsync -avHz --numeric-ids --link-dest=$LAST_BACKUP --progress \
-e ssh $REMOTE_HOST:$REMOTE_DIR/ $LOCAL_DIR
Pozdrawiam