Você está na página 1de 46

Jerônimo Medina Madruga

Backup com ferramentas


livres

Tchelinux 2010 - Bagé


Sumário
● Apresentação
● Conceitos
● Ferramentas básicas
● Compressão
● Backup em mídias
● RAID e sistemas de arquivo
● Backup no Desktop
● Backup Online
● Clonagem de sistemas
● Sistemas avançado de backup
● Observações finais
● Referências
Apresentação
● Jerônimo Medina Madruga
● Técnico em Eletrônica pelo IFSUL
● Bacharelando em Ciência da Computação pela UFPel
● Trabalha com informática desde 2003
– Suporte a usuário
– Administração de sistemas
– Administração de redes
– Gerência de ambientes de educação a distância
● Atualmente técnico de laboratório de informática da
FURG
● Participante de listas de discussão de software livre
como Tchelinux e GUSLP desde 2007
Conceitos
● Backup
● Cópia de dados em um local diferente da origem
dos mesmos
● Objetivos:
– Recuperação de desastre
● Falha no processamento
● Corrupção da base de dados
● Eventos naturais
– Recuperação de arquivos deletados
● Usuários mal instruídos
● Invasões e ataques
Conceitos
● Fatores relevantes para implementação
● Capacidade
– Pensar no tamanho do armazenamento para o futuro
● Velocidade
– Tempo de execução não deve ser grande demais
● Compressão
– Relação entre tempo de compressão e espaço economizado
● Custo
– Solução deve estar dentro do orçamento previsto
● Portabilidade
– Capacidade de rodar nos mais diversos sistemas
Conceitos
● Backup completo
● Consiste na cópia de todos os dados que se quer
preservar
● Gera o maior volume e trafego de dados
● Mais fácil de implementar e restaurar
● Maior resistência a corrupção de dados
Conceitos
● Backup diferencial
● Compara as alterações entre os últimos backups e
copia somente os arquivos alterados
● Menor tamanho, porém maior complexidade
Conceitos
● Backup Incremental
● Compara os arquivos e copia somente os
modificados em referência a um backup base
● Meio termo entre o completo e o diferencial
Ferramentas básicas
● CP e MV
● Disponíveis em qualquer sistema unix-like
● Implementam as funcionalidades de copiar e mover
arquivos
● Possibilita backups simples
● Limitado a dispositivos montados no sistema
Ferramentas básicas
● FTP
● File transfer protocol
● Permite a cópia para servidores remotos
● Fácil de implementar
● Porém com poucos recursos de segurança
– Transferência plana, dados não são criptografados
● No Windows uma opção para uso é o Filezilla
Ferramentas básicas
● SCP
● Secure Copy
● Possibilita cópia criptografada usando ssh através
da rede
● Permite backup em dispositivos remotos
● Garante a segurança dos dados enviados
● Disponível no Windows através do WINSCP
Ferramentas básicas
● RSYNC
● Compara a origem com o destino e copia somente
blocos de arquivos que apresentaram mudanças
● Permite a execução de backups incrementais
● Pode utilizar ssh para criptografar os dados
● Pode utilizar compressão nos dados a serem
enviados
● Disponível no Windows através do CWRSYNC
Ferramentas básicas
● Algoritmo do RSYNC
Ferramentas básicas
● CRON
● Ferramenta de agendamento de tarefas
● Possibilita criar uma rotina automatizada de
execução de scripts e programas de backup
● Altamente flexível
● Pode ser replicada no Windows através do
agendador de tarefas, porem sem tantas
funcionalidades
● Pode ser utilizada no Windows através do CYGWIN
Compressão
● Consiste em reduzir o espaço ocupado pelos
arquivos no disco
● Possibilita o armazenamento de grandes volumes
de dados em capacidades menores
● Aumento o tempo de processamento para criar ou
restaurar um backup
● Pode amplificar os danos causados por corrupção
de dados
● Algumas ferramentas de compressão incluem
recursos de criptografia
Compressão
● TAR (Tape Archive)
● Pode ser utilizado para juntar vários arquivos em
um só
● Também pode ser utilizado para extrair vários
arquivos de um único
● Não é capaz de realizar a compressão, porém pode
trabalhar em conjunto com ferramentas que a
fazem
● GZIP, BZIP2, LZMA, XZ
Compressão
● UNP
● Ferramenta que pode ser utilizada para
descompressão de quase todos os formatos
● Outras ferramentas
● Ark, Arj, Rar, Unrar, Dar, Ark, P7zip, Xarchiver
● Para Windows
● 7Zip e PeaZip
Backup em mídias
● Redução dos custos de mídias atualmente
● Altos custo de armazenamento em unidades
de disco
● Gigabyte X Real
● Mídias permitem múltiplos backups e
armazenamento por longos períodos
● Backups em disco e mídia permite um certa
redundância
Backup em mídias
● Fitas DAT
● Dispositivo que permite reescrita
● Alto custo da unidade de operação
● Baixo custo das fitas
● Indicado para servidores
● Acesso Sequencial
● Utiliza o MT para rebobinar, apagar e ejetar a fita
● Utiliza o TAR para enviar ou extrair arquivos
Backup em mídias
● CD e DVD
● Uma das melhores relações Custo X Beneficio
● Baixa capacidade de armazenamento
● Baixa confiabilidade
● Indicado para backups caseiros ou backups
permanentes
● Possibilidade de reescrita caso a mídia seja RW
● MKISOFS, CDRECORD, GROWISOFS, CDRDAO,
DVD+RW-TOOLS, WODIM
Backup em mídias
● Outras opções
● Disquetes (opção ultrapassada atualmente)
● ZIP Drive
● Discos removíveis
● Memórias Flash
RAID
● Redundant Array of Inexpensive Disks
● RAID não fornece em nenhuma configuração o backup dos
dados em questão
● RAID garante redundância em algumas configurações
● RAID 0
– Concatenação ou striping, aumenta velocidade e/ou tamanho
● RAID 1
– Redundância, aumenta confiabilidade do sistema
● Aconselhável:
● RAID 1, RAID 0+1, RAID 1+0, RAID 100
● Evitar:
● RAID 2, RAID 3, RAID 4, RAID 5, RAID 6
RAID
RAID
RAID
● RAID via Sistema Operacional
● Melhor opção
– RAIDTOOLS ou MDADM no linux
– Também pode ser implementado pelo LVM
● RAID via software (alto índice de uso do
processador)
● Baixo desempenho
● Boa confiabilidade
● Fácil manutenção
RAID
● RAID via Hardware
● Implementados através de controladoras de disco e BIOS
● Alto desempenho
● Boa Confiabilidade
● Suporte em vários sistemas
● Manutenção complicada
● Fake RAID
– Controladoras de baixo custo
– Tem desempenho igual ao de RAID via S.O., porém com a
manutenção complicada como RAID via Software
– Altamente não aconselhável
Sistemas de arquivo
● Alguns sistemas de arquivo permitem o uso de
cópias dos dados (snapshots) para realizar
backups
● NILFS2
● BRTFS
● ZFS (disponível no Solaris e FreeBSD)

● LVM Snapshot
● Permite o uso de snapshots com sistemas de arquivo
que não tem esse recurso
Backup no desktop
● Foco na funcionalidade e simplicidade
● Rdiff-backup
– Criação de cópia usando as bibliotecas do rsync
– Permite backup incremental e temporal
● LuckyBackup
– Possui interface gráfica
– Agendamento de backups
– Uso do rsync para realizar os backups
Backup no desktop
● Flyback
● Implementação de Time Machine da Apple no linux
● Time Vault
● Criação de snapshots de diretórios
● Sbackup
● Altamente personalizável
● Possibilita incrementais e completos
● Sugere rotinas de backup padrão
Backup Online
● Expansão de serviços baseados em Cloud
Computing
● Foco em sincronização de raquivos entre
diversos dispositivos
● Possibilidade de realizar backup off-site
● Diversos serviços com suporte a linux
Backup Online
● Problemas
● Privacidade: Verificar o contrato do serviço sobre
acesso a dados
– Sugestão: Enviar somente arquivos criptografados
● Capacidade: Verificar se o serviço oferecido oferece
velocidade e capacidade necessárias
● Servidores grátis:
● DropBox
● Ubuntu One
● SpiderOak
Clonagem

● Possibilidade de copiar o conteúdo completo


de uma máquina
● Bare Metal Recovery
– Recuperação dos serviços em uma máquina diferente
– Rápida restauração
– Hardwares diferentes
● Instalações padronizadas
– Padronização de programas e configurações
Clonagem

● Ferramentas
● Clonezilla
– Criação e restauração de partições e disco
– Possibilidade de restauração via Multicast
● Ping (Ping is not ghost)
– Inclui aplicativos para restaurar e reparar Windows
● LRS (Linbox Rescue Server)
– Centralização de imagens
– Gerenciamento de inventário
● FOG (Free, Open-source Ghost)
– Interface de administração WEB
Sistemas avançados de backup
● Grande volume de dados
● Grande número de máquinas
● Necessidade de rotinas de backup complexas
● Uso de diversos tipos de mídia
● Centralização da estratégia de backup
● Servidores de backup
Sistemas avançados de backup
● Amanda
● Rápida implementação
● Ajuste automatizado do tipo de backup
● Boa documentação
● Possibilita backup simultâneo em dispositivos
diferentes
● Uso de formatos abertos (Dump e Tar) possibilita
recuperação simples
Sistemas avançados de backup
Sistemas avançados de backup
● Bacula
● Arquitetura robusta e complexa
● Servidores de armazenamento distribuídos
● Rotina de backup estática
● Formato de backup especifico do programa
● Catalogo de backup
● Backups em paralelo
Sistemas avançados de backup
Observações finais
● Bancos de dados
● Realizar o dump da base de dados para garantir a
integridade da mesma
● MYSQLDUMP
● PGSQLDUMP
● Plano de contingência
● Não basta fazer o backup, tem que testar (frequentemente)
● Verificação da integridade dos dados
● Calcular tempo de recuperação dos sistemas
Observações finais
● Virtualização
● Possibilita rodar diversos SO's na mesma máquina
● Facilita o backup
– Uso de snapshots completos da máquina virtual
– Cópia dos discos virtuais
– Abstração do hardware
● Desempenho pode ser afetado
● Principais opções:
– ZEN
– KVM
– VirtualBox
Observações finais
● Recuperação de dados
● Última opção em um plano de recuperação
● Possibilitar recuperação de dados apagados ou
corrompidos
● Opções livres:
– PhotoRec
– TestDisk
– Foremost
● Problemas físicos de armazenamento devem ser
levados a empresas especializadas
Observações finais
● Sistemas de controle de versão
● Sistemas de backup visando repositório de código-
fonte
● Recuperação de conteúdo a partir de datas,
modificações e versões
● Suporte a alterações simultâneas e ramificações
– CVS
– Subversion
– Mercurial
– GIT
Referências
● http://en.wikipedia.org/wiki/Backup
● http://unixhelp.ed.ac.uk/CGI/man-cgi?cp
● http://unixhelp.ed.ac.uk/CGI/man-cgi?mv
● http://linux.die.net/man/1/scp
● http://linux.die.net/man/1/rsync
● http://en.wikipedia.org/wiki/File_Transfer_Protocol
● http://linux.die.net/man/8/cron
● http://www.devin.com.br/compactacao-e-descompactacao/
● http://www.gnu.org/software/tar/manual/tar.html
● http://www.cyberciti.biz/faq/linux-tape-backup-with-mt-and-tar-command-howto/
● http://luckybackup.sourceforge.net/features.html
● http://code.google.com/p/flyback/
● http://sourceforge.net/projects/sbackup/
Referências
● http://linux-raid.osdl.org/index.php/Linux_Raid
● http://tldp.org/HOWTO/Software-RAID-HOWTO.html
● http://wiki.freebsd.org/ZFS
● http://www.sun.com/software/solaris/zfs.jsp
● http://www.nilfs.org/en/about_nilfs.html
● http://btrfs.wiki.kernel.org/
● https://www.dropbox.com/features
● https://one.ubuntu.com/features/
● https://spideroak.com/whyspideroak
● http://en.wikipedia.org/wiki/Revision_control
● http://foremost.sourceforge.net/
Referências
● http://clonezilla.org/introduction.php
● http://ping.windowsdream.com/
● http://lrs.linbox.org/wiki/WikiStartEn
● http://www.fogproject.org/
● http://wiki.zmanda.com/index.php/FAQ
● http://www.bacula.org/en/dev-manual/What_is_Bacula.html
● http://www.cgsecurity.org/wiki/PhotoRec
● http://www.cgsecurity.org/wiki/TestDisk
● http://rdiff-backup.nongnu.org/
● http://tldp.org/HOWTO/LVM-HOWTO/snapshots_backup.html
Contato
 e-mail
 jeronimo.madruga (at) gmail.com
 Twitter
● http://twitter.com/jeronimomadruga
 Blog
● http://linuxkiddinthemicrosoftworld.blogspot.com/
 Slides
● http://www.slideshare.net/jeronimomadruga/
 Site pessoal – em construção
● http://jeronimomadruga.blogspot.com/

Você também pode gostar