JerônimoJerônimo MedinaMedina MadrugaMadruga
BackupBackup comcom ferramentasferramentas livreslivres
TchelinuxTchelinux 20102010 -- BagéBagé
SumárioSumá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çãoApresentação
● JerônimoJerônimo MedinaMedina MadrugaMadruga ● TécnicoTécnico emem EletrônicaEletrônica pelopelo IFSULIFSUL ● BacharelandoBacharelando emem CiênciaCiência dada ComputaçãoComputação pelapela UFPelUFPel ● TrabalhaTrabalha comcom informáticainformática desdedesde 20032003 – Suporte a usuário – Administração de sistemas – Administração de redes – Gerência de ambientes de educação a distância ● AtualmenteAtualmente técnicotécnico dede laboratóriolaboratório dede informáticainformática dada FURGFURG ● ParticipanteParticipante dede listaslistas dede discussãodiscussão dede softwaresoftware livrelivre comocomo TchelinuxTchelinux ee GUSLPGUSLP desdedesde 20072007 ConceitosConceitos
● BackupBackup ● CópiaCópia dede dadosdados emem umum locallocal diferentediferente dada origemorigem dosdos mesmosmesmos ● Objetivos:Objetivos: – RecuperaçãoRecuperação dede desastredesastre ● Falha no processamento ● Corrupção da base de dados ● Eventos naturais – RecuperaçãoRecuperação dede arquivosarquivos deletadosdeletados ● Usuários mal instruídos ● Invasões e ataques
ConceitosConceitos
● FatoresFatores relevantesrelevantes parapara implementaçãoimplementação
● CapacidadeCapacidade – Pensar no tamanho do armazenamento para o futuro ● VelocidadeVelocidade – Tempo de execução não deve ser grande demais ● CompressãoCompressão – Relação entre tempo de compressão e espaço economizado ● CustoCusto – Solução deve estar dentro do orçamento previsto ● PortabilidadePortabilidade – Capacidade de rodar nos mais diversos sistemas
ConceitosConceitos
● BackupBackup completocompleto ● ConsisteConsiste nana cópiacópia dede todostodos osos dadosdados queque sese querquer preservarpreservar ● GeraGera oo maiormaior volumevolume ee trafegotrafego dede dadosdados ● MaisMais fácilfácil dede implementarimplementar ee restaurarrestaurar ● MaiorMaior resistênciaresistência aa corrupçãocorrupção dede dadosdados
ConceitosConceitos
● BackupBackup diferencialdiferencial ● ComparaCompara asas alteraçõesalterações entreentre osos últimosúltimos backupsbackups ee copiacopia somentesomente osos arquivosarquivos alteradosalterados ● MenorMenor tamanho,tamanho, porémporém maiormaior complexidadecomplexidade
ConceitosConceitos
● BackupBackup IncrementalIncremental ● ComparaCompara osos arquivosarquivos ee copiacopia somentesomente osos modificadosmodificados emem referênciareferência aa umum backupbackup basebase ● MeioMeio termotermo entreentre oo completocompleto ee oo diferencialdiferencial
FerramentasFerramentas básicasbásicas
● CPCP ee MVMV ● DisponíveisDisponíveis emem qualquerqualquer sistemasistema unix-likeunix-like ● ImplementamImplementam asas funcionalidadesfuncionalidades dede copiarcopiar ee movermover arquivosarquivos ● PossibilitaPossibilita backupsbackups simplessimples ● LimitadoLimitado aa dispositivosdispositivos montadosmontados nono sistemasistema
FerramentasFerramentas básicasbásicas
● FTPFTP ● FileFile transfertransfer protocolprotocol ● PermitePermite aa cópiacópia parapara servidoresservidores remotosremotos ● FácilFácil dede implementarimplementar ● PorémPorém comcom poucospoucos recursosrecursos dede segurançasegurança – TransferênciaTransferência plana,plana, dadosdados nãonão sãosão criptografadoscriptografados ● NoNo WindowsWindows umauma opçãoopção parapara usouso éé oo FilezillaFilezilla
FerramentasFerramentas básicasbásicas
● SCPSCP ● SecureSecure CopyCopy ● PossibilitaPossibilita cópiacópia criptografadacriptografada usandousando sshssh atravésatravés dada rederede ● PermitePermite backupbackup emem dispositivosdispositivos remotosremotos ● GaranteGarante aa segurançasegurança dosdos dadosdados enviadosenviados ● DisponívelDisponível nono WindowsWindows atravésatravés dodo WINSCPWINSCP
FerramentasFerramentas básicasbásicas
● RSYNCRSYNC ● ComparaCompara aa origemorigem comcom oo destinodestino ee copiacopia somentesomente blocosblocos dede arquivosarquivos queque apresentaramapresentaram mudançasmudanças ● PermitePermite aa execuçãoexecução dede backupsbackups incrementaisincrementais ● PodePode utilizarutilizar sshssh parapara criptografarcriptografar osos dadosdados ● PodePode utilizarutilizar compressãocompressão nosnos dadosdados aa seremserem enviadosenviados ● DisponívelDisponível nono WindowsWindows atravésatravés dodo CWRSYNCCWRSYNC
FerramentasFerramentas básicasbásicas
● AlgoritmoAlgoritmo dodo RSYNCRSYNC
FerramentasFerramentas básicasbásicas
● CRONCRON ● FerramentaFerramenta dede agendamentoagendamento dede tarefastarefas ● PossibilitaPossibilita criarcriar umauma rotinarotina automatizadaautomatizada dede execuçãoexecução dede scriptsscripts ee programasprogramas dede backupbackup ● AltamenteAltamente flexívelflexível ● PodePode serser replicadareplicada nono WindowsWindows atravésatravés dodo agendadoragendador dede tarefas,tarefas, poremporem semsem tantastantas funcionalidadesfuncionalidades ● PodePode serser utilizadautilizada nono WindowsWindows atravésatravés dodo CYGWINCYGWIN
CompressãoCompressão
● ConsisteConsiste emem reduzirreduzir oo espaçoespaço ocupadoocupado pelospelos arquivosarquivos nono discodisco ● PossibilitaPossibilita oo armazenamentoarmazenamento dede grandesgrandes volumesvolumes dede dadosdados emem capacidadescapacidades menoresmenores ● AumentoAumento oo tempotempo dede processamentoprocessamento parapara criarcriar ouou restaurarrestaurar umum backupbackup ● PodePode amplificaramplificar osos danosdanos causadoscausados porpor corrupçãocorrupção dede dadosdados ● AlgumasAlgumas ferramentasferramentas dede compressãocompressão incluemincluem recursosrecursos dede criptografiacriptografia
CompressãoCompressão
● TARTAR (Tape(Tape Archive)Archive) ● PodePode serser utilizadoutilizado parapara juntarjuntar váriosvários arquivosarquivos emem umum sósó ● TambémTambém podepode serser utilizadoutilizado parapara extrairextrair váriosvários arquivosarquivos dede umum únicoúnico ● NãoNão éé capazcapaz dede realizarrealizar aa compressão,compressão, porémporém podepode trabalhartrabalhar emem conjuntoconjunto comcom ferramentasferramentas queque aa fazemfazem ● GZIP,GZIP, BZIP2,BZIP2, LZMA,LZMA, XZXZ
CompressãoCompressão
● UNPUNP ● FerramentaFerramenta queque podepode serser utilizadautilizada parapara descompressãodescompressão dede quasequase todostodos osos formatosformatos ● OutrasOutras ferramentasferramentas ● Ark,Ark, Arj,Arj, Rar,Rar, Unrar,Unrar, Dar,Dar, Ark,Ark, P7zip,P7zip, XarchiverXarchiver ● ParaPara WindowsWindows ● 7Zip7Zip ee PeaZipPeaZip
BackupBackup emem mídiasmídias
● ReduçãoRedução dosdos custoscustos dede mídiasmídias atualmenteatualmente ● AltosAltos custocusto dede armazenamentoarmazenamento emem unidadesunidades dede discodisco ● GigabyteGigabyte XX RealReal ● MídiasMídias permitempermitem múltiplosmúltiplos backupsbackups ee armazenamentoarmazenamento porpor longoslongos períodosperíodos ● BackupsBackups emem discodisco ee mídiamídia permitepermite umum certacerta redundânciaredundância
BackupBackup emem mídiasmídias
● FitasFitas DATDAT ● DispositivoDispositivo queque permitepermite reescritareescrita ● AltoAlto custocusto dada unidadeunidade dede operaçãooperação ● BaixoBaixo custocusto dasdas fitasfitas ● IndicadoIndicado parapara servidoresservidores ● AcessoAcesso SequencialSequencial ● UtilizaUtiliza oo MTMT parapara rebobinar,rebobinar, apagarapagar ee ejetarejetar aa fitafita ● UtilizaUtiliza oo TARTAR parapara enviarenviar ouou extrairextrair arquivosarquivos
BackupBackup emem mídiasmídias
● CDCD ee DVDDVD ● UmaUma dasdas melhoresmelhores relaçõesrelações CustoCusto XX BeneficioBeneficio ● BaixaBaixa capacidadecapacidade dede armazenamentoarmazenamento ● BaixaBaixa confiabilidadeconfiabilidade ● IndicadoIndicado parapara backupsbackups caseiroscaseiros ouou backupsbackups permanentespermanentes ● PossibilidadePossibilidade dede reescritareescrita casocaso aa mídiamídia sejaseja RWRW ● MKISOFS,MKISOFS, CDRECORD,CDRECORD, GROWISOFS,GROWISOFS, CDRDAO,CDRDAO, DVD+RW-TOOLS,DVD+RW-TOOLS, WODIMWODIM
BackupBackup emem mídiasmídias
● OutrasOutras opçõesopções ● DisquetesDisquetes (opção(opção ultrapassadaultrapassada atualmente)atualmente) ● ZIPZIP DriveDrive ● DiscosDiscos removíveisremovíveis ● MemóriasMemórias FlashFlash
RAIDRAID
● RedundantRedundant ArrayArray ofof InexpensiveInexpensive DisksDisks
● RAIDRAID nãonão fornecefornece emem nenhumanenhuma configuraçãoconfiguração oo backupbackup dosdos dadosdados emem questãoquestão
● RAIDRAID garantegarante redundânciaredundância emem algumasalgumas configuraçõesconfigurações
● RAID 0 – Concatenação ou striping, aumenta velocidade e/ou tamanho ● RAID 1 – Redundância, aumenta confiabilidade do sistema ● Aconselhável:Aconselhável:
● RAID 1, RAID 0+1, RAID 1+0, RAID 100 ● Evitar:Evitar:
● RAID 2, RAID 3, RAID 4, RAID 5, RAID 6
RAIDRAID
RAIDRAID
RAIDRAID
● RAIDRAID viavia SistemaSistema OperacionalOperacional ● MelhorMelhor opçãoopção – RAIDTOOLSRAIDTOOLS ouou MDADMMDADM nono linuxlinux – TambémTambém podepode serser implementadoimplementado pelopelo LVMLVM ● RAIDRAID viavia softwaresoftware (alto(alto índiceíndice dede usouso dodo processador)processador) ● BaixoBaixo desempenhodesempenho ● BoaBoa confiabilidadeconfiabilidade ● FácilFácil manutençãomanutenção
RAIDRAID
● RAIDRAID viavia HardwareHardware
● ImplementadosImplementados atravésatravés dede controladorascontroladoras dede discodisco ee BIOSBIOS ● AltoAlto desempenhodesempenho ● BoaBoa ConfiabilidadeConfiabilidade ● SuporteSuporte emem váriosvários sistemassistemas ● ManutençãoManutenção complicadacomplicada ● FakeFake RAIDRAID – 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
SistemasSistemas dede arquivoarquivo
● AlgunsAlguns sistemassistemas dede arquivoarquivo permitempermitem oo usouso dede cópiascópias dosdos dadosdados (snapshots)(snapshots) parapara realizarrealizar backupsbackups
● NILFS2NILFS2 ● BRTFSBRTFS ● ZFSZFS (disponível(disponível nono SolarisSolaris ee FreeBSD)FreeBSD)
● LVMLVM SnapshotSnapshot
● PermitePermite oo usouso dede snapshotssnapshots comcom sistemassistemas dede arquivoarquivo queque nãonão temtem esseesse recursorecurso
BackupBackup nono desktopdesktop
● FocoFoco nana funcionalidadefuncionalidade ee simplicidadesimplicidade ● Rdiff-backupRdiff-backup – CriaçãoCriação dede cópiacópia usandousando asas bibliotecasbibliotecas dodo rsyncrsync – PermitePermite backupbackup incrementalincremental ee temporaltemporal ● LuckyBackupLuckyBackup – PossuiPossui interfaceinterface gráficagráfica – AgendamentoAgendamento dede backupsbackups – UsoUso dodo rsyncrsync parapara realizarrealizar osos backupsbackups
BackupBackup nono desktopdesktop
● FlybackFlyback ● ImplementaçãoImplementação dede TimeTime MachineMachine dada AppleApple nono linuxlinux ● TimeTime VaultVault ● CriaçãoCriação dede snapshotssnapshots dede diretóriosdiretórios ● SbackupSbackup ● AltamenteAltamente personalizávelpersonalizável ● PossibilitaPossibilita incrementaisincrementais ee completoscompletos ● SugereSugere rotinasrotinas dede backupbackup padrãopadrão
BackupBackup OnlineOnline
● ExpansãoExpansão dede serviçosserviços baseadosbaseados emem CloudCloud ComputingComputing ● FocoFoco emem sincronizaçãosincronização dede raquivosraquivos entreentre diversosdiversos dispositivosdispositivos ● PossibilidadePossibilidade dede realizarrealizar backupbackup off-siteoff-site ● DiversosDiversos serviçosserviços comcom suportesuporte aa linuxlinux
BackupBackup OnlineOnline
● ProblemasProblemas ● Privacidade:Privacidade: VerificarVerificar oo contratocontrato dodo serviçoserviço sobresobre acessoacesso aa dadosdados – Sugestão: Enviar somente arquivos criptografados ● Capacidade:Capacidade: VerificarVerificar sese oo serviçoserviço oferecidooferecido ofereceoferece velocidadevelocidade ee capacidadecapacidade necessáriasnecessárias ● ServidoresServidores grátis:grátis: ● DropBoxDropBox ● UbuntuUbuntu OneOne ● SpiderOakSpiderOak
ClonagemClonagem
● PossibilidadePossibilidade dede copiarcopiar oo conteúdoconteúdo completocompleto dede umauma máquinamáquina ● BareBare MetalMetal RecoveryRecovery – RecuperaçãoRecuperação dosdos serviçosserviços emem umauma máquinamáquina diferentediferente – RápidaRápida restauraçãorestauração – HardwaresHardwares diferentesdiferentes ● InstalaçõesInstalações padronizadaspadronizadas – PadronizaçãoPadronização dede programasprogramas ee configuraçõesconfigurações
ClonagemClonagem
● FerramentasFerramentas
● ClonezillaClonezilla – Criação e restauração de partições e disco – Possibilidade de restauração via Multicast ● PingPing (Ping(Ping isis notnot ghost)ghost) – Inclui aplicativos para restaurar e reparar Windows ● LRSLRS (Linbox(Linbox RescueRescue Server)Server) – Centralização de imagens – Gerenciamento de inventário ● FOGFOG (Free,(Free, Open-sourceOpen-source Ghost)Ghost) – Interface de administração WEB
SistemasSistemas avançadosavançados dede backupbackup
● GrandeGrande volumevolume dede dadosdados ● GrandeGrande númeronúmero dede máquinasmáquinas ● NecessidadeNecessidade dede rotinasrotinas dede backupbackup complexascomplexas ● UsoUso dede diversosdiversos tipostipos dede mídiamídia ● CentralizaçãoCentralização dada estratégiaestratégia dede backupbackup ● ServidoresServidores dede backupbackup
SistemasSistemas avançadosavançados dede backupbackup
● AmandaAmanda ● RápidaRápida implementaçãoimplementação ● AjusteAjuste automatizadoautomatizado dodo tipotipo dede backupbackup ● BoaBoa documentaçãodocumentação ● PossibilitaPossibilita backupbackup simultâneosimultâneo emem dispositivosdispositivos diferentesdiferentes ● UsoUso dede formatosformatos abertosabertos (Dump(Dump ee Tar)Tar) possibilitapossibilita recuperaçãorecuperação simplessimples
SistemasSistemas avançadosavançados dede backupbackup
SistemasSistemas avançadosavançados dede backupbackup
● BaculaBacula ● ArquiteturaArquitetura robustarobusta ee complexacomplexa ● ServidoresServidores dede armazenamentoarmazenamento distribuídosdistribuídos ● RotinaRotina dede backupbackup estáticaestática ● FormatoFormato dede backupbackup especificoespecifico dodo programaprograma ● CatalogoCatalogo dede backupbackup ● BackupsBackups emem paraleloparalelo
SistemasSistemas avançadosavançados dede backupbackup
ObservaçõesObservações finaisfinais
● BancosBancos dede dadosdados
● RealizarRealizar oo dumpdump dada basebase dede dadosdados parapara garantirgarantir aa integridadeintegridade dada mesmamesma ● MYSQLDUMPMYSQLDUMP ● PGSQLDUMPPGSQLDUMP ● PlanoPlano dede contingênciacontingência
● NãoNão bastabasta fazerfazer oo backup,backup, temtem queque testartestar (frequentemente)(frequentemente) ● VerificaçãoVerificação dada integridadeintegridade dosdos dadosdados ● CalcularCalcular tempotempo dede recuperaçãorecuperação dosdos sistemassistemas
ObservaçõesObservações finaisfinais
● VirtualizaçãoVirtualização
● PossibilitaPossibilita rodarrodar diversosdiversos SO'sSO's nana mesmamesma máquinamáquina ● FacilitaFacilita oo backupbackup – Uso de snapshots completos da máquina virtual – Cópia dos discos virtuais – Abstração do hardware ● DesempenhoDesempenho podepode serser afetadoafetado ● PrincipaisPrincipais opções:opções: – ZEN – KVM – VirtualBox
ObservaçõesObservações finaisfinais
● RecuperaçãoRecuperação dede dadosdados ● ÚltimaÚltima opçãoopção emem umum planoplano dede recuperaçãorecuperação ● PossibilitarPossibilitar recuperaçãorecuperação dede dadosdados apagadosapagados ouou corrompidoscorrompidos ● OpçõesOpções livres:livres: – PhotoRecPhotoRec – TestDiskTestDisk – ForemostForemost ● ProblemasProblemas físicosfísicos dede armazenamentoarmazenamento devemdevem serser levadoslevados aa empresasempresas especializadasespecializadas
ObservaçõesObservações finaisfinais
● SistemasSistemas dede controlecontrole dede versãoversão ● SistemasSistemas dede backupbackup visandovisando repositóriorepositório dede código-código- fontefonte ● RecuperaçãoRecuperação dede conteúdoconteúdo aa partirpartir dede datas,datas, modificaçõesmodificações ee versõesversões ● SuporteSuporte aa alteraçõesalterações simultâneassimultâneas ee ramificaçõesramificações – CVSCVS – SubversionSubversion – MercurialMercurial – GITGIT
ReferênciasReferê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ênciasReferê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ênciasReferências
● http://clonezilla.org/introduction.phphttp://clonezilla.org/introduction.php
● http://ping.windowsdream.com/http://ping.windowsdream.com/
● http://lrs.linbox.org/wiki/WikiStartEnhttp://lrs.linbox.org/wiki/WikiStartEn
● http://www.fogproject.org/http://www.fogproject.org/
● http://wiki.zmanda.com/index.php/FAQhttp://wiki.zmanda.com/index.php/FAQ
● http://www.bacula.org/en/dev-manual/What_is_Bacula.htmlhttp://www.bacula.org/en/dev-manual/What_is_Bacula.html
● http://www.cgsecurity.org/wiki/PhotoRechttp://www.cgsecurity.org/wiki/PhotoRec
● http://www.cgsecurity.org/wiki/TestDiskhttp://www.cgsecurity.org/wiki/TestDisk
● http://rdiff-backup.nongnu.org/http://rdiff-backup.nongnu.org/
● http://tldp.org/HOWTO/LVM-HOWTO/snapshots_backup.htmlhttp://tldp.org/HOWTO/LVM-HOWTO/snapshots_backup.html
ContatoContato
e-maile-mail jeronimo.madrugajeronimo.madruga (at)(at) gmail.comgmail.com TwitterTwitter ● http://twitter.com/jeronimomadrugahttp://twitter.com/jeronimomadruga BlogBlog ● http://linuxkiddinthemicrosoftworld.blogspot.com/http://linuxkiddinthemicrosoftworld.blogspot.com/ SlidesSlides ● http://www.slideshare.net/jeronimomadruga/http://www.slideshare.net/jeronimomadruga/ SiteSite pessoalpessoal –– emem construçãoconstrução ● http://jeronimomadruga.blogspot.com/http://jeronimomadruga.blogspot.com/