Backup avançado
Publicado por Eduardo Vieira Mendes 19/03/2007
[ Hits: 8.555 ]
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
Apostila interativa de linux (incompleto)
diMail - envia e-mail com um front do dialog
Instalar o Java diretamente do site oficial
Fazendo backup de uma pasta em arquivos separados
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
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
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (16)
Arch Linux - Guia para Iniciantes (2)
Problemas ao instalar o PHP (11)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)