Você está na página 1de 4

8/4/2015

Escrevendo scripts de backup - Linux, Ferramentas Tcnicas 2ed.

Notcias

Guiadohardware

Entretenimento

GDHPress

FrumGdH

Esportes

Publiqueseutexto

Vdeos

RedeRecord

RSS

Home

Equipe

EfetuarLogin

ndiceLivros

Notcias

Linux,FerramentasTcnicas2ed.

Notcias

Guias

Email

Buscar...

Oquehdenovo?

hoje
CarlosE.Morimotoc riou1/mar/2006s03h00

13

ANTERIOR:CRIANDOPACOTESAPARTIRDOSFONTESCOMOCHECKINSTALL

Escrevendoscriptsdebackup
PRXIMO:USANDOOAUTOFS/AUTOMOUNT

Escrevendoscriptsdebackup
Duranteadcadade70,vriosutilitriosforamdesenvolvidosparafazerbackupdearquivosarmazenadosem
servidoresLinux.Oscomputadoresdapocaerammuitolimitados,porissoosutilitriosprecisavamsersimples
eeficientes,edeveriamexistirmeiosdeagendarosbackupsparahorriosdepoucousodasmquinas.
Sugiram ento utilitrios como o tar e o gzip e mais tarde ferramentas como o rsync. Estes utilitrios eram to
eficientesquecontinuaramsendousadosaolongodotempo.Porincrvelquepossaparecer,sousadossem
grandesmodificaesatosdiashoje.
Naturalmente,existemmuitosutilitriosamigveisdebackup,comooAmanda(paraservidores)eoKonserve(um
utilitriomaissimples,voltadoparausuriosdomsticos).Mas,internamente,elescontinuamutilizandocomobase
oodump,tar,gzipeoutrostrigenrios.
Mais incrvel ainda, que estes utilitrios possuem uma penetrao relativamente pequena. A maior parte dos
backupsaindafeitaatravsdescriptspersonalizados,escritospeloprprioadministrador.E,novamente,estes
scriptsutilizamotar,gzip,rsynceoutros.
justamente sobre estes scripts personalizados que vou falar aqui. Vamos comear com alguns exemplos
simples:
Para compactar o contedo de uma pasta, usamos o tar combinado com o gzip ou bzip2. O tar agrupa os
arquivos e o gzip os compacta. Os arquivos compactados com o gzip usam por padro a extenso "tar.gz",
enquantooscompactadoscomobzip2usamaextenso"tar.bz2".Obzip2maiseficiente,chegaaobter10%
oumaisdecompressoadicional,masemcompensaobemmaispesado:demoracercade3vezesmaispara
compactarosmesmosarquivos.Vocescolheentreumeoutrodeacordocomatarefa.
O comando para compactar uma parta similar ao "tar zxvf" que usamos para descompactar arquivos. Para
compactarapasta"arquivos/",criandooarquivo"arquivos.tar.gz",ocomandoseria:

[Gamescom2015]Window s10irchegaraoXboxOneem
novembro
[Gamescom2015]ConfiraoprimeirotrailerdeDarkSoulsIII
[Gamescom2015]XboxOneirreceberminitecladoquepodeser
acopladonocontroledoconsole
[Gamescom2015]XboxOneirganharsistemagratuitode
gravaodeprogramaodeTV
[Gamescom2015]Crackdow n3confirmadoparaoXboxOne
[Gamescom2015]Gamesw ithGolddoXbox360irofuncionarno
XboxOne
[Gamescom2015]MicrosoftrevelaogameplaydeScalebound
[Gamescom2015]QuantumBreakirchegaraoXboxOnenodia5
deabrilde2016
ontem
SonyapresentaossmartphonesXperiaM5eC5
Acreditesequiser:Bitdefenderfoihackeado
ConfiraasembalagensdosnovosprocessadoresSkylakedaIntel
02/08
GigabyteapresentaGTX970Tw inTurbo
Confiraoslanamentosdegamespreparadosparaagosto
AMDrevelaAPUEHP,equipadacom32ncleosememriaHBM2
Window s10jestinstaladoem67milhesdecomputadores
31/07
ToshibaapresentaEncore10k,hbridoequipadocomIntelAtome
Window s10
ConfiraalistadosantivruscompatveiscomoWindow s10
PositivolananovosprodutoscomoWindow s10
30/07
MicrosoftestariaplanejandohabilitarostreamingdejogosdePCno
XboxOne
ASUSanunciaplacamecompactaparaservidoreseestaesde
trabalho
NotciasdomsdeAgostode2015

$tarzcvfarquivos.tar.gzarquivos/
O "c" indica que o tar deve criar um novo arquivo e o "v" faz com que exiba informaes na tela enquanto
trabalha.Sepreferircomprimirembz2,mudaapenasaprimeiraletraaoinvsde"z"usamos"j":
$tarjcvfarquivos.tar.bz2arquivos/

Artigos

Tutoriais
Livros Dicas Anlises

Livros

Estescomandosseriamideaisparafazerumbackupcompleto,deumaouvriaspastasdosistema,gerandoum
arquivocompactadoquepoderiaserarmazenadonumHDexterno,gravadonumDVDoumesmotransferidovia
redeparaoutroservidor.
Imagine agora um outro cenrio, onde voc precisa fazer backup dos arquivos de uma pasta de trabalho
diariamente.Osarquivosgeradosnosomuitograndesevoctemmuitoespaodisponvel,masnecessrio
queosbackupsdiriosfeitosemarquivosseparadosesejamguardadosporumcertoperodo,deformaqueseja
possvelrecuperarumarquivoqualquerapartirdadata.
Aoinvsdeficarrenomeandoosarquivos,vocpoderiausarumpequenoscriptparaqueosarquivosfossem
geradosjcomadataehoraincludanonomedoarquivo:
DATA=`date+%Y%m%d%H.%M.%S`
cd/mnt/backup
tarzcvftrabalho"$DATA".tar.gz/mnt/hda6/trabalho/

Compreoseu.Livroatualizado!

Aprimeiralinhadoscriptcriaumavarivel"DATA",contendooresultadodocomando"date+%Y%m%d%H.%M.%S".Ocomandodateretornaadataehoraatual,comoem"SexSet16
12:36:06BRST2005".Asadapadrodelenomuitoadequadaparausaremnomesdearquivos,porissousamosasopesparaalteraroformatodesada,demodoqueoresultadoseja
"2005091612.37"(ano,ms,dia,hora,minuto,segundo).Usamosestevalornonomedoarquivocomobackup,deformaque,cadavezquevocchameoscript,sejageradoumarquivo
comadataehoraemquefoigerado,semapossibilidadededoisarquivossaremcomomesmonome.
Oprximopassofazercomqueestescriptdebackupsejaexecutadodiariamentedeformaautomtica,oquepodeserfeitousandoocron.
Emprimeirolugar,salveoscomandosnumarquivodetexto,quevamoschamarde"backup.sh"etransformeonumexecutvelusandoocomando"chmod+xbackup.sh".
Paraqueelesejaexecutadoautomaticamentetodososdias,copieoparadentrodapasta"/etc/cron.daily"ecertifiquesedequeoservio"cron"estejaativo:
#cpabackupsh/etc/cron.daily
#/etc/init.d/cronstart
Sepreferirqueoscriptsejaexecutadoapenasumavezporsemana,oumesmoumavezporhora,useaspastas"/etc/cron.w eekly"oua"/etc/cron.hourly".Porpadro,osscriptsdentroda
pasta"/etc/cron.daily"soexecutadospoucodepoisdas6damanh(ohorrioexatovariadeacordocomadistribuio).Paraalterarohorrio,editeoarquivo"/etc/crontab",alterandoa
linha:

http://www.hardware.com.br/livros/ferramentas-linux/escrevendo-scripts-backup.html

1/4

8/4/2015

Escrevendo scripts de backup - Linux, Ferramentas Tcnicas 2ed.

256***roottestx/usr/sbin/anacron||runpartsreport/etc/cron.daily
O"256"indicaominutoeahora.Sequiserqueoscriptsejaexecutados11danoite,porexemplo,mudepara"0023".
Nesteexemplouseiapasta"/mnt/backup"parasalvarosarquivos.EstapastapodeseropontodemontagemdeumHDexternooudeumcompartilhamentoderedeporexemplo.Oseuscript
podeconteroscomandosnecessriosparamontaredesmontarapastaautomaticamente.
Imagine,porexemplo,queobackupsemprefeitonaprimeirapartiodeumHDexterno,ligadonaportaUSB,quesempredetectadapelosistemacomo"/dev/sda1".Oscriptdeveser
capazdemontarapartio,gravaroarquivodebackupedepoisdesmontla.SeporacasooHDnoestiverplugado,oscriptdeveabortaroprocedimento.Paraissoprecisamosverificarse
oHDrealmentefoimontadodepoisdeexecutarocomando"mount/dev/sda1/mnt/sda1".Existemmuitasformasdefazerisso,umasimplessimplesmentefiltrarasadadocomando"mount"
(quemostratodososdispositivosmontados)usandoogrepparaverseo"/mnt/sda1"aparecenalista.Senoestiver,oscripttermina,casoesteja,elecontinua,executandooscomandosde
backup:
mount/dev/sda1/mnt/sda1
montado=`mount|grep/mnt/sda1`
if[z"$montado"]then
exit1
else
DATA=`date+%Y%m%d%H.%M`
cd/mnt/backup
tarzcvftrabalho"$DATA".tar.gz/mnt/hda6/trabalho/
umount/mnt/sda1
fi
Apartirda,semprequevocdeixaroHDexternoplugadonofinaldoexpediente,obackupfeitoeestarprontonooutrodia.SeesquecerdeplugaroHDnumdia,oscriptpercebeeno
faznada.
SepreferirqueoscriptgraveobackupnumDVD,aoinvsdesimplesmentesalvarnumapasta,vocpodeusaro"grow isofs"paragravlonoDVD.Nestecaso,vamosgeraroarquivonuma
pastatemporriaedeletlodepoisdagravao:
DATA=`date+%Y%m%d%H.%M`
rmrf/tmp/backupmkdir/tmp/backupcd/tmp/backup
tarzcvftrabalho"$DATA".tar.gz/mnt/hda6/trabalho/
growisofsspeed=2Z/dev/dvdRJ/tm p/backup/trabalho"$DATA".tar.gz
rmrf/tmp/backup
O"speed=2"permitequevocespecifiqueavelocidadedegravaodoDVD,enquantoo"Z"criaumanovaseo.possvelusaromesmodiscoparagravarvriosbackups(seoespao
permitir)usandoaopo"M"apartirdasegundagravao,queadicionanovasseesnoDVD,atqueoespaoseacabe.
O "/dev/dvd" indica o dispositivo do drive de DVD. A maioria das distribuies cria o link /dev/dvd apontando para o dispositivo correto, mas, em caso de problemas, voc pode indicar
diretamenteodispositivocorreto,como,porexemplo,"/dev/hdc".Asopes"RJ"adicionamsuportesextensesRockRidgeeJoilet.
Seocronforconfiguradoparaexecutaroscripttodososdias,vocsprecisarsepreocuparemdeixaroDVDnodriveantesdesair.
SepreferirfazerosbackupsemCDR("emquesculovocvive?"),crieumaimagemISOusandoomkisofseemseguidagraveanoCDusandoocdrecord,comoem:
mkisofsrJotrabalho.iso/tmp/backup/trabalho"$DATA".tar.gz
cdrecorddev=/dev/hdctrabalho.iso
Estecomandodocdrecordfuncionaemdistribuiesrecentes,queutilizamoKernel2.6emdiante(comomduloidecd).NoKernel2.4,erausadaemulaoSCSIparaacessarogravadorde
CD,fazendocomqueelefossevistoeacessadopelosistemacomosefosseumgravadorSCSI.Nestecaso,ocomandodegravaoseria"cdrecorddev=0,0,0datatrabalho.iso",ondeo
"0,0,0"odispositivodogravador,quevocdescobreatravsdocomando"cdrecordscanbus".

Outrograndealiadonahoradeprogramarbackupsorsync.Elepermitesincronizarocontedodeduaspastas,transferindoapenasasmodificaes.Elenotrabalhaapenascomparando
arquivoporarquivo,mastambmcomparandoocontedodecadaum.Seapenasumapequenapartedoarquivofoialterada,orsynctransferirapenasela,semcopiarnovamentetodoo
arquivo.
Eleumaformasimplesdefazerbackupsincrementais,degrandesquantidadesdearquivos,oumesmopartiesinteiras,mantendoumanicacpiaatualizadadetudonumHDexternoou
numservidorremoto.Estebackupincrementalpodeseratualizadotododiaecomplementadoporumbackupcompleto(paraocasodeumdesastreacontecer),feitoumavezporsemanaou
umavezporms.
Parainstalarorsync,procurepelopacote"rsync"nogerenciadordepacotes.NoDebianinstalecomum"aptgetinstallrsync"enoMandrivacomum"urpmirsync".
Parafazerumbackuplocal,bastainformarapastadeorigemeapastadedestino,paraondeosarquivosserocopiados:
$rsyncav/m nt/hda6/trabalho/m nt/backup/
Aopo"a"(archive)fazcomquetodasaspermisseseatributosdosarquivossejammantidos,damesmaformaqueaocriarosarquivoscomotareo"v"(verbose)mostraoprogressona
tela.
Acpiainicialvaidemorarumpouco,maisdoquedemorariaumacpiasimplesdosarquivos.Mas,apartirdasegundavez,aoperaosermuitomaisrpida.
Notequenestecomandoestamoscopiandoapasta"trabalho"recursivamenteparadentroda"/mnt/backup",deformaquesejacriadaapasta"/mnt/backup/trabalho".Adicionandoumabarra,
comoem"/mnt/hda6/trabalho/",orsynccopiariaocontedointernodapastadiretamenteparadentroda"/mnt/backup".
Sealgumdesastreacontecerevocprecisarrecuperarosdados,bastainverteraordemdaspastasnocomando,comoem:
$rsyncav/m nt/backup/trabalho/m nt/hda6/trabalho/
Orsyncpodesertambmusadoremotamente.Originalmenteelenoutilizanenhumtipodecriptografia,oquefazcomqueelenosejamuitoadequadoparabackupsviainternet.Maseste
problemapodeserresolvidocomaajudadoSSH,quepodeserutilizadocomomeiodetransporte.NotoaqueoSSHchamadodecanivetesuo,elerealmentefazdetudo.
Nestecasoocomandoficariaumpoucomaiscomplexo:
$rsyncavrsh="sshCltux"/m nt/hda6/trabalho\
tux@192.168.0.1:/m nt/backup/
Veja que foi adicionado um parmetro adicional, o rsh="ssh C l tux", que orienta o rsync a utilizar o SSH como meio de transporte. O "C" orienta o SSH a comprimir todos os dados
(economizando banda da rede) e a se conectar ao servidor remoto usando o login tux (l tux). Naturalmente, para que o comando funcione, preciso que o servidor esteja com o SSH
habilitado,evoctenhaumlogindeacesso.
Emseguidavemapastalocalcomosarquivos,oendereoIP(oudomnio)doservidoreapasta(doservidor)paraondevoosarquivos.
Umaobservaoqueusandoapenasosparmetros"av",orsyncapenasatualizaegravanovosarquivosnapastadoservidor,semremoverarquivosquetenhamsidodeletadosnapasta
local.Porumladoistobom,poispermiterecuperararquivosdeletadosacidentalmente,masporoutropodecausarconfuso.Sevocpreferirqueosarquivosquenoexistemmaissejam
deletados,adicioneoparmetro"delete",comoem:
$rsyncavdeletersh="sshCltux"/m nt/hda6/trabalho\
tux@192.168.0.1:/m nt/backup/

http://www.hardware.com.br/livros/ferramentas-linux/escrevendo-scripts-backup.html

2/4

8/4/2015

Escrevendo scripts de backup - Linux, Ferramentas Tcnicas 2ed.

Pararecuperarobackup,bastanovamenteinverteraordemdocomando,comoem:
$rsyncavrsh="sshCltux"tux@192.168.0.1:/m nt/backup/\
/m nt/hda6/trabalho
Originalmente,vocvaiprecisarfornecerasenhadeacessoaoservidorcadavezqueexecutarocomando.Aousarocomandodentrodoscriptdebackup,vocpodegerarumachavede
autenticao,tornandoologinautomtico.Estaopomenossegura,poiscasoalgumconsigacopiarachave(oarquivo.ssh/id_rsadentronohomedousurio),poderganharacessoao
servidor.
Dequalquerforma,parausaresterecurso,rodeocomando"sshkeygentrsa"(quegeraachavedeautenticao)usandoologindousurioqueexecutaroscriptdebackup,deixandoa
passpraseembranco.Emseguida,copieoparaoservidor,usandoocomando:
$sshcopyidi~/.ssh/id_rsa.pubtux@192.168.0.1
Apartirda,oscriptdebackuppodeserexecutadodiretamente,atravsdocron,poisnosermaissolicitadaasenha.
PRXIMO:USANDOOAUTOFS/AUTOMOUNT
ANTERIOR:CRIANDOPACOTESAPARTIRDOSFONTESCOMOCHECKINSTALL

NDICE

Capa
Prefcio
Captulo1:Entendendoaestruturadosistema[+10]
Captulo2:Configurao,ferramentasedicas
Editandoo/etc/fstab
Configurandoolilo[+2]
Configurandoogrub
Configurandoovdeo:/etc/X11/xorg.conf
KVMviasoftw arecomoSynergy
Usandoohdparm
RecompilandooKernel[+6]
Criandopatches
Acelerandoacompilaocomodistcc
Criandopacotesapartirdosfontescomocheckinstall
Escrevendoscriptsdebackup
Usandooautofs/automount
AcessandodispositivosUSB[+4]
FazendobackuperecuperandoaMBRetabeladeparties[+2]
Recuperandopartiesdanificadas
GerenciamentodesetoresdefeituososcomooReiserFS
MonitorandoasadedoHDcomoSMART
CopiandodadosdeHDsouCDsdefeituosos
Aproveitandomdulosdememriadefeituosos
Eliminandodadoscomsegurana
Administrandoamemriasw ap
Ativandoosuporteamairde1GBdememriaRAM
ClonandopartiescomoPartimage[+4]
Segurana:detectandorootkits
InstalandooKurumin7(eoutrasdistros)numpendriveoucarto
Salvandoasconfiguraes
Monitoresdetemperaturaecoolers
Gerenciamentodeenergia
Captulo3:Instalandodriversadicionais[+43]
Captulo4:Programandoemshellscript[+13]
Captulo5:RemasterizandooKurumineoutrosliveCDs[+9]
PorCarlosE.Morimoto.Revisado1/mar/2006s03h00

13comentrios

Comentrios
Entrarefazercomentrio

1 2

Testei
Criado11/jul/2012s17h10poralexrochaduc
Olha,crieiasimagensdecadapartiomaisosdoisarquivosmbresfedepoisfizarestauraoprimeirodombresfedasparties,semfalarquedemorademaisarestauraodas
parties(umdiaparaooutro,maiorpartioaimagemficouem18.1GB)enofimnodeucerto,naprimeiratentativaficavadandoerrodeinicializaoeow indow s7noconseguia
corrigir.Nasegundatentativaquandoinicializavaocomputadorficavaumatelapreta,sapareciaomousenatela,eparavanisso.Brincadeira.

REGRASUDEV
Criado2/dez/2011s14h38porMarcelo
Boatarde!
Gostariamuito,masmuitomesodeumaajuda.Liotutorialacimaeoacheimuitointeressante.ApartirdelepasseiacompreendermelhorcomofuncionaoUDEV.Fizumainclusodeuma
regraseguindoasdicasdotutorialmasnofuncionou.Gostariaquealgumpudessemeajudar.EuprecisoapenascriarumaregranoUDEVque,assimqueumpendriveforinseridoele
rodeumshellscript.
Eucrieiumnodiretrio/etc/idev/rules.dcomonome10local.rulesecoloqueiosparmetrosabaixo:

http://www.hardware.com.br/livros/ferramentas-linux/escrevendo-scripts-backup.html

3/4

8/4/2015

Escrevendo scripts de backup - Linux, Ferramentas Tcnicas 2ed.

BUS="usb",ACTION=="add",KERNEL=="sd??",NAME="%k",RUN+="/usr/local/script.sh"
Aoinseriropendrive,eledetectado,abreapastaautomaticamentmasnadamostrado.
Dentrodoscriptestassim:
gnometerminalxmysqldumpAurootpxxxxxteste>teste.sql
Algumtemalgumadicaparamedaroumeorientarondepossoestarerrado?
Sprecisofazerobenditoscriptrodarassimqueopenforinserido.:)
Agradecido
Marcelo.

quantoerolivro
Criado17/nov/2011s03h48porval
queriasaberondepossoencontrarolivroequantoer
poissouprogramadorem5linguasecomeeiuzarolinux
agora

RemasterizandoKurumin7
Criado3/out/2011s17h23porm arlucio_m elo
SeeujativerinstaladooKurumin7eatualizadoparaolennyjacomosprogramasinstaladosousejafuncionandodojeitoquesemprequister.Comofaoparacriarumaimagem.iso.

ondeencontrar
Criado14/jun/2011s02h25porCarlosFrancisco
Carlosgostariadesaberseesselivroencontraseemversopdfparabaixar,seamesmaforgratuitaounogostariadesaberovalor.MuitoObrigadoemeusparabnspelaobra.

S/SOM
Criado11/jun/2011s10h29porFLAVIO
TOMARAQUECONSIGARESOLVERMEUPROBLEMADESOMCOMESSEMARAVILHOSOSISTEMA!

Bom
Criado3/mai/2011s19h56porGuilherm e
MuitobomessesiteParabens!

Agredecimento
Criado28/mar/2011s20h04porHUGOLUIZ
Muitoagradecidopelosite!!!
tdeparabns,
grato,

Euqueroum
Criado15/mar/2011s20h00porRicardo
gostariamaisnaotemmaislivrosdeste:/

Criado6/mai/2009s15h45porJean
OlCarlos!!JaprendibastantecomseulivroRedeseServidores,masagoraestoutendodificuldadescomaconfiguraodoNagios.Vctemalgumtutorialmaisdetalhadodoqueosque
normalmentesodisponibilizados,poistiveumproblemaquesolucioneidescomentandoalgumaslinhasdosscripts(golpedesorte):=)P,masgostariademeaprofundarmaisnaferramenta.
1 2

Destaques
GuiadoHardwareagoraHardware.com.br
HardwareII,oGuiaDefinitivo
ltim oSaldodelivrosGDHPress:Livroscom pequenosdefeitos
Siganos:
RSS|Tw itter|Facebook

Gostoudotexto?
Vejanossoslivrosimpressos:
Smartphones|Linux|Hardw are
Redes|ServidoresLinux
...ouencontreoqueprocurausandoabusca:
Buscar

19992015Hardw are.com.breRdioeTelevisoRecord
S/A.Todososdireitosreservados.

http://www.hardware.com.br/livros/ferramentas-linux/escrevendo-scripts-backup.html

Home

FrumGdH

RSS Equipe Topo

4/4