Скрипт / инструмент для клонирования сервера Ubuntu

Я установил и настроил сервер Ubuntu (установка дополнительных пакетов и внесение изменений в некоторые файлы конфигурации). Теперь я хотел бы установить почти идентичную систему, у которой просто другой IP-адрес, имя хоста или что-то подобное. Есть ли какой-нибудь скрипт или инструмент, который может автоматизировать этот процесс?

Я не ищу что-то вроде Clonezilla, которое делает клон изображения. Я не ищу что-то вроде remastersys, который создает образ ISO. Я хотел бы что-то вроде этого: http://www.debianadmin.com/clone-your-ubuntu-installation.html или это: http://ubuntuforums.org/showthread.php? t = 525660 , но более полный и автоматический.

По сути, этот инструмент должен сканировать существующую систему и извлекать список установленных пакетов. Затем сравните файлы конфигурации в системе с файлами конфигурации по умолчанию для каждого пакета и сгенерируйте различия, если они отличаются. Однако он также должен идентифицировать конфигурации, которые различны для каждого сервера (например, IP, имя хоста и т. Д.) И дать возможность их настраивать.

Все это должно быть сделано автоматически, и на выходе должна быть очень маленькая по размеру «ДНК» существующей системы. Затем для установки новой системы следует использовать такой инструмент, как debootstrap, и к нему следует применить изменения, описанные в «DNA»: установка новых пакетов и изменение их файлов конфигурации.


О мотивации:

Я управляю виртуальным веб-сервером в облаке, где со временем выполнил множество настроек: связанных с безопасностью, различными пакетами и т. д. Теперь, если я хочу создать другой сервер, который имеет те же функции и назначение, что и первый, долгим и утомительным способом будет снова просмотреть все установки и конфигурации, и все же я могу что-то упустить. Я подумал, что, может быть, есть какой-нибудь инструмент, который может сделать что-то вроде различий между текущим состоянием сервера и начальным состоянием только что установленного сервера. Эта разница также помогла бы мне проверить текущую систему, я точно не помню всех вещей, которые я коснулся и запутал в ней.

Такая разница может также послужить рецептом, которым я могу поделиться с моими друзьями, если они захотят построить систему, подобную моей. Это было бы намного удобнее и безопаснее, чем разносить огромные тарболлы или изображения.


Инструменты, предложенные для клонирования:

Некоторые из предложенных инструментов:

Но ни один из них не подходит для моего случая.

2
задан 22 February 2013 в 19:08

2 ответа

Я думаю, вы могли бы использовать dpkg --get-selections. Затем установите эти пакеты на ваш новый сервер. Файлы конфигурации вы можете скопировать со старого сервера. Это не безболезненно, но доступно.

Источник

0
ответ дан 22 February 2013 в 19:08

Если в двух системах установлены одинаковые пакеты, и вы выполняете различие их каталогов / etc, вы в основном получите все изменения конфигурации между ними (возможно, не на 100%, но все еще очень точные). Итак, что я сделал для проверки моей системы:

Конечно, этот diff не может быть легко использован для установки и настройки другой системы, но знание, где есть различия и каковы они, может помочь в создании tklpatch (например: https: // github.com/dashohoxha/B-Translator/tree/master/tklpatch), что, конечно, не совсем легко сделать и требует некоторой работы.

Затем я могу распространять / публиковать этот tklpatch, и каждый может легко создать систему, очень похожую на мою.

0
ответ дан 22 February 2013 в 19:08

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

Похожие вопросы: