Eu faço isso em sistemas CentOS o tempo todo, e a ideia básica provavelmente deve funcionar bem com o Ubuntu. O processo básico é:
- Obtenha uma lista de pacotes instalados no sistema remoto
- Transmita essa lista para o instalador de pacotes em seu sistema local
Esta página da web parece abordar a questão para o Ubuntu:
Basicamente:
ssh othersystem dpkg --get-selections | dpkg --set-selections
dselect
Caveta: completamente não testado da minha parte. Se eu tivesse que descobrir como fazer isso sozinho, provavelmente teria gerado uma lista de pacotes usando uma variante de dpkg-query
e depois passado para apt-get install
, mas isso parece muito mais limpo.
Também é possível que, tendo instalado o conjunto correto de pacotes, você possa usar algo como o rsync para copiar qualquer alteração. Em teoria, como os pacotes instalados são os mesmos, isso reduzirá drasticamente a largura de banda necessária para completar o clone. Na prática, isso pode não funcionar tão graciosamente quanto se esperaria, portanto, pode fazer mais sentido apenas implementar manualmente a configuração específica.