Мар 152011
 

Додела до ума скрипт по бэкапу в FreeBSD пользоватльеских дереткорий.

Начало.

содаем скрипт по проверки и мантированию samba шар.

#!/bin/sh
retval=`/sbin/mount | grep smbfs`
if [ -n "$retval" ];
then /sbin/umount /mnt/pav253 /mnt/do_obmen 1> /dev/null 2> /dev/null
if [ "$?" -ne 0 ];
then echo "Не могу размонтирвоать Samba share"
fi
else sh /root/smb
if [ "$?" -ne 0 ];
then echo "Не могу смонтировать Samba share"
fi
fi

Теперь!
Установим пакет smtp-cli

cd /usr/ports/mail/smtp-cli && make install clean

теперь создадим скрипт для отправки сообщий нам на email

#!/bin/sh
SMTP='/usr/local/bin/smtp-cli'
FROM='Bagrich@minbank.ru'
TO='bagassik@gmail.com'
USER='bad'
PASS='qqqqqq'
HOST='10.20.98.29'
$SMTP --from $FROM --to $TO --host $HOST --auth --user $USER --pass $PASS --body "$1"

Такс. приступим к написания скрипта.

#!/bin/sh
SOUR="/mnt/do_obmen/ПАВЛОВСК/В ПАВЛОВСК/ПРОЧИТАНЫЕ_2010"
DEST="/mnt/share/do_obmen/2010/"

SOUR_1="/mnt/pav253/Users"
DEST_1="/mnt/share/users/"

ARH="/mnt/share/backup/arch/do_obmen/"
ARH_1="/mnt/share/backup/arch/users/"

PREFIX='/mnt/share/backup/log/do_obmen'`date +"%H+%M+%a"`
PREFIX_1='/mnt/share/backup/log/user'`date +"%H+%M+%a"`

DAYS_STORY="180"
DT=`date +"%Y-%m-%d"`
TIME=`date +"%H-%M"`
TAR="/usr/bin/tar"

sh /root/mount_smb
cp -rf  "$SOUR" $DEST > $PREFIX.log
$TAR -czvf $ARH/$DT.tar.gz $DEST
cp -rf  $SOUR_1 $DEST_1 > $PREFIX_1.log
$TAR -czvf $ARH_1/$DT.tar.gz $DEST_1

find $ARH/ -mtime +$DAYS_STORY -delete
find $ARH_1/ -mtime +$DAYS_STORY -delete
sh /root/mount_smb

sh /root/sm "Backup закончен в $TIME"

Так, сам скрипт по бэкапу пользовательских дикторий готов, но как же его синхронизировать, что бы по десять раз Гиговые данные не гонять по сети.
Ставим порт cpbk

 cd /usr/ports/sysutils/cpbk && make install clean

Создаем второй скрипт.

#!/bin/sh
cmd="/usr/local/bin/cpbk -nr"
$cmd /mnt/pav253/Users /mnt/share/users/

добовляем в crontab.
Я добавил в crontab рутовский свои скрипты.

10 21 27 * * root sh /root/backup  # Указали что каждый месяц 27 числа в 21:10 запускать этот скрипт

10 21 1,7,12,22,26 * 5 root sh /root/mirror_back  # тут мы указали запуск скрипта в 21:10  ( ,7,12,22,26 ) каждого вмесяца да и еще укозали 5  в добавок что бы и по пятницам он выполнялся.

Вот и все, я этот скрипт создал от делать нечего, скучно было. А так есть уже готовые решения к примеру rsync .

 Leave a Reply

(required)

(required)

39 Запросов к базе. 0,385 Генерации страницы, 37MB Использование памяти.
Вы зашли с IP: 54.225.16.10