Я предполагаю, что Вы используете один из дистрибутивов мэра, Если бы я должен был сделать то же как Вы, то я использовал бы мерзавца для всего связанного с файлами конфигурации (/и т.д.,/usr/local/etc, и т.д.) я постараюсь не присваивать версию файлам мусорного ведра, если Вы не скомпилируете свои собственные пакеты.
И я использовал бы собственный диспетчер пакетов каждого распределения для тиражирования установки того же профиля пакета.
В случае базирующихся дистрибутивов debian это действительно легко:
dpkg --get-selections | grep '[[:space:]]install$'| awk '{print $1}' > packages-installed
и затем в новой системе:
cat packages-installed | xargs sudo apt-get install
С уважением
Я ожидаю мерзавца, или некоторый другой распределил vcs, сделает лучшее задание в этом затем svn. Вы могли бы хотеть посмотреть на источник для etckeeper, который в основном отслеживает / и т.д. с мерзавцем и парой другого dvcs. Etckeeper мог, вероятно, быть расширен или изменен для отслеживания всей файловой системы.
Я вижу два неочевидных решения.
Резервный BackupPC использования, который позволяет Вам легко проверить предыдущие версии и восстановить их. Может быть сделан удаленно или локально.
Управление конфигурацией с помощью марионетки. Я не присваиваю версию, управляют всеми файлами на сервере. Я присваиваю версию модулям марионетки управления и декларациям, которые описывают, какие изменения должны быть применены к серверу. Я стараюсь не касаться серверов вручную вообще, и если я делаю, я копирую изменения в марионетке.
Я использую обоих. Конфигурация появляется от марионетки, имеющей версию с мерзавцем, и управление версиями "пользовательских данных" (подаваемые веб-страницы, корневые каталоги и т.д.) обрабатывается backuppc.
Можно поместить / и т.д. в SVN. Я использовал бы другой резервный метод для/usr все же.