Front-end para backup em CDRW e DVDRW
Publicado por José Lima 30/09/2005
[ Hits: 6.441 ]
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;
Inserção de máquinas no banco de dados para controle interno
LeTRA - cálculo de valores do arquivo de venda do PDV
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
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Como fazer a instalação do Samba
Como fazer a conversão binária e aplicar as restrições no Linux
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (19)
Formas seguras de instalar Debian Sid (13)
Malware encontrado em extensões do Firefox. (0)
Fiz uma pergunta no fórum mas não consigo localizar [RESOLVIDO] (21)









