Backup, gerando no final uma imagem .iso dos arquivos !!
Publicado por Fábio Flores 26/02/2007
[ Hits: 7.392 ]
Depois de tantas perdas que sofri na vida, de dados é claro :) resolvi fazer um script para "backapear" os dados do meu notebook. Este script funciona tanto em notebook quanto desktop, basta ter o cdrtools instalado!
Quando executar o script, deve passar por parâmetro os arquivos e diretórios que vc deseja fazer o backup. Ao final ele gera um arquivo .iso para ser gravado em uma mídia, e todas as operações são registradas em um arquivo de log que fica em ~/logs_backup.
Valeu! Fábio "cyberwolf" Flores
#!/bin/bash # # Uso: backupdados <diretorio1> <diretorio2>...<arquivo4> # # Programa para fazer backup automatizado de arquivos e diretórios que são passados # por parâmetros, gerando no final um arquivo .iso para ser gravado em uma mídia. # Caso o programa não consiga gerar o arquivo imagem então os dados ficam copiados # em /tmp/bckp_dadosddmmaaa/, todas as operações são registradas em um arquivo # de log que fica no diretório ~/logs_backup que é criado automaticamente. # Uso este programa(script) no meu notebook, para fazer backup dos arquivos mais importante # depois gravo um dvd com a imagem(.iso) criada. # Coloquei bastante controle de erros (modúlos anti-bocó :) ) no caso de alguns deslizes # que eu mesmo cometo. # Valeu!! # Abraços # Fábio "Cyberwolf" Flores # # # Verifica se foi passado parâmetros no programa # ---------------------------------------------- if [ $# -le 0 ] then echo "Erro -> Uso: backupdados <diretorio1> <diretorio2>...<arquivo4>" exit 1 fi # Controle da "existência" do aplicativo mkisofs para gerar a imagem # ------------------------------------------------------------------- if [ -f /usr/bin/mkisofs ] then controle=1 else echo -e "Erro -> A imagem não sera gerada:\no aplicativo mkisofs não foi localizado ou\nnão esta instalado ou\nvocê não tem permisão para executar" controle=2 fi # Verifica se os dados que serão "backupeados" existem e se o # usuário tem permisão de leitura dos mesmos # ---------------------------------------------------------- i=1 erro=0 while [ $i -le "$#" ] do if [ ! -r `echo $* | cut -f$i -d" "` ] then erro=1 break fi i=`expr $i + 1` done if [ $erro -eq 1 ] then echo -e "Erro -> Uso: Um ou mais dados são inexistentes ou\nestão indisponíveis para leitura..." exit 1 fi # A primeira vez que é rodado o backup cria o diretório, # e a estrutura de logs no diretório do usuário # ------------------------------------------------------ if [ ! -d ~/logs_backup ] then mkdir ~/logs_backup echo "Diretorio logs_backup criado..." fi echo -e "###################################\n# LOG DO BACKUP DO DIA `date +%d/%m/%Y` #\n###################################" >> ~/logs_backup/backup_dados`date +%d%m%Y`.txt # Cria o diretório temporário para cópia do backup # ------------------------------------------------ mkdir /tmp/bckp_dados`date +%d%m%Y` 2> /dev/null # Copia todos os arquivos e diretórios para /tmp/bckp_dadosddmmaaa/ e gera # o log das cópias em ~/logs_backup # ------------------------------------------------------------------------- echo "Copiando os dados para backup..." cp $@ /tmp/bckp_dados`date +%d%m%Y` -Rfv >> ~/logs_backup/backup_dados`date +%d%m%Y`.txt 2> /dev/null # Verifica a possibilidade de gerar a imagem # ------------------------------------------ if [ $controle -eq 1 ] then # Gera o arquivo .iso para gravação em mídia # ------------------------------------------ echo -e "################################################\n# GERANDO A IMAGEM .iso PARA GRAVAÇÃO EM MÍDIA #\n################################################" >> ~/logs_backup/backup_dados`date +%d%m%Y`.txt echo "Gerando a imagem..." mkisofs -r -o bckp_dados`date +%d%m%Y`.iso -J -V"bckp_dados`date +%d%m%Y`" /tmp/bckp_dados`date +%d%m%Y` 2>> ~/logs_backup/backup_dados`date +%d%m%Y`.txt echo -e "#################\n# Fim do Backup #\n#################" >> ~/logs_backup/backup_dados`date +%d%m%Y`.txt # Verifica se a imagem foi gerada corretamente # -------------------------------------------- if [ -f bckp_dados`date +%d%m%Y`.iso ] then echo "Arquivo imagem gerado com sucesso..." else echo "Erro: Ocorreu um erro na hora de tentar gerar a imagem" exit 3 fi # Se conseguiu gerar a imagem exclui o diretório /tmp/bck_dadosddmmaaa/ # ---------------------------------------- rm -rf /tmp/bckp_dados`date +%d%m%Y` echo "Fim do Backup" else echo -e "Não foi gerada a imagem pois mkisofs não estava disponível,\na copia do backup ficou em /tmp/bckp_dados`date +%d%m%Y`" echo "Fim do Backup" fi #
Script de compilação do kernel 3.3.4 no Ubuntu 11.10 64 bits
Desklets DoItYourself como monitor do sistema
Instalar impressora no CUPS a partir de um arquivo PPD
ScriptLibreOffice - Baixa e instala o LibreOffice pt_BR mais recente no Ubuntu, Debian e Linux Mint
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (10)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









