backup Firebird em DVD
Publicado por Enio Herenio de Alcantara 24/10/2005
[ Hits: 8.218 ]
Este script, mostra como fazer backup utilizando o Firebird e posteriormente gravando em DVD, verificando o arquivo e desligamente automaticamente seu servidor. Aproveitem e analisem o codigo.
#!/bin/sh
clear
#########################################
#Script de Backup #
# #
#Enio Alcantara #
#msn: enio_ha@msn.com #
#########################################
#### Parametros de Configuracao #######
data=$(date +%d-%m-%Y)
# Unidade de Gravacao
device="/dev/hdc"
# Localizacao do Log
log="/dados/backup/log.txt"
# Localizacao do Backup
arq_comp="/var/basefb/emsys3/backup/$data/emsys3.tar.gz"
# Define o tamanho maximo do Dvd
arq_max="4700000"
# variavel Nula para Erro
erro=0
#######################################
echo "======================="
echo "= Iniciando o Backup..="
echo "======================="
# Entrando no diretorio do Backup
cd /var/basefb/emsys3/backup
echo "Criando a pasta com respectiva data corrente"
mkdir $data
# Entrando no diretorio do banco para compactacao
cd /var/basefb/emsys3
# Criando data para o Log
echo $data
# Entrando no diretorio do banco para compactacao
#cd /dados
# Criando data para o Log
#echo $data
#
# Backup da base atravez do gback do firebird
#
/opt/firebird/bin/gbak -b -v base.fdb backup/$data/base.fbk -user sysdba -password masterkey
#
echo " Iniciando Compactacao do banco de dados"
cd /var/basefb/emsys3/backup/$data
tar -cvzf emsys3.tar.gz /var/basefb/emsys3/backup/$data/emsys3.fbk
# Transferindo o arquivo para a pasta backup/pasta com a data
#cp -p emsys.tar.gz /dados/backup/$data
# Removendo arquivo gerado na pasta /opt/dados
#rm -rf emsys.tar.gz
# Verifica o tamanho do arquivo compactado
# Define tamanho real do arquivo compactado gerado
arq_size=$(ls -s $arq_comp | awk '{print $1}' | sed 's/.$//')
#arq_size=$(du -s $arq_comp | awk '{print $1}')
echo Tamanho do Backup: $arq_size KB
echo Tamanho do DVD: $arq_max KB
# Condicao caso o arquivo seja maior do que o disco
if [ $arq_size -gt $arq_max ]
then
echo $data - "Atencao - erro!! Backup a ser gravado: maior do que a capacidade de" $arq_max KB
exit 1
else
echo $data "Tamanho do Backup, compativel com o tamanho do DVD." $arq_size
echo "Compactacao Terminada com Sucesso! - " $data
65,9 54%
fi
###############################################################################
#gera arquivos de 500 MB pois o dvd nao aceita arquivos muito grandes
cd /var/basefb/emsys3/backup/$data
split -b 500m $arq_comp
##############################################################################
# Grava o DVD
growisofs -M $device -iso-level 2 -v -R -speed=2 /var/basefb/emsys3/backup/$data/emsys3.tar.gz || erro=1
if [ $erro -gt 0 ]
then
echo " Atencao - erro na gravacao do backup"
exit 1
else
echo " Gravacao do DVD com o arquivo de Backup: OK!"
echo "Servidor estara sendo desligando em 2 segundos..."
sleep 2
/sbin/shutdown -h now
fi
Browser - use rofi para acessar páginas na web
Programs -- Script Simples e limitado pra instalação de arquivos
Logs do daemontools - tradução de timestamp
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
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Como programar um sistema de controle para distribuições linux em c? (0)
Compartilhar ZEBRA ZD220 na rede (2)
Como programar um software que seja utilizado para coleta de dados em ... (1)









