Преамбула:
Зашёл сейчас стародавний друг с которым мы не виделись полгода, посидели попили пива.
Поговорили о том, о сём. Затронули тему сохранности данных. Поговорили о бэкап серверах. Я рассказал, что я сделал, он мне поведал о том, как он бекапит данные. И решил я написать о том, как я у себя автоматизировал этот процесс.
Амбула:
В моем кабинете в шкафу валялся старый списанный комп такой конфигурации Celeron 850Mhz/256RAM/HDD 6Gb. Подумал, я, подумал. Решил, а чего это он без дела? Вытащил его, смахнул пылищу, пошукал по сусекам и наскреб еще один HDD IDE на 40Gb. Решил сделать из него резервный сервер хранения архивов баз 1С. Установил на этот комп Debian GNU/Linux 5.0 (Lenny), здесь инструкция по установке
http://www.debian.org/releases/stable/i386/подцепил второй жёсткий диск, добавил на него раздел (man fdisk), и
отформатировал в файловой системе ext3 (man mkfs).
Затем создал точку монтирования в файле /etc/fstab
/dev/hdb1 /home/ftp ext3 rw 0 0
настроил сетевой интерфейс
cat /etc/network/interfaces
auto lo
iface lo inet loopback
allow-hotplug eth0 #Локальная сеть
iface eth0 inet static
address 192.168.0.98
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
allow-hotplug eth0:0 #Сетка для доступа в интернет
iface eth0:0 inet static
address 192.168.3.95
netmask 255.255.255.0
network 192.168.3.0
broadcast 192.168.3.255
gateway 192.168.3.1
dns-nameservers 8.8.8.8
установил ssh сервер для удаленного управления сервером
su -c "apt-get install openssh"
http://unix1.jinr.ru/~lavr/openssh-faqr.htmlустановил ftp сервер для того чтобы копировать архивы БД на сервер
su -c "apt-get install proftpd"
http://www.proftpd.org/настроил на основном сервере ежедневное копирование архивов на резервный сервер в назначенный заданиях. Это выполняет скрипт, который формирует два файла такого содержания
1. start.cmd
ftp -n -s:backup_to_ftp.txt 192.168.0.98
2. backup_to_ftp.txt
@ECHO OFF
USER backuper
*password*
mkdir 12082010230000
cd 12082010230000
bin
put E:\BackUp\Base1CARJ.7z Base1CARJ.7z
bye
И запускает start.cmd на исполнение.
Теперь я могу восстановить любую базу по состоянию на любое число.