Backup usando o tar com o gzip
Publicado por Pedro Fernandes (última atualização em 20/02/2020)
[ Hits: 3.339 ]
Homepage: https://github.com/PedroF37
Backup usando o tar com o gzip. Os arquivos e diretórios são especificados em arquivo de configuração e envia para local especificado em variável DESTINO ou para $HOME/$ARQUIVO se variável DESTINO estiver vazia.
Tem que entrar no script e especificar o arquivo com a lista para o backup na variável CONFIG_FILE.
#!/bin/bash # # # bkup.sh Arquiva usando o tar com o gzip os arquivos e diretorios # especificados em arquivo de configuração, e envia # para local especificado em variável DESTINO ou # para $HOME/$ARQUIVO se variável DESTINO # estiver vazia. # # # USO ./bkup.sh # ARQUIVO=bkp123.tar.gz ./bkup.sh # DESTINO=/home/pedro/teste1 ./bkup.sh # ARQUIVO=bkp123.tar.gz DESTINO=/home/pedro/teste1 ./bkup.sh # # # OBS Tudo tem que ter caminho completo, incluindo # arquivos e diretorios no arquivo especificado # na variavel CONFIG_FILE # # EX /home/pedro/Downloads # /home/pedro/Documentos # Um por linha. # # # SUGESTAO Criar diretorio para armazenar os backups # e colocar CONFIG_FILE dentro do diretorio # Depois no script editar DESTINO para apontar # para o diretorio. # # # autor pedro fernandes # email pedrobfernandes32@protonmail.com # # ######################################################################### # # # Pegando a data para anexar no nome do arquivamento # # DATA=$(date +%d%m%y) # # # Especifica nome do arquivamento # # ARQUIVO=${ARQUIVO:-backup$DATA.tar.gz} # # # Arquivo de configuração e destino do backup # # # Especificar caminho completo: /home/user/arquivo CONFIG_FILE= DESTINO=${DESTINO:-$HOME} # # #################### Inicio do script ############################### # # # Verifica se arquido de configuração existe # # if [ -z $CONFIG_FILE ] then clear echo "Arquivo de configuração não existe." echo "Abortando o script." exit fi # # if [ -f $CONFIG_FILE -a -s $CONFIG_FILE ] # Garante que $CONFIG_FILE existe then # e que não está vazio. : else clear echo "$CONFIG_FILE não existe ou está vazio." echo "Abortando o script." exit fi # # "Constroi" nomes de arquivos e diretorios para o backup # FILE_NO=1 # Inicia na linha 1 do $CONFIG_FILE exec < $CONFIG_FILE # redireciona o stdin para $CONFIG_FILE # # read FILE_NAME # Lendo o primeiro registro # # while [ $? -eq 0 ] # cria a lista para o backup do # Primeiro garante que arquivo ou diretorio existe if [ -f $FILE_NAME -o -d $FILE_NAME ] then FILE_LIST="$FILE_LIST $FILE_NAME" else cat <<- EOF $FILE_NAME não existe, logo não será incluido. Está listado na linha $FILE_NO de $CONFIG_FILE. Continuando a construção da lista para o arquivamento... EOF fi # # FILE_NO=$[ $FILE_NO + 1 ] read FILE_NAME done # # ################################################################# # # # Faz o arquivamento e comprime com gzip # # echo echo "Iniciando o arquivamento......" # # tar -czf $DESTINO/$ARQUIVO $FILE_LIST 2> /dev/null # # echo echo "Arquivamento terminado" echo "Arquivo resultante é: $DESTINO/$ARQUIVO" # # exit
Script Backup com Log e envio por Email
Backup de diretórios do sistema Linux
Backup de arquivos e banco de dados com envio de e-mail
Script de Back Up, com limpeza de back ups antigos e e-mail com logs
Nenhum comentário foi encontrado.
Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
intervenção politica pode interver no Fedora Linux [RESOLVIDO] (14)
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (0)