(Изначально об этом спрашивали в SuperUser - они указали мне здесь как более подходящую.)
У меня есть новый блестящий сервер Debian, работающий в инстансе Amazon EC2. Я потратил время на его настройку, и теперь он отлично работает. Однако, поскольку это облачный сервер, если я (или кто-то другой) нажму не ту кнопку, его виртуальный жесткий диск выйдет из строя, и мне придется делать это снова и снова. Итак, я хочу сделать резервные копии.
Но за хранилище я плачу побайтно, поэтому хочу сделать небольшую резервную копию.
Должна быть возможность сделать резервную копию всего сервера Debian, записав набор установленных в данный момент пакетов (что я могу сделать с помощью dpkg --get-selections), состояние базы данных debconf (что я могу сделать с помощью debconf-get-selections) , а затем только резервное копирование файлов, которые нельзя просто заменить из пакетов, т. е. всего остального. Затем восстановление резервной копии должно заключаться в переустановке пакетов и размещении файлов поверх них.
Сложная часть - определить, какие файлы принадлежат пакету, а какие нет. Наличие статического списка подкаталогов для резервного копирования на самом деле недостаточно из-за бесполезности. Мне нужен способ автоматически определять, нужно ли резервное копирование конкретного файла.
Это как раз то, чего я не хочу делать сам, потому что я ошибаюсь. Есть ли какие-нибудь инструменты, позволяющие мне это сделать?
(Примечание: я не ищу решение для инкрементного резервного копирования. Я хочу сделать полный снимок.)
Rsnapshot похоже, что это сработает для вас. Он делает снимки и инкрементные резервные копии. Пространство довольно мало. Кто-то в ServerFault может иметь лучший ответ.
У меня сложилось впечатление, что вопрос, заданный Дэвидом Гиваном, отличается от того, на который Келбицзл дает ответ.
Думаю, возникает вопрос (поправьте меня, если я ошибаюсь): если я потеряю свою текущую конфигурацию, какой минимальный объем информации мне нужен для ее воссоздания? Это означает, что нет необходимости создавать резервные копии файлов в / bin, / usr / bin, / sbin, / usr / sbin и так далее, потому что это основные компоненты, которые уже описаны в списке установленных пакетов, который может быть получен с помощью
sudo dpkg --get-selections
Так что в основном остались файлы конфигурации. Взгляд на Страница Википедии в иерархии файловой системы Linux показывает, что все необходимые конфигурации содержатся в каталогах
/etc, /opt, /usr/local, /usr/sbin, /usr/share
Если вы установили больше пакетов в свой домашний каталог, вам следует позаботиться о них; каталог установки был выбран вами, поэтому вы должны знать, что делать резервную копию. наконец, есть миллион файлов, которые современный Linux скрывает в вашем домашнем каталоге. Таким образом, вам также потребуется резервное копирование
/home/your_name/.[a-Z]*
Помните, что это дерево разной глубины, в нем много подкаталогов внутри подкаталогов.
В целом это гораздо меньше, чем резервное копирование всей системы. Этот объем информации можно было бы переработать еще больше, но это уменьшение на порядок (то есть примерно в 10 раз) должно сделать его доступным, по крайней мере, я так надеюсь.
вам следует использовать apt-clone вместо dpkg --get-selections, и вам, возможно, также придется делать резервные копии файлов из / var.
Это всегда зависит.