Backup e restauração dos programas instalados em sistemas baseados em Debian
Publicado por Perfil removido (última atualização em 26/10/2009)
[ Hits: 11.598 ]
Algumas vezes precisei instalar ou reinstalar um sistema no intuito de deixá-lo com todos os recursos já conhecidos na instalação anterior ou em outra máquina semelhante.
Então segue o script que faz um backup da lista de programas instalados e gera um executável para realizar a restauração.
Ajuste a linha 5 conforme suas necessidades (local onde gravar o backup).
Até +
#!/bin/bash # backup dos programas instalados BKP_DIR="/backups/system/dpkg" BKP_DATE=$(date "+%d-%m-%Y") BKP_DIR_TMP="$BKP_DIR/ultimo_bkp" hostname=$(hostname -s) function backup(){ test ! -d $BKP_DIR && mkdir -p $BKP_DIR test ! -d $BKP_DIR_TMP && mkdir -p $BKP_DIR_TMP cd $BKP_DIR_TMP && rm -f $BKP_DIR_TMP/* ; # Gera o script de restauração (no mesmo diretório do backup). cat > dpkg-restore.sh << "EOF" #!/bin/bash # ============================================================================ dpkg --set-selections < pkg.lst apt-get update apt-get dist-upgrade apt-get dselect-upgrade apt-get -f install EOF chmod +x dpkg-restore.sh # Gera uma lista com todos os programas instalados e salva no arquivo pkg.lst dpkg --get-selections -a > pkg.lst lista=$(ls -t $BKP_DIR_TMP) # Gera um md5 do script de restauração e da lista de programas para uma posterior análise. (find $lista -type f -print0 | xargs -0 md5sum > $BKP_DIR_TMP/$hostname-$BKP_DATE.md5) && sync ; lista2=$(ls -t $BKP_DIR_TMP) tar -czvf ../$hostname-$BKP_DATE.tgz $lista2 cd $BKP_DIR # Gera um md5 do backup em formato tar. md5sum $hostname-$BKP_DATE.tgz > $hostname-$BKP_DATE.tgz.md5 } backup ; exit 0
Font Installer v1.0 - Instalação de Fontes no Sistema
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Melhorando a precisão de valores flutuantes em python[AJUDA] (9)
GLPI - Configuração de destinatário com conta Microsoft Exchange (0)
Vou voltar moderar conteúdos de Dicas e Artigos (3)
OpenVPN no MACBOOK conecta mas não pinga pastas de rede compartilhada ... (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta