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: luis@jupiter:~/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: luis@jupiter:~/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
Backup de partiçoes remotas
Criei este script simples a fim de me auxiliar em um backup com montagem automática de partições remotas, espero que possa auxiliar alguém assim como me auxiliou. Ele depende de se ter instalado no sistema o sshfs para funcionar e acesso ao servidor por certificado para não utilização de senhas. Para rodá-lo remotamente usei o comando: nohup ./Backup.sh & Assim fui verificando logs sem ter de abrir uma nova janela do terminal.
Por: Jaci Aparecido Salomao
rsyncdev-pt_BR_v6.sh - Um baixador automático de ISOs de Sabayon Linux, versão 6
Este shell script baixa automaticamente as mais recentes "Daily Builds" do Sabayon Linux a partir do servidor rsync brasileiro. Ele é baseado no script do holandês Joost Ruis e divulgado por Patrick Tuithof, o qual traduzi e introduzi pequenas modificações, para agora, baixar as novas ISOs do Sabayon LxQT. Agora ele também atualiza a ISO (caso ela já esteja baixada na pasta). Esta é a versão 6, derivada ampliada da versão obsoleta 4 (a qual substitui): https://www.vivaolinux.com.br/contribuir/scripts/verScript.php?codigo=6314 Você pode baixar o script original, em inglês, no endereço do Facebook: https://www.facebook.com/download/901835993246025/rsyncdev Observações: editado com Geany e testado em Sabayon Linux, versão 16.08, atualizado até a Versão 16.09, Rolling Release. 2016. Pode ser modificado para baixar outras distros, desde que elas estejam hospedadas em servidores rsync. Requer que o pacote rsync esteja previamente instalado.
Por: Alberto Federman Neto.
Backup dinâmico de banco de dados MySQL
Olá, Esse é um script para fazer backup dos banco de dados do MySQL de forma dinâmica. Mas o que isso quer dizer? Quer dizer que não é especificado a lista de banco de dados que deve ser feito backup, é pego uma lista de todos os bancos dinamicamente, menos os padrões, e feito um backup de forma individual. Enjoy ;)
Por: Alessandro Librelato
Backup RSYNC
Esse script faz o backup de pastas selecionadas de um servidor Linux e sincroniza com outro servidor Linux utilizando RSYNC. Ao concluir a sincronização ele faz o envio de email colocando em anexo o arquivo do log do backup e se ele foi bem ou mal sucedido. Obs.: para funcionar corretamente deve-se editar o script conforme seu ambiente.
Por: Cristian
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
E a guerra contra bots continua
Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário
Conheça o firewall OpenGFW, uma implementação do (Great Firewall of China).
Instalando o FreeOffice no LMDE 6
Anki: Remover Tags de Estilo HTML de Todas as Cartas
Colocando uma opção de redimensionamento de imagem no menu de contexto do KDE
Erro ao converter string para inteiro (4)
Não consigo acessar os modos de desempenho no mint 2.3 (6)
Criar uma base de reconhecimento de HW no VOL (8)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba