Backup avançado
Publicado por Eduardo Vieira Mendes 19/03/2007
[ Hits: 8.637 ]
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
Atualizando páginas automaticamente com Lynx
registra quais as máquinas da sala estão ligadas
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (2)
Ubuntu com problemas no áudio (1)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)