Backup
Publicado por Edson Ramiro 29/08/2004
[ Hits: 7.098 ]
Ola amigos.
Aqui vai um Shell-Script de backup :)
Ele tem uma opcao para fazer recursivamente o backup ou fazer apenas fazer backup dos arquivos. Ele faz apartir do diretorio que voce estiver, tem logs e imformacoes de quem realizou o backup.
#!/bin/bash
# Incrementacoes sao bem vindas
# ATENCAO --> Nao estao incluidos os arquivos ocultos no backup
# Coloquem uma funcao para os arquivos ocultos e mandem pra mim
# "lucasdebian@ibest.com.br"
BACKUP_RECURSIVE()
{
for i in *
do
if [ -e backup/$i ]; then
rm -rf backup/$i 2>/dev/null
cp -Rf $i backup/$i 2>/dev/null &&
echo "Substitui (backup/$i) por ($i)"
echo "Substitui (backup/$i) por ($i)" >> backup/BACKUP.LOG
else
cp -Rf $i backup/$i 2>/dev/null &&
echo "Fiz backup de ($i)."
echo "Fiz backup de ($i)." >> backup/BACKUP.LOG
fi
done
LOG
echo ""
echo " --CONCLUIDO BACKUP RECURSIVO"
echo " --CONCLUIDO BACKUP RECURSIVO" >> backup/BACKUP.LOG
/bin/date >> backup/BACKUP.LOG
echo "============================================" >> backup/BACKUP.LOG
echo "" >> backup/BACKUP.LOG
echo ""
}
BACKUP_FILES()
{
for i in *
do
if [ -e backup/$i ]; then
rm -f backup/$i 2>/dev/null
cp $i backup/$i 2>/dev/null &&
echo "Substitui (backup/$i) por ($i)"
echo "Substitui (backup/$i) por ($i)" >> backup/BACKUP.LOG
else
cp -f $i backup/$i.bkp 2>/dev/null &&
echo "Fiz backup de ($i)."
echo "Fiz backup de ($i)." >> backup/BACKUP.LOG
fi
done
LOG
echo ""
echo " --CONCLUIDO BACKUP"
echo " --CONCLUIDO BACKUP" >> backup/BACKUP.LOG
/bin/date >> backup/BACKUP.LOG
echo "============================================" >> backup/BACKUP.LOG
echo "" >> backup/BACKUP.LOG
echo ""
}
CHECK(){
if [ -d backup/ ]; then
RORF
else
mkdir backup &&
echo "--Criado o diretorio \"backup\" " > backup/BACKUP.LOG
RORF
fi
}
RORF()
{
echo "Fazer Backup dos diretorios tambem?(s/n)"
read h
case $h in
s)BACKUP_RECURSIVE;;
n)BACKUP_FILES;;
help)HELP;;
q)exit;;
*)echo ""; echo "--Para ajuda use \"help\" "; echo ""; CHECK;;
esac
}
# Eu fiz um "--help" para mim mesmo :)
HELP()
{
clear
less /usr/share/doc/backup.sh/manual.txt
CHECK
}
LOG()
{
echo "" >> backup/STATUS.LOG
/bin/date >> backup/STATUS.LOG
echo "" >> backup/STATUS.LOG
echo "Backup feito como usuario: $USER" >> backup/STATUS.LOG
echo "Backup feito pelo usuario: $LOGNAME" >> backup/STATUS.LOG
echo "============================================" >> backup/STATUS.LOG
}
CHECK
Efetua uma busca na rede por IPs(hosts) ativos
Backup em HD Externa com Rsync
Monitorando processos, CPU e memória
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
Opções secretas em tema do Cinnamon
Como mapear unidade de rede no Linux
Como quebrar senha usando john the ripper
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (1)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (1)









