Бекап данных на внешний носитель
Материал из 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

