#!/bin/bash
#
# Script para realizar backup e restaurar
# utilizando Dialog
# Versao 0.2
# Daniel Lara Souza
DIA=$( date +%d )
MES=$( date +%b )
ANO=$( date +%Y )
FILE="${DIA}${MES}${ANO}"
while : ; do
reposta=$(
dialog --stdout \
--title ' BACKUP ' \
--menu 'Escolha um opcao: ' \
0 0 0 \
1 'Status Fita Dat' \
2 'Efetua Backup na Fita' \
3 'Resturacao total da Fita ' \
4 'Ejetar Fita Dat' \
5 'Verifica o Tamanho da Pasta de Restauracao' \
0 'Sair' \
)
[ $? -ne 0 ] && break
case "$reposta" in
1) dialog --yesno 'Deseja Continuar ? [s/n]' 0 0
if [ $? = 0 ]; then
mt -f /dev/st0 status > /root/fita.txt
STATUS=$( grep -qs 'ONLINE' /root/fita.txt && echo 'ONLINE' )
if [ "$STATUS" = ONLINE ]
then
echo ONLINE > /root/statusfita.txt
else
echo OFFLINE > /root/statusfita.txt
fi
dialog --tailbox /root/statusfita.txt 8 75
else
dialog --msgbox 'Processo Cancelado Pelo Usuario !' 5 45
fi
;;
2) dialog --msgbox 'Efetuando o Backup' 5 45
sleep 2
tar -cvf /dev/st0 /dados /etc /var
;;
3) dialog --yesno 'Deseja Continuar ? [s/n]' 0 0
if [ $? = 0 ]; then
dialog --msgbox 'Limpando pasta do Backup no Diretorio /Restore ' 5 45
sleep 2
# Cria o diretorio /Restore
rm -rf /Restore/*
dialog --msgbox 'Criando Pasta com a Data de HOJE no Diretorio /Restore' 5 45
mkdir /Restore/$FILE
dialog --msgbox 'Extraindo o Backup ' 5 45
sleep 2
tar -xvf /dev/st0 -C /Restore/$FILE/
else
dialog --msgbox 'Processo Cancelado Pelo Usuario !' 5 45
fi
;;
4) dialog --yesno 'Deseja Ejetar a Fita DAT ? [S/N]' 0 0
if [ $? = 0 ]; then
dialog --msgbox 'Ejetando a Fita Dat' 5 45
sleep 1
mt -f /dev/st0 eject
else
dialog --msgbox 'Processo Cancelado Pelo Usuario !' 5 45
fi
;;
5) du -hs /Restore > /root/espacodisco.txt
df -h >> /root/espacodisco.txt
dialog --tailbox /root/espacodisco.txt 10 75
;;
0) break ;;
esac
done
Boa tarde Danniel...
ResponderExcluirShow o seu script para backup em fita dat, estou rodando ele aqui em minha empresa.
Parabéns!
Porém preciso que ele gere um arquivo de log contendo hora a hora que iniciou o backup e a hora que terminou.
Seria possível?
Mais uma vez parabéns e se a resposta for sim. Por favor envie para meu e-mail: lks1989@hotmail.com.
Abraço.