Menu de Backup

1. Menu de Backup

Diego Theis
dtheis

(usa openSUSE)

Enviado em 30/10/2013 - 20:58h

Olá pessoal!

Seguinte, estou precisando de uma ajuda para criar um menu de backup, ele deve conter os seguintes termos:

Criar um script que solicite as informações:

"
origem do backup:

destino backup:

compactar ?
[]sim

[] zip
[] 7zip
[] bz
[] bz2

[]não

continua o script sem compactar


backup de subpasta?

[]sim
[]não

rotinas:

[] diária: todo dia

[] semanal:
[] segunda
[] terça
[] sexta

[] mensal: dia do mês

[] horário: hora, min

Criar um script de backup com as especificações e inserir o script acima (crontab.)"


  


2. Re: Menu de Backup

Thiago Henrique F. Margonar
thiagomargonar

(usa CentOS)

Enviado em 30/10/2013 - 22:36h

Cara, sinceramente ... nem testei esse script... fiz meio que de cabeça aqui...
mas ve ai se ajuda... amanha de manha quando eu chegar na firma eu testo ele rsrs... abraços.




#!/bin/bash
echo "fazer backup? y/n"
read bkp

if [bkp==y] then
bkp="tar --preserve -cvzf"

echo "qual pasta voce quer fazer backup?"
read caminho

echo "deseja agendar? y/n"
read agendamento

if [agendamento==y] then
agendamento=crontab

echo "qual minuto? de 0 a 59?"
read minuto

echo "qual Hora? de 0 a 23"
read hora

echo "qual dia? de 1 a 31"
read dia

echo "qual mes? 0 a 12"
read mes

$agendamento $minuto $hora $dia $mes $ano $bkp $caminho
else
$bkp $caminho
fi
bkp=exit
bkp

fi




3. Re: Menu de Backup

Diego Theis
dtheis

(usa openSUSE)

Enviado em 31/10/2013 - 01:08h

Obrigado pela ajuda galera, mas esse script ele tem que gerar outro script com as definições que eu criei no 1º script. Esse script, ele irá coletar as informações necessárias para formar outro script com as definições que eu coloquei e efetuar o backup.


4. Re: Menu de Backup

Diego Theis
dtheis

(usa openSUSE)

Enviado em 04/12/2013 - 11:21h

Pessoal, o script está mais ou menos assim, alguem pode me ajudar a dar uma lapidada nele? Pois tem erros que nao consigo resolver pela falta de conhecimento, além disso preciso da opção de backup de subpastas. Obrigadoo!

#!/bin/bash

######### Variaveis do sistema #############
DATE=`date +%d%m%Y`
##########################################
clear
echo "Insira o seu nome para comecar o backup"
read NOME
clear
echo ""
echo Bem vindo ao servico de Backup, "$NOME".
echo ""

#Origem do backup
echo "Diga qual diretorio voce quer fazer backup, insira o caminho completo ex: /opt/cedup"
read origem_backup
echo ""
clear
#Destino do backup
echo "Insira o diretorio completo no qual sera salvo o backup ex: /backup/cedup"
read destino_backup
if [ -d "$destino_backup" ] ; then
echo "Ok, Destino salvo "

else
mkdir -p $destino_backup
echo "O Diretorio "$destino_backup" nao existia no entanto foi criado."
echo ""
fi
sleep 1
clear
#Nome do backup
echo "Insira o nome para o backup ex: bkp_cedup"
read nome_backup
echo ""

#Funcao compactar
clear
echo -n "
"Deseja compactar?"

1) Sim
2) Nao

"Opcao: "
"
read r1

if [ $r1 == "1" ]; then

clear

echo -n "
"Deseja compactar em qual formato?"

1) Zip
2) bz
3) bz2

"Opcao: "
"
read r2
fi
clear

####Cria o script do backup####
cd /scripts
touch $nome_backup
chmod 777 $nome_backup
echo "#!/bin/bash" > $nome_backup

if [ $r1 == "1" ]; then
if [ $r2 == "1" ]; then

echo "zip -r $nome_backup$DATE $origem_backup" >> $nome_backup
echo "mv $nome_backup$DATE.zip $destino_backup" >> $nome_backup


elif [ $r2 == "2" ]; then

echo "tar czvf $nome_backup$DATE.tar.gz $origem_backup" >> $nome_backup
echo "mv $nome_backup$DATE.tar.gz $destino_backup" >> $nome_backup

elif [ $r2 == "3" ]; then

echo "tar cjvf $nome_backup$DATE.tar.bz2 $origem_backup" >> $nome_backup
echo "mv $nome_backup$DATE.tar.bz2 $destino_backup" >> $nome_backup

else

echo "Opcao invalida"
exit 1
fi
fi
if [ $r1 == "2" ]; then


cd /scripts
touch $nome_backup
chmod 777 $nome_backup
echo "#!/bin/bash" > $nome_backup
echo "cp -R $origem_backup $destino_backup" >> $nome_backup

fi

##Agendar no crontab##

echo "Agendar no crontab"

echo ""

echo "Qual minuto? de 0 a 59?"
read minuto

echo "Qual hora? de 0 a 23"
read hora

echo "Qual dia? de 1 a 31"
read dia

echo "Qual mes? 1 a 12"
read mes

echo "Qual dia da semana? de 0 a 7"
read dia_semana

##Adicionando os parametros no script##

echo "$minuto $hora $dia $mes $dia_semana /scripts/$nome_backup" >> /var/spool/cron/root






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts