Enviado em 21/11/2012 - 14:13h
Pessoal, preciso fazer o backup constantemente de um servidor que esta instalado no meu XenCenter, o problema que estou enfrentando é que ele possui duas unidades de disco ai não consigo fazer o backup, estou utilizando o script abaixo:
vms="$1"
# Diretorio onde sera feito o backup. Pode ser via NFS...
dirBack=/backup
#Separador de campo para o "for". Previne erros no caso de espaç
# no nome das VMs
IFS="
"
#Inicio do for. Cada loop faz backup de uma VM.
for vm in $(echo $vms)
do
#Cria uma variavel data com o formato da data que quero pra compor
# o nome do arquivo de backup
time=$(date --date "now" +%d_%m_%y_%H:%M)
#Agora componho o nome do arquivo de backup
snapName=$vm-bk-$time
#Aqui crio um snapshot. Ele eh necessario para nãprecisar
# parar a VM. O backup eh feito com ela em producao.
ID=$(xe vm-snapshot vm="$vm" new-name-label=$snapName &&
{
logger -t "XenBackup" -s "$vm - OK Passo 1"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 1"
echo 1
})
#Na criacao do snap acima, a variavel ID recebe o UID do
# snap.No caso de erro, ela recebe "1"
#O logger joga o log joga no /var/log/messages
#Abaixo façum teste pra checar se deu erro.
if [ "$ID" == "1" ]
then
exit 1
fi
#Pra essa tarefa, uso o ID obtido no passo anterior.
xe template-param-set is-a-template=false uuid=$ID &&
{
logger -t "XenBackup" -s "$vm - OK Passo 2"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 2"
exit 2
}
#Perceba o uso das variaveis. Nao vah se perder ;)
xe vm-export vm=$snapName filename=$dirBack/$snapName
{
logger -t "XenBackup" -s "$vm - OK Passo 3"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 3"
exit 3
}
xe vm-uninstall vm=$snapName force=true
{
logger -t "XenBackup" -s "$vm - OK Passo 4"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 4"
exit 4
}
gzip $dirBack/$snapName
{
logger -t "XenBackup" -s "$vm - OK Passo 5"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 5"
exit 5
}
#Fala a verdade, voce jah ia esquecer de encerrar o "for"...
done
exit 0
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta