Script de backup em CD/DVD
Publicado por Davi Rodrigues (última atualização em 06/07/2010)
[ Hits: 8.348 ]
Homepage: http://br.linkedin.com/pub/davi-rodrigues/23/319/68b
Download 1277840435.backup (versão 2)
Script de backup em CD/DVD. O mesmo funciona com o dialog.
Comando para instalar as dependências do script (Debian e derivados):
# apt-get install mkisofs cdrecord dvd+rw-tools
Versão 2 - Enviado por Davi Rodrigues em 29/06/2010
Changelog: Nessa versão acrescentei gravação de arquivos separados, com escolha do usuário, irei fazer um artigo explicando as funcionalidades do sistema de backup, mas preciso concertar um pequeno problema que é fazer com que ele possibilite a seleção de vários arquivos ao mesmo tempo para gravar no DVD.
#!/bin/bash # # Script Feito por Davi Rodrigues # Email <davirodrigues@gmail.com> trap 2 exit while : ; do # Menu de Opcoes clear opcao=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" --menu "Sistema de Backup G. PEGADO" 0 50 6 \ 1 "Backup em CD" \ 2 "Backup em DVD" \ 3 "Suporte ao sistema" \ 0 "Sair do Sistema") # Sai do Menu caso aperte ESC ou CANCELAR [ $? -ne 0 ] && break case $opcao in 0) # Sistema de Backup clear echo "Sistema de Backup G. PEGADO" echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=" echo echo echo "Muito Obrigado pela Opcao, qualquer duvida aperte a opcao 3 do menu anterior" echo echo sleep 1 exit 0 ;; 1) # Opção para gravação em CD-R/RW clear DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer o backup:'\ 8 40) if [ -d "$DIR" ]; then if [ $DIR = /backup ]; then clear dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Alerta' --msgbox 'O diretorio escolhido nao pode ser "/backup" \nE tambem nao podera escolher o diretorio "/" \nPor Favor insira outro' 0 0 DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer o backup:'\ 8 40) if [ -d "$DIR" ]; then if [ $DIR = /backup ]; then clear dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Alerta' --msgbox 'Ja foi dito os diretorios que nao podera \nescolher por favor execute novamente o sistema' 0 0 exit 0 fi else dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Alerta' --msgbox 'Foi verificado que o diretorio digitado nao existe \nPor favor Insira o diretorio correto' 0 0 DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer o backup:'\ 8 40) fi fi else dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Alerta' --msgbox 'Foi verificado que o diretorio digitado nao existe \nPor favor Insira o diretorio correto' 0 0 DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer o backup:'\ 8 40) fi /usr/bin/mkisofs -r -J -o /backup/backup.iso $DIR /usr/bin/cdrecord -v fs=16M speed=8 dev=2,0,0 --data /backup/backup.iso && rm -rf /backup/backup.iso dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Parabens' --msgbox 'Backup finalizado com sucesso! \nPor favor Remova o Cd-R/RW do dispositivo' 8 40 ;; 2) # Opção para Gravação em DVD-R/RW clear DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer backup:'\ 8 40) if [ -d "$DIR" ]; then if [ $DIR = /backup ]; then clear dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Alerta' --msgbox 'O diretorio escolhido nao pode ser "/backup" \nE tambem nao podera escolher o diretorio "/" \nPor Favor insira outro' 0 0 DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer o backup:'\ 8 40) if [ -d "$DIR" ]; then if [ $DIR = /backup ]; then clear dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Alerta' --msgbox 'Ja foi dito os diretorios que nao podera \nescolher por favor execute novamente o sistema' 0 0 exit 0 fi else dialog --title 'Alerta' --msgbox 'Foi verificado que o diretorio digitado nao existe \nPor favor Insira o diretorio correto' 0 0 DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer o backup:'\ 8 40) fi fi else dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Alerta' --msgbox 'Foi verificado que o diretorio digitado nao existe \nPor favor Insira o diretorio correto' 0 0 DIR=$(dialog --stdout --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --inputbox 'Digite o diretorio que deseja fazer o backup:'\ 8 40) fi /usr/bin/mkisofs -r -J -o /backup/backup.iso $DIR /usr/bin/growisofs -dvd-compat -speed=8 -Z /dev/cdrom=/backup/backup.iso && rm -rf /backup/backup.iso dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues"\ --title 'Parabens' --msgbox 'Backup finalizado com sucesso! \nPor favor Remova o DVD-R/RW do dispositivo' 0 0 ;; 3) # Informações de suporte clear dialog --backtitle "G. PEGADO IMP. & EXP. ..::SISTEMA DE BACKUP::.. By Davi Rodrigues" \ --msgbox "Sistema de Backup G. PEGADO =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Celular : (085) 8704.8139 Segunda a sexta - 08:00 as 17:48 Email : davirodrigues@gmail.com" 0 0 ;; esac done
configurar a rede wireless passando por roteador (melhorado e comentado)
IFINFO - informações de sua interface de rede
Restaurar backup de uma conta cpanel mesmo que ela já exista
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
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Desempenho abaixo do esperado - travadas e congelamento do sistema ope... (6)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta