Script simples de Backup para os diretórios listados abaixo do /
Publicado por Igor Teixeira da Rocha (última atualização em 18/05/2012)
[ Hits: 7.366 ]
Bom pessoal, esta é a minha primeira contribuição aqui no VOL, é um script simples, sem grandes implementações, pois ele
simplesmente comprimi os diretórios listados abaixo do /.
Mas não deixa de ser útil, pois imagine sem querer rodar um rm -r /etc ao invés de etc(que poderia ser uma cópia do /etc em algum diretório), bastaria descompactar o backup e mover o etc abaixo do barra(mv etc /), pronto os arquivos de configuração estão todos ali de novo, rsrsrs..(sei que parece uma situação difícil mas pode acontecer rsrsrs).. Espero que eu possa ajudar algum novato assim como eu :)
“Aquele que não compartilha seu conhecimento, deixa morrer consigo os frutos de sua sabedoria.”
Abraço galera....
#!/bin/bash # script simples de backup # formatação da Data no nome do arquivo .tar.gz DATA_BKP=$(date "+%d/%m/%y") export DATA_BKP # listagem dos diretórios em formato 'single-column' única coluna DIR_BARRA=$(ls / --format='single-column') export DIR_BARRA # Baner exibido no inicio do Backup clear_console for i in $(seq 1 3) do echo -e '\t\t\t\e[44;37m ###########################################\e[0m' sleep 1s done echo -e '\t\t\t\e[36m Inicializando Backup automático de todo FileSystem ...\e[0m' echo $'\t\t Listando os Diretórios atuais abaixo do FileSystem Principal (/).. ' echo $DIR_BARRA echo "" echo " Aguarde enquanto o backup é inicializado...." sleep 1 echo "" # Variavel auxiliar que ira receber o nome de cada do diretório a cada interação do loop for aux=1 export aux # backup propiamente dito # realiza um loop enquanto o comando ls / --format='single-column' for i in $(ls / --format='single-column') do # atribui a variavel aux o nome do diretorio corrente no loop aux=$i # compacta o diretório que listado, atribuindo a ale o nome do diretório # com a data atual, exemplo etc_14_05_2012.tar.gz e salva no diretório corrente # Caso haja algum erro na execução do backup a saida padrão de erro STDERROR # é jogada para dentro de um arquivo. (arq.erro) # e um arquivo chamado info_backup.log é criado com as informações do ocorrido. tar -cvzf ${i}`date +%Y_%m_%d`.tar.gz /$i 2>> arq.erro if [ $? != 0 ];then echo "Erro ao realizar backup do FileSystem $i ,rodar novamente" >> info_backup.log else echo "Backup do FileSystem $i realizado com sucesso na data $(date)" fi done # fim
Verifica duplicação de IPs na rede
Projeto rodar League of Legends no Linux =)
Lista de programas, escolha e instalação
Comandos e estruturas básicas de shell script
Script com Case para e Excluir pastas
Agora temos uma assistente virtual no fórum!!! (247)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
iso de sistema 32 bit em atividade (20)
Impressora Canon Ip 1800 (Drivers) 64 bit (6)
Microfone do meu headset não é recinhecido. Meu notebook é um Acer Asp... (10)