Front-end para backup em CDRW e DVDRW
Publicado por José Lima 30/09/2005
[ Hits: 6.154 ]
Front-end desenvolvido com XDialog para backup de arquivos em CDRW ou DVDRW.
#!/bin/sh # Interface grafica para backup # utilizando o XDialog como ferramenta # de desenvolvimento # Criado por Jose Alves de Lima - ilsinho@ig.com.br - em 18/07/2005 # Funcoes especificas ################################## # MENSAGENS # ################################## ################# Mensagem inicial Mensagem_Inicial() { Xdialog --title "Backup"\ --ok-label "Continuar"\ --msgbox "Você poderá utilizar esta ferramenta para \n backup de arquivos do sistema.\n\n José Alves \n ilsinho@ig.com.br" 15 45 case $? in 0) Menu_Inicial;; 255) Mensagem_Finalizar;; esac } ################# Mensagem finalizar Mensagem_Finalizar() { Xdialog --title "Finalizar Programa"\ --ok-label "Finalizar"\ --cancel-label "Não finalizar"\ --yesno "\nTem certeza que deseja finalizar o programa?\n" 0 0 case $? in 0) exit 0;; 1) Menu_Inicial;; 255) exit 0;; esac } ################# Mensagem - Backup ok Backup_Ok() { Xdialog --title "Backup realizado"\ --msgbox "O backup foi realizado com sucesso." 10 45 case $? in 0) Menu_Inicial;; 255) Mensagem_Finalizar;; esac } ################# Mensagem - Insira cd Insira_Cd() { Xdialog --title "Insira CD-RW"\ --msgbox "Insira um CD do tipo RW. \n Clique em OK para continuar." 10 45 case $? in 0) Grava_CD;; 255) Mensagem_Finalizar;; esac } ################# Mensagem - Insira dvd Insira_Dvd() { Xdialog --title "Insira DVD-RW"\ --msgbox "Insira um DVD do tipo RW \n Clique em OK para continuar." 10 45 case $? in 0) Grava_DVD;; 255) Mensagem_Finalizar;; esac } ################################## # FUNCOES DE GRAVACAO # ################################## Grava_CD() { #desmontagem da unidade de CD umount /media/cdrecorder #parametros do cd dvdrecord --scanbus > /tmp/cdrw CD=`cat /tmp/cdrw | grep RW | awk {'print $1'}` #nomeacao da pasta que recebe os arquivos #compactados de backup e criacao da pasta para backup PASTA=`date +%d-%m-%Y` mkdir /tmp/$PASTA #copia e compactacao dos arquivos para a pasta criada #utiliza a ralacao de pastas listadas em /server/adm_server/lista_backup.txt for LISTA in `cat /servidor/backup/lista.txt` ; do touch /tmp/arquivo.txt echo $LISTA > /tmp/arquivo.txt ARQUIVO=`cut -d/ -f2 /tmp/arquivo.txt` tar -czvf /tmp/$PASTA/$ARQUIVO.tar.gz $LISTA done #apaga o conteudo do CD/RW - limpeza cdrecord -v dev=ATA:$CD speed=8 blank=fast #cria o ISO para o CD mkisofs -r -o /tmp/iso_backup /tmp/$PASTA/* #gravacao do cd cdrecord -v dev=ATA:$CD speed=4 -eject -data /tmp/iso_backup #remocao dos arquivos temporarios rm -fR /tmp/$PASTA rm -f /tmp/iso_backup rm -f /tmp/arquivo.txt rm -f /tmp/cdrw Backup_Ok; } Grava_DVD() { #desmontagem da unidade de CD umount /media/cdrecorder #parametros do dvd dvdrecord --scanbus > /tmp/dvd DVD=`cat /tmp/dvd | grep DVDRW | awk {'print $1'}` #nomeacao da pasta que recebe os arquivos #compactados de backup e criacao da pasta para backup PASTA=`date +%d-%m-%Y` mkdir /tmp/$PASTA #copia e compactacao dos arquivos para a pasta criada #utiliza a ralacao de pastas listadas em /server/adm_server/lista_backup.txt for LISTA in `cat /servidor/backup/lista.txt` ; do touch /tmp/arquivo.txt echo $LISTA > /tmp/arquivo.txt ARQUIVO=`cut -d/ -f2 /tmp/arquivo.txt` tar -czvf /tmp/$PASTA/$ARQUIVO.tar.gz $LISTA done #apaga o conteudo do CD/RW - limpeza dvdrecord -v dev=ATA:$DVD speed=8 blank=fast #cria o ISO para o CD mkisofs -r -o /tmp/iso_backup /tmp/$PASTA/* #gravacao do cd dvdrecord -v dev=ATA:$DVD speed=4 -eject -data /tmp/iso_backup #remocao dos arquivos temporarios rm -fR /tmp/$PASTA rm -f /tmp/iso_backup rm -f /tmp/arquivo.txt Backup_Ok; } ################################## # TAREFAS # ################################## ################# Opcoes de trabalho iniciais Menu_Inicial() { Xdialog --title "Opções de Trabalho"\ --ok-label "Continuar"\ --cancel-label "Finalizar"\ --menubox "\nEscolha uma opção de trabalho \n para administração de grupos e usuários do Samba:\n\n" 15 56 6 \ "CD-RW" "Backup de arquivos locais em CD"\ "DVD-RW" "Backup de arquivos locais em DVD" 2> /tmp/menu.tmp.$$ opcao=$? escolha=`cat /tmp/menu.tmp.$$` rm -f /tmp/menu.tmp.$$ case $opcao in 0) case $escolha in CD-RW) Insira_Cd;; DVD-RW) Insira-Dvd;; esac;; 1) Mensagem_Finalizar;; 255) Mensagem_Finalizar;; esac } Mensagem_Inicial;
Enviar via FTP todos as pastas / sub-pastas e arquivos, a partir do diretorio de origem inclusive
Identificar,matar e Iniciar novo Processo
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - EXCLUINDO USUÁRIO COM USO=0
Criar usuários com ponto (nome.usuario) no Slackware
Nenhum comentário foi encontrado.
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
SysAdmin ou DevOps: Qual curso inicial pra essa área? (0)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (3)
[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