Backups automáticos de rádios Intelbras APC5

Olá galera! Pouco tempo atrás prestei um serviço a uma provedora de internet que tinha muitos rádios Intelbras APC5 e tive que criar uma solução para realizar os backups em tempo real e enviasse por e-mail e FTP. Os recém lançados rádio Intelbras aqui no Brasil utilizam uma ferramenta de gerenciamento que fornece backup integrado para todos os produtos chamada WNMS, a ferramenta também é utilizada lá fora por quem usa Deliberant ou LigoWave. Porém se você é uma pessoa como eu, que não gosta de instalar vários gerenciadores para gerenciar cada marca de equipamento e gosta de ver o que está acontecendo, tenho uma solução bem interessante e simples, que aqui mesmo tratei de como utilizá-la em produtos MikrotiK e Ubiquiti. Para isso apenas necessitamos de uma máquina Linux para realizar a tarefa. Primeiro é necessário instalar o SSHPASS, para que não seja necessário inserir a senha manual a cada rádio que iremos realizar o backup: $ sudo apt-get install sshpass Pronto, é só isso, basta rodar o script e acessar seu email ou servidor FTP, agende o script em seu crontab e seja feliz.

Por: Joabe G.Q. Kachorroski


Script de backup - rar

Útil para backup em servidores e desktop, ele compacta os arquivos em rar. Para quem precisa enviar os arquivos para usuários de Windows esse script vai ajudar. Pode ser usado nos gerenciadores de arquivos como caja, nautilus e thunar. Instalar os pacotes rar e zenity no sistema. Para mais informações sobre o arquivo final: rar l nome_do_arquivo.rar

Por: Perfil removido


Script de backup MySQL [melhorado]

Na postagem anterior compartilhei um script que utilizada para backup de uma das minha base de dados, porém resolvi dar uma melhorada nele, pois tive alguns problemas com o restaure de backup gerados por aquele script. Tentei deixar o script mais dinâmico e com melhores combinações de parâmetros. Basicamente o script gera um arquivo .sql com combinações de INSERTs para que tanto o backup quanto o restaure fique mais rápido e o backup é feito com consistência para que não haja problemas posteriormente. Obs.: para que o script funcione na parte da compactação bz2 é necessário instalar o pacote bzip2.

Por: Jeferson R. Costa


Renomear múltiplos arquivos

Quem usa o gnome-screenshot sabe o problema que é copiar os arquivos png pela rede. Você tem várias pastas com vários arquivos nomeados com espaços e caracteres. Ex.: Captura de tela de 2017-01-09 15:01:12.png , Captura de tela de 2017-01-09 16:00:50.png Precisando retirar o espaço e os caracteres dos arquivos (neste caso os dois pontos), usem este script. Antes do script: Captura de tela de 2017-01-09 15:01:12.png Captura de tela de 2017-01-09 16:00:50.png Captura de tela de 2017-01-09 16:29:41.png Captura de tela de 2017-01-09 16:44:46.png Captura de tela de 2017-01-10 10:47:52.png Depois do script: Captura_de_tela_de_2017_01_09_15_01_12.png Captura_de_tela_de_2017_01_09_16_00_50.png Captura_de_tela_de_2017_01_09_16_29_41.png Captura_de_tela_de_2017_01_09_16_44_46.png Captura_de_tela_de_2017_01_10_10_47_52.png

Por: Perfil removido


Backup de bases MySQL

Script criado para efetuar dump de todas as bases MySQL. Utiliza a aplicação sendEmail ( http://caspian.dotconf.net/menu/Software/SendEmail/ ) para envio do log de execução. Para instalação no Debian, executar: # apt-get update && apt-get install sendemail Necessário criar um usuário para efetuar o dump das bases com as permissões corretas, descritas no próprio script. Cria automaticamente a estrutura de backup dentro de /opt, sendo: - /opt/backup/mysql o diretório de backup das bases - /opt/backup/log o log de backup Testado somente no Debian.

Por: Jonas Oliani


Ferramenta de backup do HD para dispositivos externos

Este é um script simples feito em bash que utiliza as ferramentas zenity e rsync (que já vem em muitas distribuições) e foi feito para backup de dados pessoais (fotos, músicas, documentos, arquivos, etc) de um computador doméstico para um dispositivo externo (HD externo, pendrive, cartão de memória, etc). 1) O que o script não faz ou quando não é recomendado: 1.1) Execução de forma agendada, pois é interativo; 1.2) Copia para volumes de rede e/ou criptografados. Apesar do rsync permitir estes recursos, não fiz este teste; 1.3) Sincronização dos 2 lados. O rsync também permite isso, mas não é o caso desta ferramenta (pelo menos nesta versão); 1.4) Backup de arquivos de programas e/ou componentes sistema operacional. Mexer nestes arquivos com os programas em execução pode gerar resultados indesejáveis. Para isso utilize ferramentas como clonezilla e faça um backup do teu sistema; RESUMINDO: script recomendado apenas para backup de documentos pessoais sentido computador doméstico (PC, notebook, etc) para dispositivos externos plugados. 2) Requisitos 2.1) shell: bash ou compatível 2.2) ferramentas: rsync e zenity (presentes nativamente no ubuntu) 3) preparação 3.1) Primeiro definir 2 diretórios: 3.1.1) diretório onde o script irá rodar (Ex: $HOME/scripts) 3.1.2) diretório onde ficarão os links do que será backupeado (Ex: $HOME/backups/rsync) 3.2) No diretório dos links de backup (item 3.1.2), criar os links para as pastas e arquivos que você deseja fazer backup: No meu caso, estou criando links simbólicos, com este comando: ln -s <diretorio_origem> link Se os locais que você quiser copiar estiver em um hd diferente de onde roda a aplicação, aí você deve usar hardlinks, dúvidas? consulta o bom e velho man ln! Um exemplo de como ficou meus links de backup: [email protected]:~/backups/rsync$ ll drwxrwxr-x 2 luis luis 4096 Dez 21 13:03 ./ drwxrwxr-x 5 luis luis 4096 Nov 12 09:19 ../ lrwxrwxrwx 1 luis luis 30 Jul 15 17:54 arquivos -> /home/data/restricted/arquivos/ lrwxrwxrwx 1 luis luis 17 Jul 15 20:09 clouds -> /home/luis/clouds/ lrwxrwxrwx 1 luis luis 29 Jul 15 17:54 imagens -> /home/data/restricted/imagens/ lrwxrwxrwx 1 luis luis 28 Jul 15 17:55 musica -> /home/data/restricted/musica/ -rw-rw-r-- 1 luis luis 90 Jul 3 16:38 readme.txt lrwxrwxrwx 1 luis luis 28 Jul 15 17:55 videos -> /home/data/restricted/videos/ E este arquivo readme.txt, tem algum problema com ele? Nenhum, o script só leva em conta os links deste diretório. 4) Configurando o programa: aqui a gente vai editar algumas linhas do programa para adaptar ao seu ambiente. 4.1) Definição de alguns diretórios: preenche estas 3 variáveis com os diretórios em 3.1 e o diretório onde é montado suas mídias externas (no meu caso em /media/luis) # # definição de paths: # # $PATH_APP : onde roda o aplicativo # $PATH_OR_BACKUP : diretório com os links para volumes a serem backupeados # $PATH_MIDIAS : local onde são montadas as mídias de backup PATH_APP=/home/$NAME_USER/scripts PATH_OR_BACKUP=/home/$NAME_USER/backups/rsync PATH_MIDIAS=/media/$NAME_USER 4.2) Sintaxe do comando rsync que você vai utilizar, neste meu caso ele copia (ou atualiza) os diretórios selecionados no dispositivo externo, deixando-os iguais e só gera alguma mensagem de andamento do backup se houver algum erro. # definição do comando rsync RSCMD="/usr/bin/rsync -auq --delete" 4.3) Seleção do que copiar: esta parte é opcional. Antes de iniciar a cópia, é gerada uma caixa de díálogo perguntando quais itens você deseja copiar. Dependendo do tamanho de cada diretório e de teus dispositivos, você pode deixar alguns itens previamente selecionados. Para configurar isso basta editar este trecho do código: # itens backpeados por default (opcional) lista_bkp_def="imagens musica arquivos" # configuração de lista para dispositivo específico if [ "${DISP}" = "hde_lua" ];then lista_bkp_def="imagens musica arquivos" elif [ "${DISP}" = "hde_io" ];then lista_bkp_def="imagens musica arquivos" elif [ "${DISP}" = "hde_europa" ];then lista_bkp_def="imagens musica arquivos videos" elif [ "${DISP}" = "hde_titan" ];then lista_bkp_def="imagens musica arquivos videos" fi Na variável $lista_bkp_def eu defino quais itens vão ficar selecionados para backup. Esta lista pode mudar de acordo com os nomes dos rótulos dos dispositivos, que estão nos if's do código. obs: pelo gerenciador de arquivos (nautilus) é possível configurar os rótulos dos dispositivos. 5) Execução Terminado os preparativos, agora vamos rodar. Plugue um disposivo externo e faça um teste. Não esquecer de setar a permissão de execução: chmod u+x bkp2hde.sh obs: se durante a execução você receber esta mensagem "Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.", não tem problema, pode continuar normalmente. É só um aviso do zenity. 5.1) Iniciando: ./bkp2hde.sh 5.2) É aberta uma caixa de diálogo (zenity) com os nomes dos dispositivos, se não tiver o dispositivo que você plugou, veja se você configurou a variável $PATH_MIDIAS corretamente (4.1). Após você escolher o dispositivo vem esta mensagem: [email protected]:~/scripts$ ./bkp2hde.sh Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. Dispositivo "hde_io" selecionado. Identificado o dispositivo:hde_io... Tecle <ctrl>+c para sair ou enter para para continuar Pressione qualquer tecla. 5.3) É aberta uma caixa de diálogo (zenity) para seleção dos diretórios que serão copiados. Se eles não aparecerem, veja se você configurou a variável $PATH_OR_BACKUP corretamente (4.1). No meu caso, escolhi as pastas imagens e musicas. Vem então estas linhas com os teus parâmetros de backup. Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. 21/12/2016 14:23:08;----------------- 21/12/2016 14:23:08;Configurações de backup Dispositivo : hde_io itens de backup : imagens musica diret. destino : /media/luis/hde_io/backup_jupiter_luis comando : /usr/bin/rsync -auq --delete Tecle <ctrl>+c para sair ou enter para para iniciar Tudo ok? Então pressione <enter> e é só aguardar 5.4) Andamento do backup: aparecem linhas como estas 21/12/2016 14:26:03;Início 21/12/2016 14:26:03;------------------- 21/12/2016 14:26:03;backpeando imagens 21/12/2016 14:26:13;------------------- 21/12/2016 14:26:13;backpeando musica 21/12/2016 14:28:20;Concluido Esta última linha indica que o backup teve sucesso 5.5) No dispositivo externo aparece este diretório na raiz: ./backup_<hostame>_<user> Ex: no meu caso ficou assim ./backup_jupiter_luis Então se você rodar este script em outra máquina, vai armazenar os arquivos em diretórios diferentes. 6) Atualizações que pretendo fazer futuramente: 6.1) Ao selecionar os diretórios para backup, mostrar o espaço que eles ocupam; 6.2) Ao selecionar as mídias de backup, mostrar a ocupação e o espaço disponível; 6.3) Testar em dispositivos externos de rede; 6.4) Gerar versão não interativa, podendo passar os argumentos de backup através de comando de linha ou arquivos de configuração Então é isso, that's all folks! Espero que lhe ajudem! _/\_

Por: Luis Henrique Pessoa






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts