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.596 ]
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
Script para montar dispositivo Android
shieldscript - Script para defesa básica do seu GNU/Linux
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
SysAdmin ou DevOps: Qual curso inicial pra essa área? (0)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (3)
[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