Backup avançado
Publicado por Eduardo Vieira Mendes 19/03/2007
[ Hits: 8.697 ]
Script de backup.
Está incluída a possibilidade de escolher quais pastas a serem feitos backup, pasta onde deve ser armazenado o backup e ainda em qual formato de compressão deve ser utilizado.
#!/bin/bash ############################################ # Script de backup # Criado por: # Eduardo Vieira Mendes # eduardovmendes@gmail.com # LUS: 298813 # Uso: back <opções> <local> <dirs> ############################################ # Cria as váriaveis (Data inicial - Título - Arquivos de log - Dara + Hora - Diretórios - Local a ser salvo di=`date +%d-%m-%Y` dh=`date +%d-%m-%Y+%H:%M` title="backup-$dh" log=/var/log/"backup-$di".log local=$2 dirs="$3 $4 $5 $6" uso() { #Função para mostrar a ajuda! echo "=================================================================" echo " Backup de arquivos do sistema" echo " Faz backup dos arquivos importantes do sistema e os comprime" echo " Uso: back <opções> <local> <dirs>" echo " Onde:" echo echo " <opções>" echo " -t | --tar Sem compressão, apenas armazena os arquivos" echo " -g | --gzip Compressão para Gzip" echo " -b | --bzip Compressão para Bzip" echo echo "<local>" echo " Local a ser gravado o backup" echo echo "<dirs> Diretórios a serem feitos o backup" echo echo "=================================================================" exit 1 } # Limpa a tela clear bkptar() { # Se nenhum local for especificado para o arquivo do backup, para e mostra a ajuda if [ "$local" == "" ]; then echo echo "Nenhum local especificado para gravar o arquivo de backup" echo uso exit 1 fi # Se nenhuma pasta for selecionada para o backup, para e mostra a ajuda if [ "$dirs" == "" ]; then echo echo "Nenhuma pasta especificada para ser feito o backup" echo uso exit 1 fi # Caso contrário inicia o backup sem compressão echo "Iniciando backup sem compressão as $dh" # Preparando arquivo de log echo "O arquivo de log será gerado em $log" rm -f $log echo "Iniciando backup sem compressão as $di" >> $log localar=$local$title tar -cpPmv $dirs -f $localar.tar >> $log echo "Backup criado com susesso em $localar" exit 1 } bkpg() { # Se nenhum local for especificado para o arquivo do backup, para e mostra a ajuda if [ "$local" == "" ]; then echo echo "Nenhum local especificado para gravar o arquivo de backup" echo uso exit 1 fi # Se nenhuma pasta for selecionada para o backup, para e mostra a ajuda if [ "$dirs" == "" ]; then echo echo "Nenhuma pasta especificada para ser feito o backup" echo uso exit 1 fi # Caso contrário inicia o backup com compressão gzip echo "Iniciando backup com compressão Gzip as $dh" # Preparando arquivo de log echo "O arquivo de log será gerado em $log" rm -f $log echo "Iniciando backup com compressão Gzip as $di" >> $log localar=$local$title tar -cpPmv $dirs -f $localar.tar.gz >> $log echo "Backup criado com susesso em $localar" exit 1 } bkpb() { # Se nenhum local for especificado para o arquivo do backup, para e mostra a ajuda if [ "$local" == "" ]; then echo echo "Nenhum local especificado para gravar o arquivo de backup" echo uso exit 1 fi # Se nenhuma pasta for selecionada para o backup, para e mostra a ajuda if [ "$dirs" == "" ]; then echo echo "Nenhuma pasta especificada para ser feito o backup" echo uso exit 1 fi # Caso contrário inicia o backup sem compressão echo "Iniciando backup com compressão Bzip as $dh" # Preparando arquivo de log echo "O arquivo de log será gerado em $log" rm -f $log echo "Iniciando backup com compressão Bzip as $di" >> $log localar=$local$title tar -cpPmvj $dirs -f $localar.tar.bz >> $log echo "Backup criado com susesso em $localar" exit 1 } #Escolher o que rodar: while true ; do case "$1" in -h|--help) uso; exit 1 ;; "") uso ; exit 1 ;; -t|--tar) bkptar ; exit 1 ;; -g|--gzip) bkpg ; exit 1 ;; -b|--bzip) bkpb ; exit 1 ;; --) uso ; exit 1 ;; *) uso ; exit 1 ;; esac done
Mostra informações da CPU e Memória
Gerenciador Simples de Empresa
Shell Script / Perl para sincronizar base de usuários do AD com o Zimbra
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
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Deixando o Plasma6 mais fluido no Linux
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Isso acontece com vcs também? (7)
Problema com audio apos upgrade (10)
Instalação automatizada do Debian 12 em UEFI (2)