Linux. Полное руководство.

10.4.5. Программа AMANDA.

Этот параграф я помещаю здесь, так сказать, «на вырост». Администратору домашней сети он вряд ли пригодится.

Программа AMANDA (The Advanced Maryland Automatic Network Disk Archiver) — это система резервного копирования, которая позволяет администратору локальной сети установить один главный бэкап-сервер для резервного копирования множества узлов локальной сети. При этом вам не придется подходить к каждому компьютеру, чтобы сделать резервную копию. AMANDA использует стандартные программы dump и tar, поэтому вы можете выполнить резервное копирование большинства UNIX-станций. Последние версии программы позволяют выполнять резервное копирование рабочих станций MS Win9x/NT, но для этого нужно установить пакет SAMBA.

Скачать программу вы можете с сайта разработчика www.amanda.org. Вам потребуются 3 пакета: amanda, amanda-client, amanda-server. Первый пакет устанавливается как на сервере, так и на клиенте; второй пакет — только на клиенте, а третий — только на сервере.

Я рекомендую загрузить самую последнюю версию. Как правило, самые новые версии распространяются не в виде RPM-пакета, а в виде так называемого тарболла — файла с расширением tar.gz. Распаковав архивы, выполните команду:

$ ./configure --with-config=network --with-user=amanda --with-group=operator.

Опции with-user и with-group указывать обязательно. Желательно перед выполнением данной команды создать пользователя amanda и поместить его в группу operator. Название нашей конфигурации — network. Так же будет называться каталог с резервными копиями.

Если вы планируете делать резервное копирование с Windows-машины, нужно добавить опцию --with-smbclient=/path/to/smbclient.

Обратите внимание на то, что:

♦ На клиенте сначала нужно установить пакет amanda, затем — amanda-client. На сервере вместо пакета amanda-client нужно установить пакет amanda-server.

♦ Пользователя amanda нужно добавить на всех машинах сети, с которых предполагается архивирование данных.

После успешного завершения программы configure введите команды make и make install.

Основными конфигурационными файлами АМАND'ы служат /etc/amanda/amanda.conf и /etc/amanda/disklist. В этих файлах находится информация о стримере, о разделах, которые вы хотите резервировать, а также другая важная для АМАND'ы информация. Пока воспользуемся файлами по умолчанию. Откройте их и измените только специфические для вашей сети параметры.

В файле disklist нужно прописать имена узлов сети, которые вы хотите архивировать. При этом лучше прописывать IP-адреса, поскольку некоторые версии АМАND'ы иногда не могут преобразовать имя узла в IP-адрес (почему — сам не знаю, ведь все должно работать через DNS).

Теперь приступим к настройке узлов, резервную копию которых вам нужно создать. Если эти узлы используют устаревший суперсервер inetd, в файл /etc/inetd.conf нужно добавить такие строки:

Amanda dgram udp wait amanda /usr/libexec/amandad amandad.

Amandaidx stream tcp nowait amanda /usr/libexec/amindexd.

Amindexd amidxtape stream tcp ncwait amanda /usr/libexec/amidxtaped amidxtaped.

Если же используется суперсервер xinetd, то в файл /etc/xinetd.conf нужно добавить следующие строки:

Листинг 10.1. Конфигурирование службы AMANDA.

Service amanda.

{

 protocol = udp.

 socket_type = dgram.

 wait = no.

 user = amanda.

 server = /usr/libexec/amandad.

 log_on_failure += USERID.

}

Service amandaidx.

{

 protocol = tcp.

 socket_type = stream.

 wait = no.

 user = amanda.

 server = /usr/libexec/amindexd.

 log_on_failure += USERID.

}

Service amidxtape.

{

 protocol = tcp.

 socket_type = stream.

 wait = no.

 user = amanda.

 server = /usr/libexec/amidxtaped.

 log_on_failure += USERID.

}

Затем в файл /etc/.rhosts нужно добавить строку:

192.168.0.1 amanda.

Чтобы изменения вступили в силу, желательно перезагрузить компьютер или перейти на первый уровень выполнения и обратно по команде telinit.

Теперь нужно пометить кассеты стримера. Это позволяет сделать команда amlabel. Зарегистрируйтесь как суперпользователь, вставьте в стример первую пленку и введите команду:

# amanda -с "amlabel network tape1".

Здесь «network» — это имя конфигурации, заданное в файле amanda.conf, a «tape1» — это метка вашей пленки, AMANDA запишет имя пленки в список пленок, поэтому у вас никогда не будет двух кассет с одной меткой.

Вам больше не нужна какая-нибудь лента? Для ее удаления из списка введите команду:

# amanda -с "amrmtape network tape1".

Команда amcheck позволяет проверить созданную вами конфигурацию и сообщить о возможных ошибках:

# amanda -с "amcheck network".

Вот теперь можно приступить к резервному копированию, Введите команду:

# amanda -с "amdump network" &

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

# amanda -с "amstatus network".

Если у вас возникла необходимость восстановить какую-нибудь рабочую станцию, зарегистрируйтесь на ней как суперпользователь, перейдите в корневой каталог и введите команду:

# amanda -с "amrestore network".

Программа amrestore соединится с сервером кассет. В ответ на приглашение сервера введите:

Setdisk sd0f.

После этого вы сможете просматривать файлы и каталоги резервной копии так же, как при работе с FTP-сервером. Если вы найдете файл или каталог, который хотите восстановить, введите команду:

Add имя_файла_или_каталога.

Выбранный вами файл будет добавлен в список восстановления программы amrestore. Для извлечения добавленных в этот список файлов введите команду extract.

За дальнейшими инструкциями обратитесь к документации по системе AMANDA.