Riesil som problem zalohovania mikrotikov a nechcel som pouzit ftp.
Takze mam web server, kde si ukladam zalohy ( zabezpecene cez htaccess)
Je potrebne vytvorit noveho usera ja ho nazyvam backup a importnut dsa kluc na mikrotik ( ale toto je snad kazdemu jasne)
Skript na vykonavanie zalohy je tu:
#!/bin/bash
# Backup script
# :-) Miro
# Zmaz chybovy log"
`rm wrong` 2>/dev/null
#premenne
USER=backup
ROK=`date +%G`
MESIAC=`date +%m`
DEN=`date +%d`
CMD=`cat command`
A=5 # - Velkost prazdneho priecinka
# Vytvor priecinok pre backup
mkdir /var/www/backup/$ROK 2>/dev/null
mkdir /var/www/backup/$ROK/$MESIAC 2>/dev/null
mkdir /var/www/backup/$ROK/$MESIAC/$DEN 2>/dev/null
# Vytvor backup - bod po bode
for zalohuj in `cat ip`
do
NAME=`echo $zalohuj | cut -d: -f 1`
HOST=`echo $zalohuj | cut -d: -f 2`
mkdir /var/www/backup/$ROK/$MESIAC/$DEN/$NAME
ssh -l $USER -i /home/kluce/id_dsa $HOST $CMD 2>>log && echo $NAME # cesta k ID DSA prepiste si to podla potreby aj na nasledujucich dvoch riadkoch
scp -i /home/kluce/id_dsa $USER@$HOST:backup.backup /var/www/backup/$ROK/$MESIAC/$DEN/$NAME 2>>log
scp -i /home/kluce/id_dsa $USER@$HOST:backup.rsc /var/www/backup/$ROK/$MESIAC/$DEN/$NAME 2>>log
done
# kontrola uspesnosti backupu
for kontroluj in `cat ip`
do
NAME=`echo $kontroluj | cut -d: -f 1`
HOST=`echo $kontroluj | cut -d: -f 2`
#
mkdir /var/www/backup/$ROK/$MESIAC/$DEN/$NAME 2>/dev/null
N=`du /var/www/backup/$ROK/$MESIAC/$DEN/$NAME |cut -f1`
if [ "$N" -lt "$A" ]
then
echo "Na Mikrotiku \"$NAME\" s IP addresou \"$HOST\" neprebehla zaloha! " >>wrong
else
echo "Mikrotik \"$NAME\" bol uspesne zalohovany!"
fi
done
# email subject
SUBJECT="Automaticky backup - chybova hlaska"
# Email To ?
EMAIL="vas@email.sk"
# Email text/message
EMAILMESSAGE="wrong"
/usr/bin/mail -s "$SUBJECT" "$EMAIL" < $EMAILMESSAGE
exit
subor IP ma takuto strukturu ( delimiter je : prvy je nazov hostu a potom IP adresa
test1:192.168.1.11
test2:192.168.1.12
subor command: ( nemam to priamo v skripte, lebo ten skript pouzivam aj na hromadne zmeny na sieti )
/system backup save name=backup;
/export file=backup
Nemam presmerovane vystupy do /dev/null lebo ho este stale upravujem
Dufam, ze aspon niekomu pomozem
Miro.