Anda di halaman 1dari 30

MADDOG p.

26
O esforo dos pases em desenvolvimento

CEZAR TAURION P.28


A mobilidade na estratgia de TI

GILBERTO MAGALHES P.30


Inovar buscar a eficincia na TI

# 99 Fevereiro 2013

A REVISTA DO PROFISSIONAL DE TI

SYSTEM RESCUE
A RECUPERAO DE SISTEMAS VAI ALM DO SIMPLES RESGATE DE DADOS. SAIBA COMO RECUPERAR PARTIES INALCANVEIS E SISTEMAS OPERACIONAS CORROMPIDOS. P.40
CASE ALFRESCO p.26 A Construcap agilizou seus projetos com o Alfresco LINUX PARK 2008 p.28 Iniciada em Porto Alegre a temporada de seminrios Linux Park de 2008 CEZAR TAURION p.34 O Cdigo Aberto como incentivo inovao
#44 07/08 R$ 13,90 7,50

A REVISTA DO PROFISSIONAL DE TI

ENTREVISTA p.23

00044

9 771806 942009

GOVERNANA COM

Os 10 maiores truques para recuperao de sistemas p.32


SEJA UM BOM GESTOR E UTILIZE AS MELHORES PRTICAS ADOTADAS E RECOMENDADAS PELOS PROFISSIONAIS MAIS EXPERIENTES NESSA REA p.36
O que dizem os prossionais certicados p.24 Cobit, CMMI, ITIL. Quais as melhores prticas? p.36 ITIL na prtica p.39 Novidades do ITIL v3. p.44
Com o DNSSEC, a resoluo de nomes ca protegida de ataques. Mas seu preo vale a pena?

Marcos Polidoro, CEO da Mandriva fala sobre os novos produtos e a posio da empresa no mercado atual.

Saiba como recuperar dados e parties corrompidas p.40


SEGURANA: DNSSEC p.69
VEJA TAMBM NESTA EDIO:
Relatrios do Squid com o SARG p.60 Benchmarks do GCC 4.3? p.58 Java, Ruby e Rails: conhea o JRuby on Rails p.74 Becape de bancos de dados com a Libferris p.46 LPI nvel 2: Servidores NIS e DHCP p.52

REDES: IPV6 p.64

Conhea as vantagens da nova verso do Internet Protocol, e veja por que difcil adot-la

WWW.LINUXMAGAZINE.COM.BR

ANDROID p.46

Aprenda como publicar seus aplicativos na loja do Google

TCP FAST OPEN p.51

Evite a latncia no trfego de rede e aumente sua velocidade

TUTORIAL p.62

Crie assistentes interativos para a automatizao de tarefas

MONITORAMENTO DE PROCESSOS p.72 VEJA TAMBM NESTA EDIO:

Conhea as melhores ferramentas para monitoramento de tarefas e processos do sistema

Assuma o controle completo do computador atravs de rootkits para o kernel p.54 Explore as diversas alternativas para manipular grandes arquivos p.58 Domine os comandos para a gesto avanada de arquivos p.68
WWW.LINUXMAGAZINE.COM.BR
9 771806 942009 00099
#9902/13 R$ 14,90 7,50

Expediente editorial
Diretor Geral Rafael Peregrino da Silva rperegrino@linuxmagazine.com.br Editores Flvia Jobstraibizer fjobs@linuxmagazine.com.br Laura Loenert Lopes llopes@linuxmagazine.com.br Editores de Arte Larissa Lima Zanini llima@linuxmagazine.com.br Hunter Lucas Fonseca hfonseca@linuxnewmedia.com.br Colaboradores James Stanger, Jrgen Quade, Klaus Knopper, Charly Khnast, Tim Schrmann, Frank Hofmann, Kurt Seifried, Bruce Byfield, Timo Schler, Zack Brown, Jon maddog Hall, Alexandre Borges, Cezar Taurion, Gilberto Magalhes, Augusto Campos. Traduo Laura Loenert Lopes. Reviso Flvia Jobstraibizer. Editores internacionais Uli Bantle, Andreas Bohle, Jens-Christoph Brendel, Hans-Georg Eer, Markus Feilner, Oliver Frommel, Marcel Hilzinger, Mathias Huber, Anika Kehrer, Kristian Kiling, Jan Kleinert, Daniel Kottmair, Thomas Leichtenstern, Jrg Luther, Nils Magnus. Anncios: Rafael Peregrino da Silva (Brasil) anuncios@linuxmagazine.com.br Tel.: +55 (0)11 3675-2600 Penny Wilby (Reino Unido e Irlanda) pwilby@linux-magazine.com Amy Phalen (Amrica do Norte) aphalen@linuxpromagazine.com Hubert Wiest (Outros pases) hwiest@linuxnewmedia.de

Pirataria ou prataria?
Ao andar pelo centro da cidade de So Paulo, com vergonha que observamos a enchente de camels vendendo software como se fosse banana. Entre os transeuntes, ningum parece se incomodar com o fato de que esse comrcio clandestino de softwares quebrados (cracked) presta um desservio economia nacional e adoo de alternativas viveis, mormente quelas baseadas emSoftware Livre e de Cdigo Aberto (SL/CA). Mais de uma vez j ouvimos com tristeza a afirmao de que, no Brasil, todo software livre. A pirataria de software est to arraigada na cultura nacional, que nem parece ilegal. Mais ainda nos causa espanto a hipocrisia dos agentes da lei, que fingem no estar vendo o que os camels fingem no estar vendendo. Esse tipo de situao, a nosso ver desgovernada, um exemplo tpico da teoria da vidraa quebrada, que postula que quanto mais vidros estiverem quebrados em uma vidraa, mais vidros continuaro a ser quebrados, at que no reste mais nenhum intacto. Similarmente, enquanto no houver uma represso real desse tipo de atividade comercial, tanto maior ser o problema a ser enfrentado no longo prazo. Por outro lado, vale perguntar se essa represso do interesse do fabricante de software. Em maro de 2007, causou furor a afirmao de Jeff Raikes, atual CEO da Fundao Bill & Mellinda Gates, e, at incio de 2008, presidente da diviso de negcios corporativos da Microsoft, que reproduzo ipsi literis : If theyre going to pirate somebody, we want it to be us rather than somebody else (em traduo livre: Se eles vo piratear de algum, ns queremos que seja de ns ao invs de qualquer outro). Mais recentemente, Markus Notch Persson, o criador do jogo Minecraft, publicou em sua conta do Twitter a seguinte declarao, quando interpelado por um usurio que disse no dispor de recursos para adquirir o programa: Pirateie. Se voc ainda gostar dele quando puder pagar no futuro, ento compre. E no esquea de se sentir mal. Quando do incio das operaes da Linux New Media no Brasil, em meados de 2004, nosso sistema de editorao eletrnica s funcionava em verses anteriores ao Mac OS X. Quando tntamos obter uma cpia legal do Mac OS 9.2.2 para ser executado em modo emulado dentro do Mac OS X e permitir o funcionamento de aplicativos no modo clssico, um representante oficial de uma certa empresa de Cupertino aqui no Brasil nos recomendou adquiri-lo de comerciantes da regio da Santa Ifignia, em So Paulo, j que o programa no era mais comercializado pela companhia! Todas as distores acima poderiam ser evitadas atravs de uma adoo mais disseminada do SL/CA, mas, desgraadamente, essa disseminao impedida em grande parte pela facilidade de obteno de software atravs da pirataria. Que tal nos engajarmos em uma campanha contra esse tipo de prtica? A Microsoft com certeza vai nos agradecer (ou no)... n
Rafael Peregrino da Silva Diretor de Redao 3

EDITORIAL

Diretor de operaes Claudio Bazzoli cbazzoli@linuxmagazine.com.br Na Internet: www.linuxmagazine.com.br Brasil www.linux-magazin.de Alemanha www.linux-magazine.com Portal Mundial www.linuxmagazine.com.au Austrlia www.linux-magazine.es Espanha www.linux-magazine.pl Polnia www.linux-magazine.co.uk Reino Unido www.linuxpromagazine.com Amrica do Norte Apesar de todos os cuidados possveis terem sido tomados durante a produo desta revista, a editora no responsvel por eventuais imprecises nela contidas ou por consequncias que advenham de seu uso. A utilizao de qualquer material da revista ocorre por conta e risco do leitor. Nenhum material pode ser reproduzido em qualquer meio, em parte ou no todo, sem permisso expressa da editora. Assume-se que qualquer correspondncia recebida, tal como cartas, emails, faxes, fotografias, artigos e desenhos, sejam fornecidos para publicao ou licenciamento a terceiros de forma mundial no-exclusiva pela Linux New Media do Brasil, a menos que explicitamente indicado. Linux uma marca registrada de Linus Torvalds. Linux Magazine publicada mensalmente por: Linux New Media do Brasil Editora Ltda. Rua So Bento, 500 Conj. 802 S 01010-001 So Paulo SP Brasil Tel.: +55 (0)11 3675-2600 Direitos Autorais e Marcas Registradas 2004 - 2012: Linux New Media do Brasil Editora Ltda. Impresso e Acabamento: Atendimento Assinante www.linuxnewmedia.com.br/atendimento So Paulo: +55 (0)11 3675-2600 Rio de Janeiro: +55 (0)21 3512 0888 Belo Horizonte: +55 (0)31 3516 1280 ISSN 1806-9428 Impresso no Brasil

Linux Magazine #99 | Fevereiro de 2013

NDICE

CAPA
prova de tudo Qual administrador de redes e sistemas pode atestar com toda a certeza o fato de que seus servidores so prova de falhas? Os 10 maiores truques de recuperao de sistemas  O Linux possui diversas ferramentas poderosas para correo e recuperao de sistemas danificados. Conhea-as e fique mais tranquilo se algo der errado! Recuperao de dados e parties Se o seu sistema Linux ou Windows no inicializar, ou se voc est preocupado com o fato de que o disco rgido est nas ltimas, a primeira coisa que a fazer salvar os dados da partio e copi-los para um local seguro. 40 32 31

www.linuxmagazine.com.br

Linux Magazine 99 |NDICE

COLUNAS
Augusto Campos Klaus Knopper Charly Khnast Alexandre Borges Kurt Seifried Zack Brown 07 08 10 12 14 18

ANLISE
Gesto avanada de arquivos Se o usurio j domina os comandos utilizados diariamente para realizar a manipulao de arquivos, pode querer fazer mais. 67

Vigilncia constante Aplicativos e processos raramente revelam o que fazem em segundo plano, mas algumas ferramentas interessantes para programadores e administradores podem monitorar essa atividade e registrar atividades no sistema.

71

NOTCIAS
Geral20 Nvidia considera vender smartphones e tablets Roteador de bolso da Asus promete ser o menor do mundo BitTorrent lana novo servio P2P , chamado Sync Nokia oficializa fim do sistema operacional Symbian

CORPORATE
Notcias22 Evernote planeja abertura de escritrio no Brasil VMware junta-se ao Open Source Software Institute

SEGURANA
Medidas preventivas Os rootkits permitem que invasores assumam o controle completo de um computador. Descrevemos os truques usados para obter acesso ao kernel Linux e orientaes sobre como realizar o hardening do kernel para prevenir tais ataques. 53

Entrevista com Marcos Polidoro Coluna: Jon maddog Hall Coluna: Cezar Taurion Coluna: Gilberto Magalhes

24 26 28 30

ANDROID
Do seu computador para o mundo Se voc criou um aplicativo que ir revolucionar o mercado Android, hora de aprender como public-lo para o mundo e, quem sabe, ganhar dinheiro com ele! 46

REDES
Redes velozes 57 Com o TCP Fast Open, o Google introduz uma extenso do protocolo TCP, implementado no kernel Linux, o que evita a latncia desnecessria no trfego de rede e promete at 41% de aumento na velocidade da rede, dependendo do aplicativo. 50

TUTORIAL
Transferncia de grandes arquivos Vrias alternativas permitem contornar os limites de tamanho quando transferimos um arquivo do ponto A ao ponto B. Piloto automtico Crie caixas de dilogo atraentes e interativas para seus usurios de desktop com o SSH e um pouco de conhecimento em Bash. 61

SERVIOS
Editorial03 Emails06 Linux.local78 Preview82

Linux Magazine #99 | Fevereiro de 2013

Coluna do Augusto

O rifle da discrdia
O licenciamento de software versus seus inmeros usos.

COLUNA

m rifle que custa US$17.000, foi apresentado em um evento internacional da indstria eletrnica no incio deste ano e acabou gerando vrias controvrsias. Uma delas nos interessa especialmente, pois trata de uma questo relacionada a uma caracterstica essencial das licenas livres e das licenas open source. A arma em questo foi projetada pela empresa texana TrackingPoint, que a chama de PGF, sigla em ingls para arma de fogo guiada com preciso. Alm dos componentes usuais de um rifle de caa, ela inclui um sistema que captura e analisa imagens de video por meio da mira da arma, e permite ao caador/usurio identificar e marcar seu alvo, e a partir da, o sistema se encarrega de acompanh-lo e, levando em conta as condies da arma, distncia, inclinao, temperatura, vento etc., e passa a mostrar com preciso onde a bala ir acertar, s liberando o gatilho para o disparo quando detecta que o alvo ser atingido. Para completar, o sistema registra tudo em video e permite acompanhar remotamente ao vivo em dispositivos mveis, ou mesmo postar depois em redes sociais e sites de compartilhamento. As controvrsias no tardaram a surgir, especialmente vindo dos campos contrrios prtica da caa ou s armas de fogo. So questes que merecem discusso, mas a que traz o assunto a esta pgina outra: o sistema de mira em questo executado sobre uma distribuio Linux instalada no rifle. Este detalhe, unido aos focos de controvrsia mencionados acima, levou a outra controvrsia, defendida por integrantes de ambos os grupos: por que a licena do Linux permite que ele seja usado em armamentos e/ou para a caa de animais? Isso no poderia ser corrigido?

Trata-se de uma pergunta frequente, entretanto, e muitas vezes associada a outras vises de mundo: por que a licena permite o uso em aplicativos que violam a privacidade de terceiros? Ou por governos totalitrios? Ou em atividades anti-ecolgicas? As respostas so frequentes tambm, vindas de pessoas como Richard Stallman ou mesmo o autor do kernel em questo, Linus Torvalds, que usa exemplos bem claros para ilustrar a questo: a licena em questo (a GPL) trata da disponibilidade do software e do cdigo-fonte correspondente, e no de qual o uso ser feito dele para isso, se houver algum mecanismo de controle a empregar, ser outro. No resumo torvaldiano, se algum usar o Linux na implementao de tubares mecnicos com lasers e disponibilizar o cdigo-fonte, a licena ter sido cumprida, e assim mesmo que ela funciona. A definio de licena livre (da FSF) exige que o usurio tenha a liberdade de executar o programa, para qualquer propsito (e estas trs ltimas palavras so importantes), e a definio de open source (da OSI) exige que as licenas no faam restrio quanto ao campo de aplicao ou de uso do software. Assim, vale a reflexo: o software um instrumento com muitos usos possveis, e o mesmo kernel que aciona um equipamento mdico pode fazer funcionar uma mirade arma, se este kernel for livre e open source. A discusso sobre se estes usos so corretos ou no, vlida, mas transcende a questo do licenciamento, exatamente como deveria ser. n
Augusto Csar Campos administrador de TI e, desde 1996, mantm o site BR-linux.org, que cobre a cena do Software Livre no Brasil e no mundo.

Linux Magazine #99 | Fevereiro de 2013

Coluna do Alexandre

NMAP stima parte


Conhea e entenda o funcionamento do Idle Scan, criado pelo hacker italiano popularmente chamado de Antirez.

COLUNA

m dos mtodos mais curiosos de escaneamento do NMAP aquele que conhecemos por Idle Scan, criado pelo hacker italiano Salvatore Sanfilippo (mais conhecido como Antirez), embora muitos profissionais desconheam seu funcionamento e utilidade. Para que esta metodologia de escaneamento funcione necessrio que tenhamos disponveis trs mquinas, da quais a primeira ser a mquina alvo, a segunda ser a nossa mquina (mquina invasora) e a terceira ser a mquina zumbi. Alm disso, um conceito que ser muito importante o IPID. Todo pacote que circula pela Internet carrega este identificador que, normalmente, incrementado de maneira sequencial. Uma dvida at este momento permanece: o que a mquina zumbi e porque precisamos dela? Ela a mquina que vamos usar como referncia, ou seja, nossos pacotes sero forjados (spoofed) para parecerem que foram originados desta mquina. No entanto, o assunto no termina aqui. Nosso escaneamento ser feito sem interao direta da mquina invasora com a mquina alvo j que estaremos inferindo se uma porta est ou no aberta de maneira indireta. Como isto funciona? A primeira e mais importante preocupao deste processo escolher uma mquina que esteja ociosa (da vem o nome idle scan) e que no esteja trafegando pacotes, ou seja, que no esteja sendo usada. E por qual motivo? A motivao pode ser justificada da seguinte forma: imagine que, como hackers, enviamos um pacote (SYN + ACK) para a mquina alvo e recebemos como resposta um RST (at porque ela no est esperando um SYN + ACK) com o IPID 40000. Esperamos um determinado tempo, repetimos o processo e a resposta vem em um pacote com o IPID 40001. Isto timo pois passaram alguns segundos e, quando enviamos um
12

pacote, a resposta veio com um incremento de apenas 1, o que significa que esta mquina no est trafegando pacotes, portanto est ociosa (idle) e perfeita para uso em um Idle Scan. Se estvessemos enviando um pacote, obtido uma primeira resposta com o IPID de 40000 e, na segunda vez, obtivssemos um IP de 45000, por exemplo, no seria uma boa escolha de mquina zumbi. E por que precisamos desta mquina zumbi? Para que possamos realizar o processo de escaneamento do seguinte modo: a mquina invasora envia um pacote (SYN) forjado (usando o IP da mquina zumbi) para a mquina alvo e em uma porta especfica (por exemplo: porta 23). Deste ponto, podem ocorrer trs possibilidades, sendo que apenas duas nos importam neste momento: ou a porta est aberta ou a porta est fechada. Se a porta

Um conceito muito importante o IPID. Todo pacote que circula pela Internet carrega este identificador que, normalmente, incrementado de maneira sequencial.
estiver aberta, a mquina alvo enviar uma resposta (SYN + ACK) para a mquina zumbi (lembre-se: ns forjamos o pacote) e permanece aguardando um retorno. Como a mquina zumbi, que inocente nesta histria, no esperava um pacote SYN + ACK j que esta no enviou um pacote SYN para a mquina alvo e nem

www.linuxmagazine.com.br

na porta explicitada (23), ela simplesmente responde com um pacote de RST (e com IPID=40002) para a mquina alvo, quebrando a conexo. Se a porta estiver fechada, a mquina alvo envia um pacote de RST (terminando a conexo) para a mquina zumbi (quebrando a conexo) e esta ltima simplesmente no envia nada em resposta, mantendo contagem do IPID em 40001. a que est a beleza do processo acima: se a porta escaneada est aberta, a mquina zumbi deve enviar um pacote RST (provavelmente com IPID 40002 j que est ociosa) para a mquina alvo ao receber dela um pacote com os parmetros SYN+ACK. Quer dizer que, se em seguida enviarmos, a partir da mquina hacker, um pacote SYN+ACK para a mquina zumbi, devemos receber um pacote com IPID 40003, confirmando que a porta 80 da mquina alvo est aberta. Caso seja retornado um pacote com IPID 40002, significa que a porta est fechada. Do exposto acima, segue a regra: acrscimo de 2 no IPID (IPID=40001 para IPID=40003) da mquina zumbi se traduz em porta aberta na mquina alvo e incremento de 1 no IPID da mquina zumbi significa que a porta aferida est fechada (IPID=40001 para IPID=40002) na mquina alvo.

Por fim, a parte mais fundamental que como executar este tipo de escaneamento no NMAP. Como mencionei antes, s vezes tudo funciona bem. Neste primeiro caso abaixo, est sendo realizado um escaneamento do tipo idle ( -sI), sem enviar um pacote ICMP inicial (-PN) envolvendo apenas as portas 22, 23, 25, 53, 80 e 110, onde a mquina zumbi 192.168.1.111 (Windows 7), a mquina alvo 192.168.1.102 (Ubuntu 11.10) e a mquina invasora (de onde partiu o escaneamento) tem endereo 192.168.1.80 (RHEL 6.0):
# nmap -PN -p22,23,25,53,80,110 -sI 192.168.1.111 192.168.1.102

Se funcionar, o leitor ver o escaneamento sendo realizado, caso contrrio, uma mensagem do NMAP ser explicitada explicando para que seja tentada outra mquina como zumbi. n
Alexandre Borges (linkedin: br.linkedin.com/in/aleborges) instrutor e especialista snior em sistemas operacionais Unix, Linux, Banco de Dados, Virtualizao, Cluster, Storage, Servidores, Backup, Desempenho e Segurana, alm de possuir profundo envolvimento com assuntos relacionados ao kernel Linux.

Tem novidade na Coleo Academy!

Instalao e congifurao de servidores VoIP com Asterisk. Configurao de ramais, extenses, secretria eletrnica, monitoramento e espionagem de chamadas, planos de discagem, URA e muitos outros aspectos que abordam o uso de centrais telefnicas IP PBX.
Disponvel no site www.LinuxMagazine.com.br

Linux Magazine #99 | Fevereiro de 2012

13

Coluna do Kurt

Backup seguro de sistemas


F
azer cpias de segurana dos seus dados fundamental. Se no criarmos backups utilizveis regularmente, quaisquer interrupes, falhas de disco ou erros administrativos podem causar a perda permanente de dados. Mas, embora os backups abordem os aspectos de disponibilidade e at certo grau de integridade da trade de segurana AIC (disponibilidade, integridade, confidencialidade), podem apresentar riscos significativos no que diz respeito confidencialidade ou sigilo dos dados. Em outras palavras, quando centralizamos todos os dados no armazenamento removvel (como, por exemplo, em fitas), as coisas podem ficar ruins muito rapidamente se as fitas forem extraviadas ou roubadas.

COLUNA

Criar backups uma coisa, ter a certeza de que eles so seguros outra. Conhea algumas dicas para garantir que o processo seja o menos doloroso possvel.

Backups criptografados

A soluo, claro, criptografar os backups. Dependendo do risco que estiver disposto a correr, uma criptografia forte pode at permitir o armazenamento de arquivos em locais potencialmente inseguros (por exemplo, em uma nuvem pblica). Em geral, a maioria dos programas de backup suportam AES de 256-bit, que so extremamente fortes; portanto, com chaves corretamente geradas que esto seguras contra invasores, os dados permanecero seguros por pelo menos algumas dcadas. No entanto, devemos considerar vrias outras questes ao decidir como aplicar criptografia aos backups e como gerenciar as chaves de criptografia.

e vice-versa (por exemplo, para que o invasor no possa injetar dados maliciosos em backups que posteriormente sero utilizados para restaurar um sistema). Solues tpicas aqui incluiriam SSL com certificados ou softwares VPN, tais como o uso de certificados IPsec ou autenticao compartilhada. Dados em repouso tambm apresentam alguns desafios significativos j que podem possuir vida til legvel medida em dcadas ou mais. Alm disso, a densidade dos meios de armazenamento modernos significa que algo do tamanho de um livro de bolso pode conter praticamente todos os dados que so importantes para um usurio. Controle de inventrio um recurso muitas vezes ignorado, mas, ter a certeza de que sabemos onde esto os backups e garantir que estejam sob controle, ou sob o controle de uma terceira parte confivel, fundamental para garantir longa vida aos dados em repouso.

Cliente ou servidor?

Dados em trnsito e em repouso

De um modo geral, os dados so considerados em trnsito (quando enviados atravs de uma rede) ou em repouso (quando escritos para a mdias externas ou disco rgido). Dados em trnsito so vulnerveis interceptao at mesmo redes locais podem ser comprometidas e configuradas para espelhar dados para um servidor controlado pelo invasor. Isto significa que qualquer criptografia usada para proteger dados em trnsito tambm deve permitir ao cliente autenticar no servidor
14

Uma questo importante onde fazer a criptografia. A maioria das solues de backup so agora baseadas em cliente/servidor, pois quase todo mundo tem mais de um servidor para fazer backup, ento precisamos de algum gerenciamento centralizado para manter tudo funcionando corretamente. Se criptografarmos os dados no cliente, os dados sero codificados de imediato e o risco de exposio minimizado. A desvantagem, porm, que a verificao de dados no servidor exigir as chaves privadas para estar presente, o que poderia criar um alvo potencial para os invasores. Criptografar os dados no servidor centralizaria o gerenciamento de chave e permitiria realizar mais facilmente a desduplicao.

Gerenciamento de chave

Se perdermos as chaves dos dados criptografados ou as frases utilizadas para desbloque-los, tambm perderemos o acesso a eles. Isso tambm significa que, se as pessoas que

www.linuxmagazine.com.br

conhecem as senhas morrerem ou deixarem a empresa, tambm se perder o acesso aos dados. Em outras palavras, destaque mais de uma pessoa para acess-los. Dividir a frase (por exemplo, cada pessoa digita uma metade da frase) tambm pode impedir que algum venda todos os dados para um concorrente. Rotacionar chaves tambm uma boa ideia, em parte porque ajuda a reforar as polticas para lidar com as mudanas de chave, que costumam acontecer quando as pessoas entram e saem de sua organizao, mas tambm porque quanto mais dados criptografados utilizando uma chave nica, mais srio ser o compromisso atribudo essa chave. Finalmente, certos requisitos legais podem afetar a reteno e acesso s chaves de criptografia, portanto, consulte um advogado, se necessrio (estas exigncias aplicam-se principalmente a informaes financeiras, de sade e informaes pessoais, mas diferem amplamente por pas, ento preciso manter-se informado a respeito).

claro que existem centenas de outros programas de backup de cdigo aberto disponveis a maioria deles no so muito bons (ou seja, carecem de refinamento, recursos etc.) assim, em geral, aconselhamos o usurio a aderir ao Amanda ou ao Bacula. O Bacula atualmente tambm oferece desduplicao limitada a arquivo; no entanto, o recurso relativamente simples: o usurio especifica uma base de backup (por exemplo, de um servidor padro), e depois faz o backup de servidores adicionais que executam o mesmo software, onde o Bacula ir desduplicar no nvel de arquivo. A boa notcia que vrios sistemas de arquivos j oferecem suporte a desduplicao, como o Opendedup [3], ento esta tecnologia deve estar disponvel no Amanda e no Bacula tambm, em algum momento.

Backup NoSQL

Tipos de dados

Antes de falar sobre o software de backup, mencionaremos brevemente os diferentes tipos de dados que precisam de resguardo. O primeiro tipo (e mais simples) simplesmente de onde devemos pegar o arquivo inteiro. O prximo tipo de dados estruturados, tais como bancos de dados, servios NoSQL e assim por diante. O desafio aqui que no podemos pegar diretamente os arquivos porque eles no esto em um estado consistente (os dados podem estar espera de serem gravados, transaes podem estar inacabadas etc). Nestes casos, desligar o servio e depois pegar o arquivo raramente uma opo pois interrupes no so possveis. Isto significa que o software de backup realmente precisa comunicar-se com o aplicativo. Para os aplicativos mais populares (como a maioria dos bancos de dados), encontrar software de backup que possa se comunicar com eles e extrair os dados no deve ser muito difcil. No entanto, para muitas solues NoSQL modernas e de Big Data, backups ainda podem ser um desafio, ento o usurio poderia pensar em arquitetar seu software para tornar os backups possveis (por exemplo, gravando dados de objeto para um arquivo de log ou enviando objetos para um servidor de backup para ser arquivado).

Embora quase todos os servios NoSQL possuam redundncia embutida e distribuio de dados, este recurso no ajudar se o usurio cometer um erro administrativo e apagar um monte de dados ou ainda se o centro de dados inteiro ficar alagado (como aconteceu recentemente durante a passagem do furaco Sandy pelos Estados Unidos). Com os sistemas NoSQL, normalmente possumos trs opes: voltar o sistema de arquivos (por exemplo, usando snapshots LVM), replicar os dados para fora do local, e usar uma ferramenta especfica para extrair todos os dados.

Concluso

Backup de software

No mundo Linux h vrias opes para softwares de backup. Dois dos mais populares so o Amanda [1] e o Bacula [2]. Ambos so em cdigo aberto, e o Amanda suportado pelo Zmanda, que constri uma verso comercial do Amanda com recursos adicionais. O Bacula oferece suporte para o SQLite, MySQL e PostgreSQL. O Amanda tambm pode suport-los, mas precisaremos basicamente criar alguns scripts para esvaziar os bancos de dados primeiro.

Considerando o quo popular a Big Data est se tornando, no nenhuma surpresa que as solues e estratgias de backup estejam correndo atrs do prejuzo. Para solues NoSQL, criar backups mantendo o funcionamento do sistema pode ser um desafio, logo, o planejamento para estas situaes agora pode poupar muitas dores de cabea posteriores. E, caso o leitor no esteja utilizando NoSQL ainda, as possibilidades so de que venha a utiliz-lo em um futuro prximo, portanto melhor j tomar a frente da curva de aprendizado. Em algum momento, esperamos obter bons recursos de dumping construdos sobre programas de backup existentes, porque as coisas s devem comear a ficar maiores. n

Mais informaes
[1] Amanda: http://www.amanda.org [2] Bacula: http://www.bacula.org [3] Opendedup: http://www.opendedup.org

Linux Magazine #99 | Fevereiro de 2013

15

CORPORATE| Entrevista: Marcos Polidoro

Entrevista: Marcos Polidoro

CORPORATE

A volta por cima


Depois de enfrentar diversos altos e baixos, a Mandriva, com sua subsidiria brasileira atualmente alocada na cidade de Curitiba, no Paran, d a volta por cima em grande estilo. por Flvia Jobstraibizer

m entrevista exclusiva para a Linux Magazine, Marcos Polidoro, CEO da Mandriva, nos conta quais foram os problemas enfrentados pela empresa e dos quais diversos boatos surgiram e como a companhia conseguiu dar a volta por cima, lanando e mantendo produtos inovadores no mercado. Linux Magazine Como a Mandriva se posiciona no mercado atual, frente aos seus concorrentes diretos como Suse, Red Hat etc.? Marcos Polidoro A Mandriva uma empresa especializada no fornecimento de produtos, solues, servios e treinamentos em Linux. Assim como estas empresas, a Mandriva possui uma verso gratuita de seu sistema operacional, desenvolvida em colaborao com a comunidade, chamada OpenMandriva. Tambm possumos uma verso Enterprise do sistema para atender s necessidades das empresas e governo. Sendo a nica empresa europeia focada em uma distribuio Linux especfica para servidores, temos como objetivo nos diferenciar pelos esforos que colocamos em nossos produtos com a finalidade de garantir a integridade e confidencialidade dos dados de nossos clientes. O nosso lema Proclame sua independncia digital, e exatamente isso o que queremos para os nossos clientes. Independncia, livre de qualquer influncia externa.
24

LM Sobre os boatos acerca do fechamento da Mandriva, o que mito e o que verdade? MP Passamos por um momento de turbulncia devido algumas divergncias entre os investidores. Felizmente essa situao foi resolvida em maro de 2012 e, desde ento, estamos trabalhando fortemente no desenvolvimento de produtos inovadores. LM Os problemas enfrentados pela Mandriva a fizeram levantarse/ressurgir mais forte? Conte-nos mais a respeito. MP A Mandriva teve problemas no passado por concentrar seus esforos na distribuio voltada para desktop, o que no sob o nosso ponto de vista essencial atualmente. Decidimos em 2012 focar somente em produtos corporativos, no sentido de oferecer a melhor e mais amigvel verso para servidores, bem como aplicativos para seu pleno gerenciamento. LM Quais so as metas a serem seguidas para o ano de 2013 e os planos para o futuro? MP A principal e mais importante meta que temos atualmente manter a qualidade de nossos produtos e servios para os atuais clientes e, atravs de nossos novos produtos para servidor, trazer a facilidade de uso da distribuio para o mercado, permitindo que as empresas gastem menos tempo e recursos de TI. Temos tambm, a in-

teno de desenvolver parcerias com integradores e fornecedores de hardware. Estamos atentos s tendncias de mercado e desenvolvendo solues especficas para essas tendncias. O produto CloudPulse (produto voltado para o inventrio e monitoramento de parques computacionais baseados em nuvem), lanado em setembro de 2012, nos proporcionou uma excelente experincia, mostrando uma perfeita adequao para as empresas que estamos buscando. LM Qual o principal foco da Mandriva neste momento? MP Estamos focados no mercado corporativo, em parcerias de OEM (Original Equipment Manufacturer, ou seja, distribuies embarcadas nativamente em conjunto com o hardware) e fornecedores de hardware. Alm disso, estamos investindo muito em pesquisa e desenvolvimento, o que em breve, nos proporcionar novos produtos. LM Quais so os principais novos produtos que a Mandriva possui ou est pretendendo inserir no mercado a curto prazo? MP Estamos com uma variedade de produtos muito interessantes, que resumidamente possuem as seguintes caractersticas: Mandriva Class uma soluo completa para administrao e controle de salas de aula, permitindo integrao entre o professor e seus alunos. O pro-

www.linuxmagazine.com.br

Entrevista: Marcos Polidoro | CORPORATE

fessor tem total controle das atividades em sala de aula, definindo e controlando as atividades e computadores dos alunos. O produto compatvel com Linux, Windows, Mac OS X e em breve Android. Mandriva Pulse2 uma soluo de inventrio de hardware e software incluindo sistema integrado de helpdesk, backup e restaurao de sistemas. Este produto compatvel com Linux, Windows, Mac OS X e Android. Mandriva CloudPulse uma soluo com todas as caractersticas do Pulse2 mas hospedada e gerenciada atravs da nuvem de forma segura. Mandriva Business Server (MBS) uma soluo corporativa da Mandriva para servidores de pequenas, mdias e grandes empresas, onde toda a configurao do servidor realizada atravs de uma interface gil e simples, com a utilizao do navegador preferido pelo administrador. Mandriva OEM uma verso do Mandriva Linux totalmente personalizada para ser embarcada em desktops, notebooks, netbooks e All-in-Ones de acordo com as necessidades e pr-requisitos do cliente. Mandriva Thin Client um mini sistema Mandriva Linux personalizado e otimizado para funcionamento em thin clients e equipamentos de pequeno porte em geral. Mandriva ARM um porte da distribuio Mandriva Linux para a plataforma ARM, atualmente em fase de testes em alguns modelos de leitores de ebook. Mandriva Training uma linha completa e atualizada de treinamentos profissionais e certificaes em Linux. LM A Mandriva Conectiva Brasil participa da Fundao Mandriva criada recentemente na Frana? Como esta participao e no que ela consiste? MP A responsabilidade da distribuio para desktops foi transferida para a comunidade OpenMandriva e tornou-se um projeto independente.

Mas importante frisar que a Mandriva SA apoia fortemente este projeto, patrocinando servidores e participando com desenvolvedores e gerentes de desenvolvimento no Brasil e na Frana. LM Com quais verticais de mercado a Mandriva pretende alinhar-se? MP Nosso principal objetivo so SMEs (Small and Medium Enterprises ou pequenas e mdias empresas). Acreditamos que este mercado especfico no suficientemente direcionado para grandes players e essas empresas podem obter grandes benefcios ao mudar para software livre e de cdigo aberto. Porm, temos estudos de casos concretos para atender governos e grandes corporaes. Possivelmente lanaremos uma oferta direcionada a este mercado ainda este ano. LM Como est o cenrio da participao societria da Mandriva e como est a Mandriva Brasil nesse sentido? MP Sendo a Mandriva uma sociedade annima, possui uma estrutura de acionistas que evolui a cada dia. Atualmente, est basicamente composta por: Uma empresa de investimento com sede em Chipre (Turquia) Uma empresa Sua Mandriva SA Gesto LM Qual a atual presena de mercado da empresa? Ela possui filiais no Brasil? No mundo? Quais so e onde esto localizadas? MP A Mandriva est sediada em Paris, na Frana e possui sua subsidiria brasileira em Curitiba, no Paran. Temos ainda representantes na Rssia, Austrlia, Alemanha, Coria do Sul, Egito, frica e Oriente Mdio. LM Quais foram os projetos mais significativos no qual a Mandriva esteve envolvida em 2012 e qual o significado destes para a empresa? MP O PROUCA Programa um computador por Aluno do Governo Federal, sem dvidas foi um dos mais significativos e desafiadores dos ltimos anos. Desenvolvemos

uma verso totalmente adaptada para educao em parceria com a Intel e a Positivo Informtica e que dos maiores projetos tecnolgicos voltados para a educao do Brasil. Foi realmente um grande desafio e ao mesmo tempo muito gratificante, pois sabamos que a maioria das crianas teriam a sua primeira experincia com computadores usando o nosso sistema Linux. Outros projetos interessantes no podem ser citados por estarem sob NDA (acordo de confidencialidade). LM Quais so os principais parceiros da Mandriva neste momento? MP Temos grandes parceiros nos segmentos de comrcio, educao, hardware e indstria. A lista completa dos principais parceiros pode ser vista em nosso site [1]. LM A Mandriva prov suporte a nvel empresarial ou domstico para seus produtos? Como empresas e usurios podem beneficiar-se disso? MP Fornecemos uma ampla gama de suporte empresarial para os nossos produtos. Isso inclui recursos bsicos como acesso a nossa base de conhecimento (FAQ), suporte tcnico por e-mail, telefone, acesso remoto e on-site com tempos de resposta garantidos. Como a linha de produto Desktop foi transferida para a Comunidade, no oferecemos atualmente suporte aos usurios domsticos. LM Outros itens que deseja acrescentar? MP Acredito que resumidamente conseguimos esclarecer a situao atual da Mandriva e de nossos planos para o futuro. Queremos aproveitar para agradecer a oportunidade da entrevista e esperamos demonstrar alguns de nossos novos produtos nas prximas edies. n

Mais informaes
[1] Mandriva: http://www. mandriva.com.br

Linux Magazine #99 | Fevereiro de 2013

25

Recuperao de sistemas

prova de tudo
Qual administrador de redes e sistemas pode atestar com toda a certeza o fato de que seus servidores so prova de falhas? por Flvia Jobstraibizer

CAPA

ervidores e sistemas so como pessoas: em algum momento esto sujeitos erros ou falhas. E assim como as pessoas, os sistemas tambm esto propensos uma diversidade de fatores que podem acarretar problemas: uma queda de energia que danifica os setores de um disco, uma falha no sistema de armazenamento de dados por conta da proximidade do trmino da vida til do disco, um superaquecimento que danificou alguma partio etc. So inmeros os problemas que podem colocar os seus dados em risco. A recuperao de um sistema pode ser o fator crucial para a continuidade do negcio, pois comum que as empresas apostem em storages (robustos sistemas de armazenamento, geralmente com espelhamento e duplicao para backup) para armazenar todo tipo de informao de clientes, passando por dados desde os mais simples, chegando at mesmo a dados confidenciais. A perda de um disco, por exemplo, pode ser prejudicial em carter irrevogvel, acarretando prejuzos incalculveis. Nem sempre podemos contar que o sistema de backup estar disponvel ou ntegro (backups tambm esto sujeitos falhas ou corrupo dos dados),

e portanto h a necessidade de entender e dominar as tcnicas de recuperao de dados, conhecimento este, que pode ser til para a recuperao de um desktop da rede, de um servidor, de um storage ou mesmo do servidor de backup da empresa. Nesta edio da Linux Magazine, vamos abordar um pouco do extenso tema Recuperao de Sistemas. Klaus Knopper, nosso colunista, aborda este tema atravs de um artigo contendo as dez principais dicas para recuperao de sistemas, e que pode ser um excelente ponto de partida para voc que est enfrentando o problema de perda de partio, impossibilidade de inicializao por conta da corrupo do bootloader e outros problemas. Outro importante artigo trata da recuperao de dados e parties, problema comum quando algo simplesmente desaparece do sistema. Como chegar at seus dados quando o sistema simplesmente se recusa a inicializar ou a cooperar? Boa leitura! n
 Matrias de capa Os 10 maiores truques de recuperao de sistemas Recuperao de dados e parties 34 38

Linux Magazine #99 | Fevereiro de 2013

31

Publicao de aplicativos no Google Play

ANDROID

Do seu computador para o mundo


Se voc criou um aplicativo que ir revolucionar o mercado Android, hora de aprender como public-lo para o mundo e, quem sabe, ganhar dinheiro com ele! por Flvia Jobstraibizer

om a facilidade de programao proveniente dos SDKs (Software Development Kit ou Kit para Desenvolvimento de Software) para desenvolvimento Android, muitos programadores j se aventuraram ou decidiram especializar-se na criao e desenvolvimento de aplicativos para o sistema operacional mvel da gigante de Redmond. Com cada vez mais fabricantes adotando o Android como sistema operacional padro, h tambm um aumento na demanda e consequentemente na oferta por aplicativos, que diariamente so lanados na loja do Google. Uma tmida fatia destes aplicativos atualmente est sendo desenvolvida por brasileiros. De acordo com um estudo realizado pelo site The Sociable [1], o Google Play est prestes a chegar incrvel marca de um milho de aplicativos publicados, possuindo atualmente cerca de 850.000 soft46

wares prontos para serem baixados nos dispositivos que utilizam-se do sistema operacional mvel mais popular do mercado. Se a previso apontada pelo estudo estiver correta, a loja do Google ser a primeira e nica loja de aplicativos existente no mercado at o presente momento, claro que atingir esta marca, deixando pra trs outras lojas como a famosa Apple Store e a posio de lanterninha para a Windows Phone Store. Alinhados com este sucesso, cada vez mais desenvolvedores procuram por cursos, assistem palestras e se especializam na criao de aplicativos cada vez mais teis e eficazes. No mercado brasileiro temos inmeros aplicativos teis e bem desenvolvidos, dentre os quais podemos citar o programa para monitoramento do catico trnsito brasileiro, o MapLink Trnsito. Outros timos exemplos so os aplicativos bancrios como o Caixa e o Ita, aplicativos dos respectivos

bancos e nos quais possvel efetuar quase todos os tipos de transaes, da mesma forma que seria feito atravs do Internet Banking. Aplicativos de grandes livrarias com leitores de livros integrados ou mesmo para comprar remdios em farmcias tambm esto disponveis. Todos eles criados por brasileiros e disponveis no Google Play. Sendo assim, imagino que o leitor que ou pretende ser um desenvolvedor profissional esteja vido por obter informaes sobre como entrar neste mundo mgico dos fornecedores de aplicativos do Google Play. o que voc vai aprender nas proximas pginas.

Exportar seu aplicativo

O primeiro passo aps a concluso efetiva do desenvolvimento do seu aplicativo, export-lo para o formato instalvel em dispositivos Android. Antes de pensar em enviar para o Google Play, impor-

www.linuxmagazine.com.br

Publicao de aplicativos no Google Play | ANDROID

tante que o desenvolvedor instale o aplicativo fisicamente na maior quantidade possvel de aparelhos (compartilhe seu aplicativo com os amigos, por exemplo) para que possveis erros sejam corrigidos antes que os usurios faam suas crticas na pgina do produto na loja do Google, o que queimaria seu lanamento logo no incio. Para enviar o seu aplicativo para os amigos sem a necessidade de passos adicionais, simplesmente acesse o diretrio bin do seu aplicativo e copie o arquivo com a extenso .apk presente na pasta. Este arquivo poder ser instalado em qualquer dispositivo, mas como no se trata de um arquivo assinado digitalmente ( assinado por uma chave fictcia criada pelo Eclipse) no deve ser enviado para o Google Play. importante lembrar ainda, que, se o seu aplicativo foi criado com a opo debuggable="true" (presente no arquivo AndroidManifest.xml), voc deve retir-la antes de exportar o arquivo final. Como a esmagadora maioria dos desenvolvedores utilizam o Eclipse como ambiente de desenvolvimento, nos basearemos nele durante os passos de exportao do aplicativo. Com o aplictivo pronto, clique em File/Export para iniciar o processo de exportao do aplicativo. Na janela que ser aberta, selecione a opo Export Android Application (figura 1). Caso voc tenha diversos projetos armazenados, o Eclipse pode perguntar qual deles deseja exportar. Basta selecion-lo clicando no boto Browse. O Eclipse ir verificar se existem erros e caso contrrio voc poder continuar clicando em Next. Para garantir a autenticidade do seu aplicativo, necessrio assin-lo atravs de um certificado digital. Os certificados podem ser adquiridos pelas principais empresas de certificao como Certisign e Thawte, mas seus

Figura 1 O assistente do Eclipse auxilia o desenvolvedor no processo de


exportao do aplicativo.

preos so razoavelmente altos. Se voc um desenvolvedor amador e no pretende seguir a linha de empresa de aplicativos Android, poder utilizar um certificado auto-assinado, ou seja, voc emite um certificado, o assina digitalmente atravs de uma senha e assim poder exportar seu aplicativo. Caso queira vender seus aplicativos e possuir muitos deles ou pretende ser um fornecedor profissional, o ideal adquirir um certificado de assinatura de cdigo de uma das empresas que os fornece. Para gerar um pacote auto-assinado, clique na opo Create new keystore. Informe a localizao onde ser criado o arquivo (uma boa prtica criar uma pasta apenas com as keytores dos seus aplicativos e armazen-las todas juntas) e uma senha para este arquivo-chave (figura 2). Na tela seguinte, ser necessrio preencher algumas informaes adicionais sobre a keystore autoassinada que estamos criando. Os

campos obrigatrios so: Alias, onde deve ser preenchido o apelido ou nome do seu aplicativo, a senha da keystore criada anteriormente (e sua respectiva confirmao), a validade do certificado, que atualmente o Google recomenda que seja de 30 anos, o nome do proprietrio ou desenvolvedor do software e a unidade organizacional. Os demais campos so opcionais (figura 3). A seguir informe a localizao do seu arquivo .apk (novamente, seria interessante criar um diretrio em seu computador contendo todos os seus arquivos finais, para melhor organizao). Ser exibida a informao de que o certificado auto-assinado ir expirar em 30 anos e ento basta clicar no boto Finish.

Desenvolvedor oficial

Diferentemente do que acontece em outros pases onde o incentivo para a criao de aplicativos imenso, para o Brasil a coisa no to simples (como
47

Linux Magazine #99 | Fevereiro de 2013

Figura 2 Crie uma keystore nica para assinar seu

aplicativo. Isso exigido pelo Google Play.

Figura 3 Preencha corretamente as informaes necessrias


para identificao do aplicativo e desenvolvedor.

quase tudo, por aqui). Brasileiros no so isentos da taxa de publicao de aplicativos, como o caso de pases como Canad e at mesmo Chile. Desenvolvedores brasileiros necessitam pagar a taxa nica de US$25,00 para terem seus cadastros validados como desenvolvedor. Caso j possua uma conta de usurio no Google (atravs de qualquer servio da empresa), basta acessar o endereo oficial de publicao de contedos [2]. Aps efetuar o login, voc ter acesso ao console de desenvolvedor, onde ser exibido o Contrato do Desenvolvedor e onde necessrio aceitar os termos do Google Play e tambm h informaes sobre como efetuar o pagamento da taxa para desbloqueio de sua conta (figura 4). Aceite os termos de registro e aps clicar no boto Continuar pagamento, uma janela do Google Wallet ser aberta solicitando os dados do seu carto de crdito. necessrio que o carto de crdito seja internacional para que o pagamento seja processado. Geralmente, o processamento do pagamento e a liberao do console do desenvolvedor para a publicao de aplicativos leva dois dias teis.
48

Aps a concluso deste processo, o desenvolvedor receber um simptico email contendo mais informaes sobre o console do desenvolvedor.

Publicao do aplicativo
Aps a liberao de sua conta, a publicao do aplicativo simples: basta clicar no boto Upload Application e selecionar o arquivo .apk criado anteriormente (figura 5).

Sero solicitadas uma diversidade de informaes que devem ser preenchidas como, por exemplo: Capturas de tela do aplicativo (so obrigatrias pelo menos duas) cone em alta resoluo Outras informaes opcionais como algum banner para algum tipo de promoo Em seguida informa o idioma do aplicativo, o ttulo, sua descrio bsica (como funciona o aplicativo, basicamente), as mudanas

Figura 4 Novos desenvolvedores devem desembolsar uma quantia nica


para criar sua conta no Developer Console.

www.linuxmagazine.com.br

Publicao de aplicativos no Google Play | ANDROID

Figura 5 Enviar novos aplicativos simples: um clique em um boto e o preenchimento padro de uma tela com as
informaes solicitadas.

mais recentes, a categoria onde se encaixa (educacional, jogo etc.). Selecione ainda os pases para os quais deseja distribuir seu aplicativo (pases fora da lista no podero sequer visualizar seu aplicativo) e informaes de contato do desenvolvedor (site, e-mail etc.). O formulrio bastante intuitivo e fcil de ser preenchido. Uma vez enviado o aplicativo, geralmente leva algumas horas (ou at mesmo um dia til) para que

este seja publicado na loja. Esta demora se deve ao fato de que so realizadas verificaes relacionadas a vrus, pornografia e outras verificaes bsicas, que, aps concludas, tornam apto o aplicativo a ser distribudo na loja.

Informaes importantes
Caso sua inteno seja publicar

criar uma, com um site vlido) e o restante ser absorvido pelo Google Play. Mantenha as keystores do seus aplicativos em segurana. No momento de atualizar seu aplicativo e reenvi-lo para o Google Play, a mesma assinatura deve ser utilizada.

Concluso

Sobre o autor
Flvia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietrias. Atualmente editora-chefe das revistas Linux Magazine, Admin Magazine e ct.

um aplicativo gratuito, esteja ciente de que, uma vez publicado como gratuito, no ser mais possvel alterar para aplicativo pago. Ser necessrio criar outro aplicativo (uma verso Pro, por exemplo) e ento cadastrla como aplicativo pago. Para os aplicativo pagos, cada venda gerar um repasse de 70% do valor de venda para o desenvolvedor, disponibilizados em sua conta do Google AdSense (sim, ser necessrio

H inmeras vantagens para o desenvolvedor que divulga seus aplicativos no Google Play. Alm de potenciais rendimentos provenientes de seus aplicativos pagos, o desenvolvedor passa a obter reconhecimento conforme seus aplicativos tornam-se conhecidos. Existem inmeras vertentes onde o desenvolvedor pode investir no momento de criar um aplicativo. A demanda por aplicativos relevantes e que mudem o mundo, ainda est por a! n

Gostou do artigo?
Queremos ouvir sua opinio. Fale conosco em cartas@linuxmagazine.com.br Este artigo no nosso site: http://lnm.com.br/article/8112

Mais informaes
[1] Estudo do The Sociable sobre o Google Play: http://sociable.co/ mobile/google-play-will-hit-one-billion-apps-this-june/ [2] Console do desenvolvedor no Google Play: https:// play.google.com/apps/publish/

Linux Magazine #99 | Fevereiro de 2013

49

Acelerao de rede | REDES

Acelerao de rede

REDES

Redes velozes

Com o TCP Fast Open, o Google introduz uma extenso do protocolo TCP, implementado no kernel Linux, o que evita a latncia desnecessria no trfego de rede e promete at 41% de aumento na velocidade da rede, dependendo do aplicativo. por Timo Schler

E A

m meados de 2011, o time Torne a web mais rpida do Google, que liderado por Sivasankar Radhakrishnan, Arvind Jain, Yuchung Cheng, e Jerry Chu, apresentou um projeto para reduzir a latncia das redes em geral. A tcnica, que chamada de TCP Fast Open (TFO) [1] [2], depende da simplicidade do processo de abertura de uma sesso TCP. ideia em si no nova voltando 1994, e s RFC1379 e RFC1644 [3] [4] especificaram de forma similiar ao conceito do TCP Transacional (T/TCP). Infelizmente, uma anlise publicada em setembro de 1996, revelou srios problemas de segurana com o T/TCP [5], e a tcnica no conseguiu estabelecer-se em uma abordagem mais ampla. Com base nesta experincia anterior, a equipe do Google aperfeioou a abordagem desenvolvendo o TFO, levando a um melhor resultado. O kernel Linux 3.6 implementa a infraestrutura cliente necessria, e a verso 3.7 ir incluir suporte para o TFO no lado servidor, dessa forma,

parece que a era de conexes TCP mais rpidas pode estar bem prxima.

Os ladres de tempo

A maior parte do trfego de Internet da atualidade caracterizado por fluxos de dados relativamente curtos. Em um site, por exemplo, vrias sesses TCP simultneas so abertas momentaneamente para transferir uma quantidade relativamente pequena de dados que incluem muitos elementos pequenos (por exemplo, cdigo HTML, pequenos grficos e JavaScript) [6]. Por conta do alto custo de desempenho associado em estabelecer conexes TCP repetidamente, os navegadores muitas vezes tentam manter conexes no utilizadas abertas aps a primeira requisio de um site (estas so conhecidas como conexes persistentes). Mas, nos servidores com alto trfego, os administradores configuram controles de tempo de espera (timeout) muito apertados para evitar amarrar recursos desnecessariamente. Assim, o tempo necessrio para abrir e voltar a abrir as conexes TCP conti-

nua a ser uma fonte de problemas de desempenho. Para aqueles que por acaso no estejam familiarizados com o elaborado ritual para iniciar conexes TCP, o processo muitas vezes chamado de aperto de mo de trs vias (figura 1). O cliente solicita o servidor de destino apropriado (SYN, synchronize). O servidor responde, se o pedido do cliente for legtimo, com um SYN ACK para confirmar o pedido de conexo do cliente. Nesta fase, parmetros so trocados para o tamanho mximo do segmento (Maximum Segment Size, ou MSS), o nmero mximo de bytes do corpo de dados a ser transmitido em um segmento TCP permitido entre as extremidades da conexo, e o nmero de sequncia inicial (Initial Sequence Number, ou ISN), um nmero nico para certificar-se de que a transmisso est na ordem correta e detectar duplicaes; ainda no h troca de dados. A princpio, as RFCs que definem o protocolo TCP [7] [8] permitem a transferncia do corpo de dados nesta fase, mas a transferncia de
51

Linux Magazine #99 | Fevereiro de 2013

REDES| Acelerao de rede

dados no pode ser processada antes de a conexo ser estabelecida. Neste momento o cliente envia um ACK para completar a conexo; o corpo de dados, ou seja, o endereo da pgina a ser aberto no navegador, no foi transferido para o servidor at este ponto. Em outras palavras, no momento em que o primeiro corpo de dados foi transferido nos trs passos da conexo, os pacotes j viajavam do cliente para o servidor e foram devolvidos. Isto resulta em tempos de ida e volta desnecessrios (Round Trip Time, ou RTT) de vrias dezenas de milissegundos, o que pode ser evitado pelo uso de TFO. O TFO acelera o processo de inicializao de sesso atravs da introduo de um cookie TFO. Quando um cliente TFO habilitado envia uma requisio de conexo, o servidor requisitado primeiro gera o cookie e envia para o cliente garantindo as estruturas de conexo na segunda etapa (SYN ACK) (figura 2). Nenhum outro dado trocado. Entre outras coisas, o cookie inclui o endereo IP criptografado do cliente. O processo de requisio, gerao e troca de cookies ocorre de forma independente na pilha TCP, dessa forma os desenvolvedores de aplicativos no precisam se preocupar com isso. No entanto, observe que no existem mecanismos para identificar vrias requisies SYN antes de gerar o cookie o Google parece querer confiar na idempotncia do servidor web requisitado (por exemplo, para pginas estticas) ou contar com o aplicativo para detectar pedidos duplicados do mesmo cliente.

uma URL, com o pedido do prximo SYN; uma nova opo TCP foi introduzida para lidar com esta situao. O servidor requisitado valida o cookie e assim garante que o endereo IP criptografado armazenado no cookie corresponda ao do cliente requerente.

Se tudo estiver certo, o servidor pode agora, no passo 2, devolver o corpo de dados antes de receber um ACK do cliente. Em comparao com o mtodo tradicional, ele evita um RTT completo (figura 3).

Figura 1 O tradicional aperto de mo de trs vias do protocolo TCP.

A vida na via rpida

Depois de configurar a conexo com os trs passos utilizados pelo TCP legado, o cliente tem o cookie TFO, que pode ser usado para evitar a repetio do aperto de mo em conexes futuras. O cliente envia o cookie de TFO e o corpo de dados, tal como
52

Figura 2 Configurao inicial da conexo usando o TCP Fast Open (gerando


um cookie TFO).

www.linuxmagazine.com.br

Acelerao de rede | REDES

Por exemplo, o algoritmo para gerar o cookie TFO especfico a implementao. Dependendo do perfil de servidor, a ponderao poder obter economias tanto de energia quanto de alto desempenho. Alm disso, muita ateno tem de ser dada na segurana do aplicativo, tais como a substituio peridica das chaves utilizadas no lado do servidor para codificar o IP do cliente.

No limite

Usurios aventureiros j podem utilizar o TCP Fast Open, desde que voc tenha um kernel recente:
Figura 3 Configurao da conexo TFO com o transporte do cookie e do
corpo de dados na primeira etapa do aperto de mo. echo "1"> /proc/sys/net/ipv4/tcp_fastopen

Se o servidor no for capaz de validar o cliente, nenhum dado adicional devolvido a este ao invs de um mecanismo de retorno em chutes, e o tradicional aperto de mo de trs vias ser usado; o servidor ento s responde com um ACK para o cliente requerente. Pelo fato de um cliente com um cookie TFO vlido poder consumir recursos do servidor antes do aperto de mo ser concludo, o servidor corre o risco de ataques de exausto de recursos. Usando um mecanismo de defesa que bem conhecido para

evitar ataques de flood de SYN, os administradores podem definir um conjunto limitado de conexes flutuantes (ou seja, as conexes que podem incluir um cookie TFO vlido, mas que ainda no concluram o aperto de mo, como medida preventiva). Uma vez que este conjunto esteja esgotado, o servidor fora o uso da abordagem legada. A implementao prtica de um novo mecanismo tem encontrado o seu caminho no kernel Linux. A sintonia fina certamente levar discusses em um futuro prximo.

Mais informaes
[1] TCP Fast Open: http://static.googleusercontent. com/external_content/ untrusted_dlcp/research. google.com/de//pubs/archive/37517.pdf [2] Internet rascunhos para do TCP Fast Open: http://tools. ietf.org/html/draftietftcpmfastopen01 [3] RFC 1379: http://tools.ietf.org/html/rfc1379 [4] RFC 1644: http://tools.ietf.org/html/rfc1644 [5] Problemas de segurana com T/TCP: http://www. phrack.org/issues.html?issue=53&id=6 [6] Browserscope e; Perfis de navegadores: http://www. browserscope.org/?category=network&v=top [7] RFC 793: http://tools.ietf.org/html/rfc793 [8] RFC1323: http://tools.ietf.org/html/rfc1323

O TFO ativado para operaes cliente definindo o bit 0 (com um valor1). Bit 1 (valor 2) habilita o TFO para operaes servidor; definindo os dois bits (com um valor de 3) habilita ambos os modos. Alm das implementaes em vrios sistemas operacionais, um nmero de opo oficial TCP precisa ser atribudo pela IANA no futuro prximo. At o momento, um nmero de opes TCP experimentais tem sido usadas para manter a conformidade. Do ponto de vista do desenvolvedor de aplicativo, pouco trabalho necessrio. Principalmente servidores web e navegadores compem o grupo de programas que mais se beneficiaro, e programas que no podem usar o TFO, bem como dispositivos como roteadores, firewalls etc., simplesmente continuaro funcionando de forma independente por conta de retornos automticos ao tradicional aperto de mos do TCP. n

Gostou do artigo?
Queremos ouvir sua opinio. Fale conosco em cartas@linuxmagazine.com.br Este artigo no nosso site: http://lnm.com.br/article/8222

Linux Magazine #99 | Fevereiro de 2013

53

TUTORIAL| Transferncia de arquivos

TUTORIAL
Transferncia de arquivos

Transferncia de grandes arquivos


Vrias alternativas permitem contornar os limites de tamanho quando transferimos um arquivo do ponto A ao ponto B. por Frank Hofmann

onsidere a seguinte situao: um usurio deseja armazenar um arquivo grande em um carto de memria USB, mas a tentativa falha, mesmo havendo espao suficiente no dispositivo. Neste caso, muito provavelmente foram atingidos os limites do sistema de arquivos na mdia que estava sendo utilizada. As causas possveis podem ser: uma tabela de alocao de arquivo cheia File Allocation Table (FAT) , o diretrio para contedos do disco ter excedido o nmero mximo de blocos por arquivo. Por razes de compatibilidade, muitos fabricantes fornecem mdia para o sistema de arquivos VFAT ou FAT32, e podemos no notar por um longo tempo que o tamanho de um arquivo limitado. Ambos podem armazenar arquivos at um mximo de 4GB,
58

aproximadamente; no entanto, podemos transportar arquivos maiores de um computador para outro de outras formas. A primeira variante envolve a transferncia de dados atravs de uma conexo de rede; a variante dois, envolve a compresso de dados; a variante trs, formatao de disco com um sistema de arquivos diferente, e a variante quatro, a diviso do arquivo em diversas partes para, posteriormente, voltar a uni-los no sistema de destino.

Operaes de rede

A transferncia de arquivos atravs da rede apenas uma opo genuna se a taxa de transferncia de linha for suficiente e a largura de banda estvel durante a conexo. Prestadores de servios de Internet muitas vezes fornecem menos capacidade para uploads do que para downloads em uma conexo

com largura de banda assimtrica (por exemplo, ADSL). Quando a Internet est sempre disponvel, este fato pode ser facilmente esquecido. Se o sistema de destino capaz de receber dados via FTP, este protocolo a escolha bvia. Para alm da ferramenta de linha de comando clssica ( listagem 1), o cliente gFTP com interface grfica simplifica significativamente o processo de envio de dados antes e depois ( figura 1). No entanto, o FTP um protocolo inseguro; todos os dados so enviados sem criptografia. Alternativas mais seguras esto disponveis h muito tempo, sob a forma de FTP seguro (Secure FTP ou SFTP), FTPS (FTP sobre SSH) e cpia segura (Secure Copy ou SCP). O programa SCP normalmente parte do escopo de uma instalao SSH em um PC cliente; o sistema de destino precisa executar um servidor SSH.

www.linuxmagazine.com.br

Transferncia de arquivos | TUTORIAL

Figura 1 O cliente gFTP possui uma interface grfica para facilitar a transferncia de arquivos para um servidor FTP.

Ambos os componentes esto disponveis nos pacotes openssh-client e openssh-server no Debian e no Ubuntu. O cliente parte da ferramenta padro definida em muitas distribuies; uma instalao geralmente no necessria. Para instalar o servidor de forma retroativa no Ubuntu/Debian, utilize:
apt-get install openssh-server

no sistema de destino. Para transferir dados a partir do host para o servidor, basta digitar o comando da primeira linha da listagem 2. O SCP abre uma conexo criptografada para a mquina de destino e transmite o arquivo para o diretrio especificado; necessrio indicar o diretrio explicitamente, acrescentando-o ao nome do host na linha de comando. O separador de comandos SCP o de dois pontos

(colon). Se s forem informados os dois pontos, o software automaticamente seleciona o diretrio raiz no sistema remoto como destino. Enquanto as duas primeiras chamadas na listagem 2 mantm o mesmo nome do arquivo no sistema de destino, o terceiro comando o altera para debian.iso. Alm disso, a transferncia usa um formato gzip compactado, graas ao switch -C. Para arquivos de texto e arquivos tar (compactados), esta forma pode reduzir de forma bastante significativa a durao da transmisso do arquivo sob certas circunstncias. Se assim desejar, o SCP tambm ir coletar dados do servidor caso seja digitado o nome do computador no qual os arquivos esto armazenados tendo o nome do caminho como primeiro parmetro e o nome do arquivo no sistema local como segundo parmetro. Na ltima linha da listagem 2, o programa l o arquivo debian.iso a partir do diretrio home do usurio no computador especificado, transmite o arquivo gzip para o sistema local, e armazena o arquivo no diretrio atual sob o nome file4.iso. Se o usurio no estiver totalmente confortvel com as ferramentas de linha de comando, o Midnight Commander fornecer uma alternativa. Dois itens de menu, Left/FTP link e Left/ Shell link oferecem uma camada de abstrao para uma conexo FTP e SCP, respectivamente (figura 2). Note que o Midnight Commander armazena os dados de buffer no diretrio /tmp. Consequentemente, o usurio dever certificar-se de que h espao disponvel suficiente antes de transferir arquivos grandes.

Sincronizao com Rsync


Figura 2 Se preferir ficar longe da linha de comando, o Midnight
Commander oferece recurso similar ao SCP e FTP, envolto em uma interface grfica.

Outra abordagem para a transferncia de dados envolve a sincronizao de dois diretrios via Rsync ou
59

Linux Magazine #99 | Fevereiro de 2013

TUTORIAL| Transferncia de arquivos

atravs de sua interface grfica, o Grsync (figura 3). O comando para sincronizar o contedo do diretrio /original em um computador com o diretrio local, chamado de copy :
$ rsync -z <user>@<source>: /original/ copy

O Rsync transfere apenas as mudanas entre o original e a cpia dados idnticos (blocos) so reconhecidos e excludos pela ferramenta. A opo -z assegura que os dados na sincronizao Gzip estejam compactados para transmisso atravs da rede.

Compresso de dados

Figura 3 O Grsync, a interface grfica para o Rsync, torna mais fcil lidar com
comandos Rsync por vezes enigmticos.

Listagem 1: FTP na linha de comando


$ ftp <user>@<server> Password: 230 Login successful. Have fun. ftp> put <file> ftp> bye 221 Goodbye.

Listagem 2: Como usar o SCP


$ $ $ $ scp scp scp scp <file> <user>@<target>: <file> <user>@<target>:/tmp/ -C file3.iso <user>@<target>:debian.iso -C <user>@<source>:debian.iso file4.iso

Por um lado, a compactao de dados durante uma transferncia custa tempo; por outro lado, o SSH/ SCP s suporta compresso baseada em gzip. O procedimento amplamente usado, mas nem sempre a melhor escolha. Se quiser usar um procedimento diferente, preciso compactar os arquivos antes da transferncia e descompact-los no sistema de destino (por exemplo, usando Xz ou 7z). Qual processo mais adequado para cada tarefa depende principalmente dos dados a serem processados. Outra coisa a considerar na escolha do formato que, se deseja descompactar o arquivo no sistema de destino, certifique-se de antemo de que um programa adequado esteja disponvel l.

Novo formato

Listagem 3: Definio de diviso de nomes de arquivos


$ split --bytes=50M -d -a 3 debian-6.0.4-i386-netinst.iso part$ ls -hal part* -rw-r--r-- 1 frank frank 50M 30. Apr 10:33 part-000 -rw-r--r-- 1 frank frank 50M 30. Apr 10:33 part-001 -rw-r--r-- 1 frank frank 50M 30. Apr 10:33 part-002 -rw-r--r-- 1 frank frank 41M 30. Apr 10:33 part-003

Uma outra opo manipular o meio externo de seu sistema de arquivos. As ferramentas mkfs so usadas para criar um sistema de arquivos bsico. Mkfs significa make filesystem (criar sistema de arquivos); um comando separado est disponvel para (quase) todos os arquivos. Por exemplo, o comando mkfs.ext4 /dev/sdb1 cria um sistema de arquivos

60

www.linuxmagazine.com.br

Transferncia de arquivos | TUTORIAL

ext4 no dispositivo especificado: / dev/sdb1. O tamanho mximo de arquivo permitido em um sistema de arquivos varia consideravelmente e encontra-se na faixa de 16TB em ext2, 1EB em ext4 e 16EB no ZFS [1], onde 1 exabyte = 1018 bytes. Em outras palavras, 1EB equivalente a 1 milho de terabytes ou 1 bilho de gigabytes. De acordo com o tamanho do volume, a criao de um sistema de arquivos pode demorar algum tempo para ser concluda; e lembre-se, este processo ir apagar todos os dados j armazenados no meio.

para duas letras posteriores na ordem crescente (sufixo). Parmetros adicionais na linha de comando split permitem definir os nomes dos arquivos de sada para atender s necessidades do usurio; podemos passar no componente principal o nome do arquivo a ser dividido, acrescentando um prefixo chamada anterior:
$ split --bytes=50M debian-6.0. 4-i386-netinst.iso part-

exemplo. Agora s preciso verificar e certificar-se de que as etapas de desmontagem e remontagem no tenham falhado e os dois arquivos ISO (original e cpia) so idnticos. Uma comparao byte a byte levaria muito tempo e tambm propensa a erros; no entanto, duas ferramentas cmp e diff podem ajudar a verificar os arquivos para analisar diferenas em potencial:
$ diff debian.iso new.iso $ cmp debian.iso new.iso

Diviso de arquivos

Se as propostas acima referidas no forem do agrado do usurio nem uma opo a se considerar, possvel dividir o arquivo em pedaos menores e uni-los novamente no sistema de destino. O Linux oferece duas ferramentas para isso: o split e o cat. O comando split divide os arquivos, e o cat os coloca juntos novamente. Sem nenhum parmetro, o split desmonta o arquivo especificado em pedaos de 1.000 linhas. Esta predefinio adequada para arquivos de texto, mas no para imagens ISO ou uma mquina virtual. O parmetro --bytes=<value> (ou -b<value>) faz a diviso em um nmero exato de bytes. Por exemplo, para dividir uma imagem ISO da rede Debian, instale o CD (191MB) em pedaos de 50MB, onde a seguinte chamada ir fazer este truque:
$ split --bytes=50M debian-6.0. 4-i386-netinst.iso

Os arquivos gerados sero agora apelidados, por exemplo, de part-aa e part-ad. Outros dois parmetros -d e -a tambm permitem definir os sufixos. A opo -d gera sufixos numricos, e -a<count> determina a largura (duas por padro); a diviso preenche os espaos com zeros. A chamada na primeira linha da listagem 3 cria quatro arquivos: de part-000 at part-003. Para montar as peas individuais no sistema de destino, o usurio s precisa de um simples comando cat:
$ cat part-* >> new.iso

Se no h sada, os arquivos ISO so idnticos. Uma outra abordagem, mais elegante e frequentemente utilizada a de gerar um hash, que uma espcie de impresso digital para um conjunto de dados ou string. Na listagem 4, o comando openssl usa o algoritmo MD5 para gerar um hash. Se os checksums forem idnticos, o original e a cpia sero correspondentes.

Concluso

O cat usa o operador >> para remontar as partes que o esquema de nomeao havia colocado na ordem correta, criando assim um novo arquivo chamado new.iso neste

Ao copiar arquivos grandes, ideias e abordagens diferentes podem ajudar a atingir seu objetivo. A nica coisa importante encontrar uma soluo adequada para o problema que ajuda a dominar as tarefas Linux dirias com mais segurana. n

Listagem 4: Como criar um hash


$ openssl dgst -md5 debian.iso MD5(debian.iso)= ff79f60c4d1fee2d47baadcbf081e5b6 $ openssl dgst -md5 new.iso MD5(new.iso) = ff79f60c4d1fee2d47baadcbf081e5b6

Mais informaes
[1] ZFS: http://en.wikipedia.org/wiki/ZFS

A imagem dividida em quatro partes; de xaa at xad. As partes xaa, xab e xac somam exatamente 50MB, enquanto xad contm o restante dos dados, que de aproximadamente 41MB. Por padro, a ferramenta prefixa os arquivos de sada com x

Gostou do artigo?
Queremos ouvir sua opinio. Fale conosco em cartas@linuxmagazine.com.br Este artigo no nosso site: http://lnm.com.br/article/8220

Linux Magazine #99 | Fevereiro de 2013

61

ANLISE| Gerenciamento de arquivos

Gesto avanada de arquivos


Se o usurio j domina os comandos utilizados diariamente para realizar a manipulao de arquivos, pode querer fazer mais. por Bruce Byfield

ANLISE

uem j trabalhou com ferramentas em linha de comando provavelmente j aprendeu as opes comuns para comandos como cp, ls, mv e rm. Tambm deve ter aprendido a mudar atributos de arquivo com comandos como chmod e chown e ler o contedo dos arquivos com less, head e tail. No entanto, estes so apenas os recursos bsicos para o gerenciamento de arquivos. Alm dessas opes est a riqueza de comandos avanados para manipular, visualizar, verificar e apagar arquivos de forma segura, para dizer o mnimo sobre possibilidades que vo muito alm do que o cp pode gerenciar. Na verdade, a linha de comando tima para gerenciamento de

arquivos. O ambiente de trabalho grfico timo para operaes de rotina, como copiar arquivos de um dispositivo para outro, ou para alterar permisses bsicas. Mas a gesto de arquivos uma funo bsica, e as pessoas tm realizado a operao pela linha de comando, desde que os computadores passaram a existir no mundo. Como resultado, uma vez que obtemos conhecimento sobre as ferramentas disponveis, a linha de comando mais rpida e mais precisa do que o ambiente de trabalho grfico em todos os aspectos pertinentes ao gerenciamento de arquivos que pudermos imaginar e, muito provavelmente, nos quais no pudermos tambm.

A maioria destes comandos avanados esto instalados automaticamente no seu sistema muitos, como parte do pacote GNU coreutils [1]. No entanto, nos poucos casos em que eles no estejam, todos os comandos devem estar no repositrio de qualquer distribuio que deseje utilizar.

Manipular e exibir arquivos


A troca de arquivos com outros sistemas operacionais h muito tempo tem adicionado extenses de arquivos para o Linux. No entanto, tradicionalmente, sistemas do tipo Unix tm utilizado o comando de arquivo file para identificar tipos de arquivos, o que continua sendo til (figura 1).

Figura 1 O arquivo de comando a maneira tradicional do Unix para identificar o tipo de arquivo, mesmo quando no
h nenhuma extenso.

68

www.linuxmagazine.com.br

Gerenciamento de arquivos | ANLISE

Adicione -L ou --dereference estrutura de comando padro, e siga os links simblicos para identificar o tipo de arquivo do original. Se adicionar -h e --no-dereference, ele simplesmente ir identificar links simblicos pelo que eles so. Com -z ou --uncompress, tambm existe a opo de usar o comando de arquivo sobre o contedo de arquivos compactados. O comando touch til quando se deseja alterar data e hora em arquivos. Com a opo -a, possvel alterar apenas a ltima vez que o arquivo foi acessado, enquanto que com -m podemos alterar apenas a ltima vez que o arquivo foi modificado. Com -d STRING ou --date=STRING, podemos alterar a data e horrio de escolha do usurio, usando uma variedade de diferentes strings tudo a partir de algo como, de Mon, 14 Nov 12:00:00:00 para 2012-10-31 (em ingls) ou mesmo Next Monday (prxima segunda-feira). possvel fazer a mesma alterao com -t STRING, mas a string deve usar os formato MMDDhhmm.ss. A menos que acontea um erro, no h feedback na tela. Por outro lado, o comando wc diz o nmero de linhas (-l, --lines), palavras (-w, --words), caracteres (-m, --chars), e bites (-c, --bytes) em um arquivo. Os resultados so listados nesta ordem, mas a contagem de palavras no ser precisa, a menos que os arquivos pesquisados sejam de texto simples (figura 2).

Figura 2 Use o comando wc para obter estatsticas sobre um arquivo.

um arquivo. Como o leitor provavelmente j sabe, o uso mais comum do checksum para garantir que um arquivo baixado tenha sido transmitido sem quaisquer erros. Esta foi mais uma preocupao dos dias em que modems dial-up eram comuns, e linhas com defeito cometiam erros dos mais improvveis, mas continua a ser uma verificao til nos dias atuais. Geralmente, o aviso de um download adiciona o checksum correto ao lado do link para download, e o usurio que estiver fazendo o download pode verificar se o checksum extrado o mesmo que o anunciado. Os dois hashes mais comuns usados para verificar a integridade de arquivos so o MD5 [3] e o SHA1 [4]. Ambos esto tecnicamente obsoletos o MD5 mais do que o SHA-1 na medida em que hashes mais avanados esto disponveis, mas ambos ainda so considerados bons o suficiente para fins de verificao de downloads. O sistema Linux contm dois utilitrios para gerenciar esses hashes: md5sum e sha1sum. Os dois comandos foram desenvolvidos em conjunto, logo, compartilham das mesmas opes. Normalmente, s precisamos do formato md5sum para exibir o checksum para um arquivo em particular. No entanto, em alguns casos, pode ser necessrio adicionar -b ou --binary ( figura 3). O usurio tambm pode querer testar se um checksum de arquivo

est formado corretamente. Para este propsito, podemos usar a opo -c ou --check. Ao usar qualquer uma dessas opes, tambm podemos escolher uma das trs opes adicionais. Normalmente, um OK exibido ao lado de cada arquivo verificado, mas quando o parmetro --quiet est incluso no comando, o OK suprimido. Da mesma forma, o --status suprime a sada normal do arquivo, apenas apresentando sucesso ao final do processo. Tambm possvel usar -w ou --warning para mostrar erros no checksum, quando estes so detectados.

Excluso de arquivos de forma segura


Se o usurio estiver executando algo ou se simplesmente quiser preservar a privacidade, o comando rm no ser suficiente. Um arquivo regularmente eliminado ainda poder ser recuperado a partir do sistema de arquivos antes e, em alguns casos, depois de ter sido sobrescrito por novos dados. Para reduzir as chances de um arquivo ser recuperado, podemos execut-lo atravs do comando shred. O comando shred o equivalente eletrnico da execuo de um arquivo atravs do shredder. Mas ele no mgico. Se o usurio estiver executando um sistema de arquivos com journal (logs do sistema), ter que desligar esse recurso antes de executar o shred, ou mais de uma cpia do arquivo ser preservada.

Verificao de arquivos
Um checksum [2] um hash criptogrfico utilizado para verificar a integridade de

Figura 3 Use o md5sum e o sha1sum para verificar um download do arquivo original.

Linux Magazine #99 | Fevereiro de 2013

69

ANLISE| Gerenciamento de arquivos

Figura 4 Usar shred substitui arquivos para torn-los ilegveis. Apenas lembre-se de desativar o journaling primeiro.

Por exemplo, em sistemas de arquivos ext3 ou ext4, ser preciso adicionar a opo date=something para o sistema de arquivos em / etc/fstab, e ento reinicie o sistema antes de usar o shred, a fim de remover todas as cpias do arquivo. Da mesma forma, preciso lembrar que as cpias dos arquivos tambm podem ser includas em backups ou em espelhos, mesmo que tenham sido removidas do disco rgido. No mnimo, ser preciso executar o shred com as opes -nNUMBER ou --iterations=NUMBER para especificar o nmero de vezes que este ser sobrescrito. Como se pode esperar, quanto mais reiteraes, mais difcil ser recuperar o arquivo, mas, mais tempo a operao ir levar. Para uma segurana ainda maior, podemos adicionar -z ou --zero para incluir uma sobrescrita final do arquivo com zeros e usar

random-source=FILE para selecionar

um arquivo a partir do qual os dados aleatrios sero extrados para sobrescrever o arquivo ( figura 4 ). Podemos completar o processo acrescentando -u ou --remove para excluir o arquivo depois de t-lo sobrescrito. Todas essas operaes podem levar algum tempo, principalmente se forem especificados um nmero grande de arquivos, de modo que podemos querer adicionar -v ou --verbose para monitorar a operao. Se o usurio tiver problemas com permisses, -f ou --force iro alter-las para permitir que o shred seja executado.

Cpia avanada

Um conceito bsico que tem sido fortemente enfatizado no ambiente de trabalho a ideia de links ou arquivos que apontam para os

mesmos dados. No entanto, os links permanecem muito vivos no Shell. Podemos ter ouvido falar de links que foram utilizados nas revises do ano passado da hierarquia de arquivos do Linux para acomodar aplicativos que ainda consideram arquivos em posies mais antigas [5]. Dois tipos de links so possveis [6]. Um hard link [7] fornece uma entrada de diretrio secundria para um arquivo. A funo original e de hard link funcionam separadamente, de modo que a excluso de uma no exclui a outra. Em contraste, um link flexvel (soft), ou simblico [8], um esboo apontando para o original, que pode estar em qualquer parte do sistema. Podemos abrir um soft link para edio, mas se o exclumos, os originais se mantm. Igualmente, se excluirmos o original, o soft link permanecer como um link quebrado. Tanto os hard links como os soft links so criados sob o mesmo formato bsico:
ln OPTIONS ORIGINAL LINK

Figura 5 Links so uma forma poderosa de nomear alias, muitas vezes no


visualizada em ambientes grficos de trabalho.

Este formato cria um hard link, mas acrescentando -s ou --symbolic possvel criar um soft link em seu lugar. Tal como acontece com muitos comandos, podemos usar a opo -v ou --verbose nas primeiras vezes que usarmos o comando link ( figura 5 ). Para verificar se o nome do link j est em uso, utilize -i ou --interactive para que o comando aguarde a confirmao antes de sobrescrever algo. No extremo oposto, podemos usar -f ou --force para sobrescrever imediatamente. Para converter um

70

www.linuxmagazine.com.br

Gerenciamento de arquivos | ANLISE

Figura 6 Um dos usos mais seguros do poderoso comando dd.

hard link para um soft link, use as opes -p ou --physical. Uma ferramenta ainda mais poderosa o dd, por vezes referido como destruidor de dados por conta do dano grave que um erro poderia causar. Embora os resultados muitas vezes no sejam diferentes daqueles que comeam com o uso do cp, o usurio desejar verificar os comandos dd cuidadosamente antes de pressionar a tecla [Enter]. Parte da razo para esta cautela estrutura de comando do dd, que suficientemente incomum para que seja fcil de se cometerem erros. Por um lado, o comando dd dividido em trs partes: o arquivo de entrada (if), o arquivo de sada (of), e opes, nesta ordem. Alm disso, as opes no esto listadas com um ou dois hifens imediatamente aps o comando, mas ao final dele, com um sinal de igual. Por exemplo, o comando:
dd if= INPUT-FILE of=OUTPUT-FILE conv=lcase

to para a entrada como para a sada de arquivos, abrindo possibilidades, tais como substituir apenas parte de um arquivo de sada existente ou truncar o arquivo de sada e, assim, criar uma cpia imperfeita. Como resultado dessas complexidades, o nmero de pessoas que podem dizer honestamente que dominam o dd relativamente pequeno. Os usurios dependem muito mais de receitas publicadas na Internet que podem alterar para atender necessidades especficas (tabela 1). Esta prtica ainda perigosa mas, normalmente, muito menos arriscada do que a elaborao de estruturas prprias de comando enquanto se est aprendendo. O leitor pode querer considerar experimentar primeiro uma conta de usurio criada

especialmente para este fim, de modo que qualquer dano possvel no afetaria o sistema inteiro.

Kit de ferramentas

Algumas destas ferramentas no so para uso dirio. Os comandos shred e dd, em particular, so ferramentas mais teis para um administrador de sistemas do que para um usurio comum. No entanto, conhecer as ferramentas disponveis fornece uma noo melhor do que possvel fazer, e aprender estes comandos menos comuns podem ajudar a descobrir maneiras de fazer coisas que so difceis ou at mesmo impossveis com comandos mais comuns. Se o interessado aprend-las agora, ter as ferramentas prontas para quando precisar delas. n

Mais informaes
[1] Pacote GNU coreutils: http://www.gnu.org/software/coreutils [2] Checksum: https://en.wikipedia.org/wiki/Checksum [3] MD5: http://en.wikipedia.org/wiki/Md5 [4] SHA-1: http://en.wikipedia.org/wiki/Sha1 [5] Padro hierrquico do sistema de arquivos: https:// www.linux.com/learn/tutorials/476610-a-lookat-filesystem-hierarchy-standard-30 [6] Links: http://www.codeproject.com/Articles/70863/ Hard-Links-vs-Soft-Links [7] Hard link: http://en.wikipedia.org/wiki/Hard_link [8] Soft link: http://en.wikipedia.org/wiki/Soft_link

ir copiar um arquivo, ao converter todo o contedo de letras maisculas para minsculas (figura 6). No entanto, se o usurio esquecer de especificar o arquivo de sada, ir apagar o arquivo em vez de copi-lo e este apenas um dos exemplos mais incuos do uso incorreto do dd. Problemas adicionais (embora potenciais) vm do fato de que o dd trabalha com drivers de dispositivos e parties mltiplas to facilmente como qualquer outro arquivo. Alm disso, ele pode especificar o tamanho do bloco ou o nmero de bytes manipulados a qualquer momento tan-

Gostou do artigo?
Queremos ouvir sua opinio. Fale conosco em cartas@linuxmagazine.com.br Este artigo no nosso site: http://lnm.com.br/article/8217

Linux Magazine #99 | Fevereiro de 2013

71

PREVIEW

Linux Magazine #100


Mainframes
Desde os gloriosos tempos onde reinavam os imensos mainframes que ocupavam toda uma sala, muita coisa mudou. Embora o tamanho dos equipamentos tenha diminudo razoavelmente, seus poderes e capacidades aumentaram significativamente. Na prxima edio da Linux Magazine, voc ir conhecer este fantstico universo e entender um pouco mais sobre tudo o que estes poderosos equipamentos podem fazer por sua empresa. n

Admin Magazine #09


OpenStack
Capaz de gerenciar os componentes de mltiplas instncias virtualizadas, o OpenStack um dos queridinhos dos profissionais de infraestrutura e virtualizao da atualidade. livre, no possui restries quanto quantidade de instncias e uma plataforma robusta, extremamente til nestes tempos onde o advento da computao em nuvem j uma realidade. Na prxima edio da Admin Magazine voc vai conhecer tudo o que essa incrvel ferramenta pode fazer por voc! No perca! n

82

www.linuxmagazine.com.br

Anda mungkin juga menyukai