Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env bash
- ###############################################
- # Script para backups de equipamentos Ubiquiti
- # Criado por Sergio Lenaz
- ###############################################
- # Diretórios de origem e destino
- origem="/home/listaips.txt"
- destino="/home/paineis/$(date +%d-%m-%Y)"
- log="/home/logs/ubiquiti.log"
- # Cria o diretório de destino
- mkdir -p "$destino"
- # Registra a hora de início no log
- INICIO=$(date +%d-%m-%Y_%H:%M:%S)
- echo "#####*************** Backup iniciado em $INICIO ***************#####" >> "$log"
- # Loop para fazer backup com base na lista de IPs
- while IFS=',' read -r nome ip usuario senha; do
- # Tenta fazer o backup e registra o resultado no log
- if sshpass -p "$senha" ssh "$usuario@$ip" -o StrictHostKeyChecking=no "cat /tmp/system.cfg" > "$destino/$nome-$ip-backup-$(date +%d-%m-%Y).cfg" 2>/dev/null; then
- FIM=$(date +%d-%m-%Y_%H:%M:%S)
- echo "O backup de $nome-$ip foi efetuado com sucesso em $FIM" >> "$log"
- else
- echo "Ocorreu um erro ao realizar o backup de $nome-$ip em $(date +%d-%m-%Y_%H:%M:%S)" >> "$log"
- fi
- done < "$origem"
- # Deleta os arquivos que estão com tamanho 0k (backups que geraram erros)
- find "$destino" -type f -size 0 -name '*.cfg' -exec rm {} \;
- # Deleta os arquivos criados há mais de 7 dias
- find "$destino" -type f -ctime +7 -name '*.cfg' -exec rm {} \;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement