Não há muito o que fazer quando se trata dos padrões da indústria no momento. Se você realmente precisa de scripts para preparar tudo para você, então eu faria:
- faça o dump de todos os pacotes instalados com
dpkg -l
junto com versões dele. - crie um novo servidor com o ubuntu 16.04, instale todos os pacotes nas mesmas versões.
- instale
etckeeper
no novo servidor -
rsync
todos os diretórios/etc
do servidor original para o "limpo" um - garantindo que os arquivos do "limpar" um que não sejam t presentes no original são excluídos (a2dismod
simplesmente exclui links simbólicos no diretório / etc / apache2 / modules-enabled de modo que seria uma outra maneira de fazer o mesmo) - existe uma opção emrsync
para faça exatamente isso.
Depois disso, você deve ser apresentado (graças ao etckeeper) com um diferencial do git do diretório /etc/
- isso pode simplesmente (?) ser transformado em um script patch
- mas ele só funcionará de forma confiável quando todos As versões dos pacotes serão exatamente iguais às do servidor original. No entanto, isso seria uma boa base para alguns modelos reais de ansible
/ puppet
/ chef
Descendo essa rota, você deve ser capaz de criar algum tipo de automação para preparar novos servidores com configuração semelhante.
Existe outra opção se "padrões do setor" não lhe dizem respeito - apenas rsync
/ tar
todo o servidor (você precisa parar os bancos de dados ou omiti-los no rsync
para evitar estruturas de arquivos inconsistentes) para que você possa desempacotá-lo em uma instalação limpa do Ubuntu 16.04 para obter exatamente a mesma máquina em outro local.