Бекап данных на внешний носитель

Материал из LLUG.

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

Содержание

[править] Что мы будем делать?

Что мы имеем? Имеем сервер с настроенным Samba, через Samba наши пользователи работают с 1С (База лежит на сетевом диске). Что нужно? Нужно сделать архивацию, сохранение на внешний носитель. Делать архивацию нужно ночью. Система: SuSE 10.0, DVD-RW привод. Использовать данный скрипт можно для любых данных, т.к. мы копировать будем определенную директорию, в ней могут находится любые файлы.


[править] Пакеты

Какие нам пакеты понадобятся:

dvd+rw-tools
mkisofs

[править] Скрипт

#!/bin/bash
PATH_FILE='/opt/backup/'
BACK_UP='/home/shares/files/buh'
FILE_NAME=$PATH_FILE`date +%Y%m%d%H%M`.tgz
tar -zcf $FILE_NAME $BACK_UP
#/usr/bin/dvd+rw-format -force=full /dev/cdrom
if ! /usr/bin/growisofs -M /dev/dvd -R -J $FILE_NAME
then
/usr/bin/growisofs -Z /dev/dvd -R -J $FILE_NAME
fi
rm -f $FILE_NAME
#/bin/eject /dev/dvd
Описание
PATH_FILE - путь где мы будем создавать файл бекапа
BACK_UP - каталог который нам нужно архивировать

Скрипт создает файл в каталоге $PATH_FILE, с именем текущим временем и датой. Пытается записать на диск как мультисессия, если это чистый ДВД, то пишем первую сессию. В конце удаляем записанный файл.

Если нужно что бы перед записью форматировался DVD диск раскомментируйте строку:

/usr/bin/dvd+rw-format -force=full /dev/cdrom 

Если нужно что бы после записи диск выехал(что бы с утра на глаза попался), раскомментируйте строку:

/bin/eject /dev/dvd

P.S. Писать в Bash'е я не силен, поидеи надо еще добавить проверки на ошибки, но для начала этого будет достаточно

[править] cron

Добавляем в наш /etc/crontab

00 01 * * * root /opt/backup/backup.sh

путь и время заменить по вкусу

Автор: dip56245

Настройка и установка программ