Вы ищете rdiff-backup . Это очень, очень хорошо.
Каков наилучший способ выполнять ежедневное / еженедельное / ежемесячное резервное копирование?
В настоящее время я запускаю скрипт на леопарде каждые несколько дней, чтобы убедиться, что я сделал резервную копию своих данных на удаленном сервере, используя:
#!/bin/bash rsync -avvz ~/Documents ~/Workspace -e ssh admin@myhost.com:~/Backup/
У этого метода есть ограничения, т.е. я не могу просматривать файлы, которые были удалены несколько резервных копий назад. Как лучше всего автоматизировать этот процесс?
5 ответов на вопрос
- Популярные
- Новые
- С комментариями
- Активные
Я нашел пакет rsnapshot очень хорошим, доступным во всех дистрибутивах, и я только что установил его на свой Mac.
Это оболочка для rsync, которая заботится о добавочных резервных копиях, включая ежечасные, ежедневные, еженедельные и ежемесячные.
Я считаю, что машина времени очень эффективна в сочетании с вращением резервных копий за пределами площадки. Это не «использование удаленного сервера», а мысль, что я должен просто указать на это.
Можете ли вы создать работу cron в леопарде?
В примере параметров rsync (-avvz) не удаляются файлы в «удаленном» каталоге, которые были удалены из локального каталога с момента более раннего резервного копирования. Они все еще должны быть в удаленном каталоге.
Но ваш пример сбивает с толку: копируете ли вы файлы из ~ / Documents в ~ / Workspace или в ~ / Backup / на myhost.com
Это может быть особенностью леопарда, но похоже, что вы просто копируете из ~ / Documents в ~ / Workspace, в этом случае остальная часть строки может игнорироваться (и вам не нужно вызывать ssh)
Вам также следует рассмотреть возможность завершения спецификации исходного каталога с помощью /
Я бы согласился с Питером, что ротационные резервные копии хороши - если у вас есть свободное место на диске.
Я запускаю эту работу cron каждый день в 5:30 утра:
#! /bin/bash echo -n "cleaning remote database..."; ssh wf ./bin/mysql-clean; echo "Done"; echo -n "running remote backup script..."; ssh wf ./bin/mysql-backup; echo "Done"; scp wf:~/mysql-`date +%Y-%m-%d`.sql.bz2 /storage/mysql/;
Затем на моем веб-хосте у меня есть скрипт mysql-clean, который пылесосит мою базу данных и удаляет всю ненужную информацию. MySQL-резервная копия в основном просто mysqldump по каналу через bzip2, а затем называет его в соответствии с датой. У меня также есть сценарий, который берет последний файл резервной копии, распаковывает его, очищает локальную базу данных mysql, а затем вставляет все данные из файла резервной копии.
Похожие вопросы
-
3
Почему Macbook Pro Unibody вылетает в спящем режиме под Windows?
-
2
iTunes на Mac: как использовать внешнюю музыкальную библиотеку на NAS (общий ресурс Windows)?
-
3
Как повторно связать резервную копию Airport Time Machine после перехода на новый Mac?
-
-
6
Хорошее решение для домашних резервных копий и обмена файлами / печатью
-
4
Как я могу конвертировать ISO-образ CD в формат bin / cue на Mac?
-
6
Как вы отключите звук запуска на Mac?
-
5
Почему мой Macbook сильно нагревается при использовании Boot Camp?
-
5
Macbook Pro продолжает извлекать все, что я положил во внутренний оптический привод
-
4
Есть ли альтернативы TextExpander в Mac OS X?
-
6
Способ переноса данных Time Machine на новый диск