Автоматизация резервного копирования cpio с несколькими лентами

В настоящее время у меня есть простой процесс резервного копирования, в котором скрипт запускается ежедневно через cron. Если на диске есть лента, она будет использовать cpio для резервного копирования важных файлов, а полное резервное копирование системы будет выполняться раз в неделю. По большей части это работает нормально.

Тем не менее, проблема, которая возникает время от времени, еженедельное резервное копирование будет сбой со следующей ошибкой:

UX: cpio: ОШИБКА: невозможно открыть "/dev/tty"

В большинстве случаев это просто случай, когда текущая лента заполнена, и cpio не может получить доступ к управляющему терминалу, чтобы запросить следующую ленту из-за запуска в качестве cronjob. Запуск сценария вручную на следующее утро работает нормально.

Однако ручное выполнение резервного копирования является неоптимальным из-за того, что полное резервное копирование системы занимает около пяти часов, в течение которых система находится в пиковом режиме (и, таким образом, подвержена изменению промежуточного резервного копирования). Запускать его автоматически в одночасье гораздо предпочтительнее.

Очистка системы от ненужных файлов так, чтобы уместиться на одной ленте, может занять у меня только так далеко.

Есть ли способ автоматизировать задание резервного копирования, которое может охватывать ленты? У меня есть второй ленточный накопитель, который я могу добавить на сервер, но не уверен, поможет ли это. Я предпочел бы продолжать использовать cpio, а не проходить все стресс-тестирование / документацию совершенно новой системы резервного копирования, если в этом нет крайней необходимости.

Для записи я использую SCO OpenServer 6.

2 ответа

Решение

Один из вариантов с двумя приводами - запустить два отдельных cpio одновременно выполнять резервное копирование различных частей системы. Задача тогда будет найти разделительную линию, которая работает для вас. Другое преимущество заключается в том, что полное резервное копирование будет выполняться быстрее, если шины данных не насыщены.

Это не масштабируется, если ваша резервная копия требует более двух лент.

Я помню, как давным-давно, я делал что-то вроде использования ожидаемого для запуска резервного копирования и использования символической ссылки на устройство вместо реального устройства (указывающего сначала на первую ленту), поэтому, когда обнаруживается конец ленты, вы изменить ссылку на вторую ленту, затем отправить <RETURN> к команде резервного копирования, и она будет продолжена со второй.

Другие вопросы по тегам