Você está na página 1de 30

MADDOG p.

26
Memrias de uma longa carreira em computao

CEZAR TAURION p.29


Conhea os 50 anos de histria dos mainframes

AUGUSTO CAMPOS p.18


Canonical rumo carreira solo

N ED M I ER O O MEDIALINX 10 0
# 100 Maro 2013

A REVISTA DO PROFISSIONAL DE TI

MAINFRAMES
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

H 50 ANOS NO MERCADO, AS MQUINAS DE GRANDE PORTE ESTO MAIS ATUAIS DO QUE NUNCA, E SE RENDERAM MODERNIDADE DO SOFTWARE LIVRE. p.32
A REVISTA DO PROFISSIONAL DE TI

00044

GOVERNANA COM

SEJA UM BOM GESTOR E UTILIZE AS MELHORES PRTICAS ADOTADAS E RECOMENDADAS PELOS PROFISSIONAIS MAIS EXPERIENTES NESSA REA p.36

O poder da virtualizao nos mainframes p.33


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?

O que dizem os prossionais certicados p.24

SEGURANA: DNSSEC p.69

VEJA TAMBM NESTA EDIO:

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

Linux no System z: a revoluo p.40


Conhea as vantagens da nova verso do Internet Protocol, e veja por que difcil adot-la
WWW.LINUXMAGAZINE.COM.BR

REDES: IPV6 p.64

NAGIOS p.45 Utilize recusros VoIP para gerar alertas de falhas de forma eficiente SEGURANA p.51 O Tripwire evita que invasores infectem computadores com cavalos de tria ANDROID p.66 Conhea cinco aplicativos que facilitam a vida do gestor de TI PULSE 2 p.70
Mandriva apresenta nova verso do seu sistema de gesto integrada de parque computacional

VEJA TAMBM NESTA EDIO:


Monitoramento de redes com ngrep p.48 Whenjobs: alternativa elegante ao cron p.57 Entenda o funcionamento do boot com UEFI p.73
9 771806 942009 00100
#10003/13 R$ 14,90 7,50

WWW.LINUXMAGAZINE.COM.BR

9 771806 942009

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 Editor de Arte 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

Quem conta um conto...


aumenta um ponto, um ditado popular aqui na terra brasilis, que ilustra a caracterstica bsica do ser humano de fornecer uma guarnio extra ao prato de histrias e causos, sempre que relatados. Com isso, a quantidade de dados repassada a cada novo interlocutor cresce e ganha novos contornos, medida que a informao se alastra dentro de um meio. A veracidade dessa informao uma outra histria, mas a mensurao e a possibilidade (e velocidade) de obteno dessa informao algo que vale a pena observarmos mais atentamente. Albert Einstein (1879 --- 1955) postulou que nem tudo aquilo que pode ser contado, conta, e que nem tudo que conta pode ser contado. Em midos, isso significa que o importante olhar para os dados que realmente interessam e cuja recorrncia possa ser efetivamente medida. Estamos falando atualmente de uma quantidade astronmica de dados, que precisam ser rapidamente transformados em informao. Eric Schmidt, presidente do Google, declarou recentemente que estamos produzindo atualmente a cada dois dias a mesma quantidade de dados produzida pela humanidade em toda a sua histria at o ano de 2003: 5 exabytes, e o ritmo de produo desses dados est acelerando! Como quem transforma os dados em informao o receptor --- ou seja, quem d significado aos dados quem separa o que interessa do que no interessa ---, vivemos hoje em um frenesi de fornecimento de dados que podem ser estruturados pelo receptor: seja atravs das redes sociais ou das mquinas de busca, dados que escolhemos receber clamam por nossa ateno constantemente. Michael S. Malone, colunista e produtor de televiso estadunidense e autor de 15 livros cobrindo o mundo dos negcios e da tecnologia, postulou com acerto que ns temos agora a oportunidade de nos transformarmos no centro do nosso prprio universo de conhecimento, um universo que se reconfigura constantemente para se adaptar s nossas necessidades. A infraestrutura que permite que tanto esse volume de dados quanto a configurao daquilo que chega ao receptor aconteam totalmente fundada em tecnologia desenvolvida de modo aberto e compartilhado. NADA do que temos hoje funcionando no segmento que ganhou o nome sazonal de Big Data, filho primognito da computao em nuvem (esta uma expresso transitria), disponveis em tempo real a partir de uma grande quantidade de dispositivos da armazenamento (um aparato de tecnologia perene) distribudos pela grande rede, assenta em outras bases tecnolgicas que no sejam Open Source. Isso dever nortear os passos dos profissionais de sucesso do presente e definir os novos milionrios e poderosos do futuro. Quem controla o cdigo, controla o mundo: a boa notcia, que o cdigo est disponvel para quem quiser ler, entender, modificar e compartilhar. Basta ter competncia tcnica para isso. Assim, a possibilidade de uma nica pessoa afetar a vida de muitas (positiva ou negativamente) est atingindo nveis estratosfricos, e esse , sem dvida, um movimento democrtico e anarquista (no sentido original da palavra), que est modificando e vai definir o modo como a nossa sociedade tende a evoluir. E isso conta. E conta ponto. Na sua carreira. No durma no ponto.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: EGB 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 #100 | Maro de 2013

NDICE

CAPA
Os pais da computao moderna J imaginou o mundo sem os mainframes? O poder da virtualizao nos mainframes  Conhea a histria por trs dos poderosos mainframes e como o Linux agregou valor a estas j incrveis mquinas. Linux no System z: a revoluo A histria e a evoluo dos mainframes, que aps a adoo do Linux, se tornaram ainda mais flexveis para diversas finalidades. 40 33 32

www.linuxmagazine.com.br

Linux Magazine 100 |NDICE

COLUNAS
Klaus Knopper Charly Khnast 08 10

O novo xerife da inicializao

73

A especificao do boot UEFI oferece novas capacidades e novas dores de cabea tambm se o usurio no estiver preparado para isso.

SEGURANA

Alexandre Borges12 Zack Brown 14

Augusto Campos18 Kurt Seifried 19

NOTCIAS
Geral22 Red Hat realiza a nona edio do Red Hat Summit Deteco de ataques com o Tripwire IDS O simples mas eficaz Tripwire fornece um servio discreto e silencioso, evitando que invasores infectem computadores com trojans, backdoors ou arquivos modificados, e identificando anomalias despercebidas pelo usurio. 51

CORPORATE
Notcias23 Big Data: grande potencial, grande prioridade Coluna: Jon maddog Hall Coluna: Gilberto Magalhes Coluna: Cezar Taurion 26 28 29

REDES

ANDROID
Gesto na palma da mo Conhea cinco ferramentas indispensveis para a gesto de projetos de TI e resolva seus problemas de controle de tarefas, tempo e recursos. Al? o Nagios! 45 O Nagios pode alert-lo por e-mail quando um servio falha, mas estas mensagens esto ficando no passado: uma chamada de voz mais garantida e eficiente. 57 66

TUTORIAL
Alternativa elegante Tarefas no estilo cron jobs so essenciais para a gesto de sistemas Linux e Unix. No entanto, sua sintaxe muito limitada e sujeita a erros. Um moderno substituto visa eliminar essas fraquezas.

Rede sob vigilncia Raspberry Pi aplicado a projetos do mundo real O Raspberry Pi, pouco maior que um carto de crdito, torna mais fcil adquirir experincia com sistemas embarcados Linux. Apresentamos alguns exemplos prticos de como us-lo em ambientes comuns do dia a dia. 60

48

O ngrep uma ferramenta til aos administradores de rede: separa o joio do trigo e funciona como um sniffer de pacotes trafegados.

SERVIOS
Editorial03 Emails06 70 Linux.local78 Preview82

ANLISE
Administrao Centralizada Aplicativos e processos raramente revelam o que fazem em segundo

Linux Magazine #100 | Maro de 2013

Coluna do Alexandre

O Google est errado?


E
sta coluna partiu de uma extrema indignao da minha parte ao ler a triste notcia de que o Google ir pagar 60 milhes de euros imprensa francesa pelo direito de continuar, atravs do seu mecanismo de busca, indexando o contedo digital fornecido por jornais e revistas daquele pas. Para mim, isso um desistmulo competncia, ou seja, extremamente ridculo. Parece-me impressionante como as pessoas distorcem a lgica de maneira oportunista e conveniente para ganhar mais dinheiro e explicar o seu prprio fracasso. Perceba o leitor que, de tempos em tempos, setores da sociedade escolhem como alvo uma empresa que est ganhando muito dinheiro e tentam bater nela de todos os jeitos pois, ao invs de serem criativos e aumentarem a eficincia de seu prprio negcio, escolhem aumentar seu lucro s custas alheias. Sou totalmente partidrio da meritocracia em qualquer caso e em qualquer situao. Abomino toda a recompensa que seja obtida atravs de politicagem dentro das corporaes, j que isso desmerece o esforo de todos os profissionais que batalham para melhorar tanto a si prprios quanto a empresa em que trabalham. Se voc conhece algum que usa de politicagem para obter uma promoo que seria merecida por outro colega, tenha certeza de que esse profissional um amador. Antes do Google, todos os mecanismos de pesquisa eram medocres e foi exatamente ele que propiciou uma maneira mais agradvel e eficiente de encontrar dados na Internet, mudando a maneira como acessamos informaes e obtemos conhecimento. Se o Google est onde est hoje, por total competncia da empresa que o criou e por conta da inpcia dos concorrentes. Ningum obrigado a usar o Google. Qualquer um pode simplesmente usar outro mecanismo de busca e pronto. Entretanto, fica uma dvida: como o usurio chegou pela primeira vez aos sites de interesse? Sem o Google? Vamos colocar de outra forma: que tal utilizar outros servios, como Bing, Yahoo! ou Bai-

COLUNA

As penalidades sofridas pelo Google, impostas por empresas que no tem a mesma competncia e qualidade em seus servios.

d (da sia)? Eles so excelentes, tm suas vantagens, mas por que ento as pessoas continuam usando o Google? Por caridade? Ou porque, de longe, ele realmente o melhor? No paro por aqui: se algum quer disponibilizar contedo jornalstico ou informativo na Internet, provavelmente o faz porque quer compatilhar informaes, tornar-se famoso ou, ainda, porque quer ganhar dinheiro dos anunciantes, como faz qualquer meio de informao digital (jornal ou revista) nos dias de hoje. Isso no errado. Ganhar e gastar dinheiro a essncia do capitalismo. Se uma empresa (ou pessoa) no quer disponibilizar uma informao para ser acessada na Internet, ento h duas alternativas: ou no publica ou publica e cobra por isso. Quando li na maioria dos jornais e revistas, que o Google no existiria sem eles, isso me soou como uma enorme piada. Nada mais falso: o Google uma vitrine gigantesca para qualquer empresa que tem por objetivo vender seus produtos, servios ou sua informao. Sem esse mecanismo de busca, certamente o nmero de pessoas com acesso s reportagens aos artigos corporativos seria muito menor. Voltando aos primeiros anos de popularizao da Internet, antes eram os provedores que cobravam pelo acesso aos seus portais. Com o tempo, o julgamento que se estabeleceu foi que isso inibia o acesso informao por parte da populao. Ento, os mesmos provedores passaram a ganhar com os anunciantes que pagam por espao em seus sites. O Google, para manter-se em operao (o nome do jogo dinheiro), tambm cobra de qualquer empresa que deseja ter a sua marca vinculada aos resultados das pesquisas. Ateno: elas pagam porque querem. Se no for interessante, podem (e devem) procurar um outro meio para obter visibilidade. Dito isso, ser que algum ainda acha que essa incluso na indexao dos resultados deveria ser gratuita, ou seja, que o Google deveria facilitar para que milhes de pessoas cheguem ao contedo exposto pela sua empresa na Internet sem que ele ganhe nada com isso? Se houver algum que pensa isso, ento seria curioso solicitar para

12

www.linuxmagazine.com.br

que este profissional acorde cedo e v ao trabalho sem ganhar um salrio j que dinheiro no importa mesmo. De tudo isso, sempre aparece o oportunismo das pessoas e empresas: os sites de revistas e jornais franceses esto ganhando 60 milhes de euros do Google pois no so competentes e muito menos eficientes para ganhar dinheiro por si mesmos. Entretanto, continuam mantendo reas reservadas aos assinantes que pagam por isso, claro. estranho: e se o Google cobrasse da imprensa francesa para chegar aos seus sites? Sou a favor da cobrana por contedo digital informativo, j que os jornais e revistas esto ai para vender seus produtos, informar e ganhar dinheiro. minha deciso se vou pagar ou no por isso. O mesmo vai valer para o blog que vou lanar em breve: os leitores podero acessar vontade. Se o Google indexar, timo. Ele estar me ajudando. Se o Google, um dia, julgar interessante cobrar por vincular algum anunciante ao resultado que leve ao meu blog, ser uma deciso que apenas caber ao Google. Vou cobrar dele por isso? Lgico que no. Se o intuito fosse onerar algum, eu criaria uma rea restrita para assinantes e quem quisesse acessar-la, pagaria por isso. Certamente eu no estaria obrigando ningum a fazer isso. Se chegasse ao ponto de eu no querer que ningum tivesse acesso ao meu contedo, eu simplesmente no publicaria mais.

Novamente vou reforar questo: o acesso gil s informaes somente foi possvel graas ao Google. Antes disso eram as trevas e a escurido. No havia quase nada. Se o Google tivesse adotado a dura atitude de no pagar aos representantes da imprensa francesa e desindexado todo o contedo francs, aquelas informaes simplesmente quase que sumiriam do mapa. Quem perderia? O Google, claro. E como ficariam as revistas e jornais da Internet francesa? A essa altura, acho que voc j sabe a resposta. Recentemente as companhias provedoras de telefonia e Internet da Frana tambm esto agindo de maneira oportunista e esto tentando levar o seu naco do Google porque o acusam (entre outros) de explorar a banda de rede sem pagar nada. Isso estpido. Eu somente pago pelo servio de acesso Internet porque quero aprender, ler meus e-mail e usar... o Google! Se eu no tivesse acesso a esses servios, eu no assinaria um plano de Internet com nenhuma operadora. Elas j ganham muito dinheiro dos assinantes e do governo, todavia querem lucrar (de novo) em cima das empresas de Internet. Infelizmente, os amadores procuram as explicaes sobre o sucesso alheio, mas jamais buscam os motivos da prpria incompetncia. 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.

Linux Magazine #100 | Maro de 2013

13

Coluna do Augusto

Canonical rumo carreira solo


A substituio do X11 seria uma alavanca para a decolagem da Canonical como empresa independente?

COLUNA

final do primeiro trimestre de 2013 foi marcado pelo anncio da Canonical de que sua distribuio Ubuntu substituir o tradicional X11, que oferece a infraestrutura para os ambientes grficos tpicos das distribuies Linux desde a dcada de 1990, pelo Mir, um servidor grfico cujo desenvolvimento foi recentemente iniciado pela prpria empresa. Substituir o X11 no propriamente uma novidade: desde 2010 a Canonical j anunciava a inteno de troc-lo por uma alternativa mais moderna: o Wayland, servidor grfico moderno e que, assim como o X11, um foco de desenvolvimento comunitrio. Nesse processo, a empresa j havia at mesmo oferecido apoio tcnico aos desenvolvedores dos ambientes grficos Gnome e KDE para que adaptassem seus sistemas nova alternativa. O sbito anncio do projeto prprio Mir como sucessor da adoo do Wayland, que no chegou a ser concretizada, deve ser visto no contexto das demais iniciativas que colocam a Canonical no ramo das carreiras solo, diferentemente de outras distribuies que adotam maior nmero de componentes mantidos em comunidade: o Ubuntu j divergiu no gerenciador de inicializao Upstart, no ambiente grfico Unity e, recentemente, anunciou que est criando at mesmo seus prprios componentes bsicos do ambiente operacional, como relgio, calendrio e calculadora. Tudo isso pode ser facilmente entendido ao considerar o alinhamento a uma estratgia de unificao de interfaces (representada singularmente no projeto Unity) da linha de produtos baseados no Ubuntu em plataformas to diferentes como os desktops, tablets, smartphones, televisores, videogames e o que mais estiver por vir. Mas compreender uma estratgia no significa necessariamente apreci-la, e no faltaram respostas negativas medida dissonante tomada pela Canonical para sua popular distribuio.

A primeira delas partiu dos desenvolvedores do projeto KDE, em termos bastante expressivos. Um deles, responsvel especificamente pelo gerenciador de janelas Kwin, foi a pblico para desmentir a afirmao do fundador da Canonical de que este componente do KDE teria bom suporte ao Mir: segundo ele, acrescentar este suporte tarefa nada trivial, no est nos planos e o projeto ainda aguarda o cumprimento da oferta pblica de anos atrs sobre ajuda para a criao de uma verso para a escolha anterior da Canonical, o Wayland. Poucos dias depois, do campo dos desenvolvedores do Gnome tambm surgiu uma proposta pblica mencionando o anncio da Canonical de desenvolver seu prprio componente para priorizar a adaptao de seu sistema ao Wayland, que a proposta comunitria de sucessor do X11 para ambientes baseados em Linux que se encontra mais avanada no momento. Mas essa no uma tarefa rpida, embora o que a Canonical tenha pela frente com seu Mir tambm no seja: pelo primeiro cronograma divulgado pela empresa inglesa, em outubro de 2013 estar completa a primeira fase de integrao do ambiente ao novo servidor grfico, funcionando especificamente em um aparelho telefnico (enquanto desktops tero apenas acesso a um modo legado que far a ponte com um servidor X). E a integrao completa em todos os aparelhos suportados pela Canonical est prevista para abril de 2014, considerando a previso para lanar o Ubuntu 14.04 LTS no mesmo ms. Concorrncia tem suas vantagens, mas cooperao e compartilhamento de esforos e objetivos so valores tpicos do desenvolvimento Open Source. Toro para que um ponto de equilbrio no tarde a surgir.
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.

18

Linux Magazine #100 | Maro de 2013

Linux Magazine #100 | Maro de 2013

31

Mainframes

Os pais da computao moderna


J imaginou o mundo sem os mainframes? por Flvia Jobstraibizer

CAPA

Esta edio um marco para ns, da Linux Magazine. Atingir o marco de 100 edies, significa 100 meses de rduo trabalho, de muitas conquistas e de muito, mas muito aprendizado. Aprendizado esse que no s faz parte da nossa rotina diria, como tambm faz parte daquilo que levamos todos os meses at voc, leitor: conhecimento. E para comemorar esta simblica edio binria, trazemos at voc um pouco mais sobre as origens de tudo o que temos hoje, da computao moderna, dos dispositivos cada vez menores e mais necessrios que temos em nossas vidas. Os mainframes nasceram inovando e continuam quebrando preconceitos at os dias de hoje, pois diferentemente do que se especulava, eles no vo deixar de existir, pelo contrrio. So cada vez mais teis, velozes, robustos e to seguros quanto sempre foram. Hoje os mainframes so parte integrante dos supercomputadores mais rpidos do mundo (e entre estes temos alguns no Brasil, mencionados na edio #93 da revista, cujo tema de capa foi HPC (High Performance Computing). De posse da tecnologia oriunda dos mainframes foram criados os computadores pessoais, desktops que antigamente ainda eram grandes fisicamente, e que assim, deram origem aos computadores portteis, smartphones, nano tecnologia... Tente imaginar o mundo sem o seu carssimo smartphone, sem seu querido notebook, seu o seu primeiro desktop. Ou ento tente imaginar o mundo sem nenhuma tecnologia computadorizada. mais ou menos esse o cenrio da vida sem a existncia dos mainframes. Desde 1880 quando foram criados os sistemas de cartes perfurados por Herman Hollerith (e que se tornou a base
32

para o primeiro computador de grande porte em 1964) que vemos a tecnologia revolucionar o mercado diariamente. Hoje os mainframes possuem propsitos mais nobres: realizam clculos para previso de desastres naturais como abalos ssmicos, tsunamis etc., fazem previses do tempo, clculos matemticos complexos para os diversos projetos da NASA, calculam com base em dados geogrficos, de terreno e geolocalizao os melhores locais para perfuraes de petrleo e ajudam em previses e processamentos de uma quantidade de dados em to poucos segundos que at rdiculo baseado nos anos que um computador comum levaria para realizar 10% das mesmas tarefas. O Brasil continua figurando no topo da lista dos principais pases a utilizarem-se amplamente dos benefcios dos mainframes. Muitas empresas privadas do Pas ainda utilizam essas incrveis mquinas para diversos fins e certo que esse mercado s tende a crescer, principalmente no que tange virtualizao e computao em nuvem. Caso voc no saiba, desde 1967 os mainframes possuem hypervisors (o primeiro tendo sido construdo pela IBM e batizado de CP-67) o que garante uma excelncia no assunto virtualizao que mesmo os sistemas mais modernos no superam. Enfim, o espao curto e h muito o que h para falar sobre o assunto. Una-se a ns nesta edio comemorativa e que est recheada de passado e presente! Boa leitura! n
 Matrias de capa O poder da virtualizao nos mainframes Linux no System z: a revoluo 33 40

www.linuxmagazine.com.br

Alternativa elegante | TUTORIAL

Agendador de tarefas

Alternativa elegante
Tarefas no estilo cron jobs so essenciais para a gesto de sistemas Linux e Unix. No entanto, sua sintaxe muito limitada e sujeita a erros. Um moderno substituto visa eliminar essas fraquezas. por Oliver Frommel

TUTORIAL

ma das muitas heranas do Unix (desde o Unix V7, para sermos mais exatos) o servio de agendamento de tarefas cron, que ainda hoje executa trabalhos regulares no Linux e sistemas BSD. Embora algumas alternativas para esta ferramenta j tenham sido desenvolvidas, como o fcron [1] e o anacron [2], o princpio em si sofreu poucas alteraes. Richard W.M. Jones, programador da Red Hat, acabou rompendo com

a tradio e chegou a uma alternativa nova um projeto chamado Whenjobs. Basicamente, o Whenjobs [3] oferece duas vantagens para o cron: sintaxe mais simples para definir as tarefas e tempos de execuo, e um sistema que permite aos usurios definir as dependncias entre as tarefas. Pacotes Whenjobs pr-compilados j esto disponveis para o Fedora 17, mas usurios de outras distribuies tero que construir a ferramenta eles

mesmos. Para instalar, basta acessar o Whenjobs do repositrio Git. No entanto, mais fcil baixar o ltimo arquivo tar, se o usurio no quiser entrar em uma batalha com o autoconf e o automake. Como o Whenjobs escrito na linguagem de programao funcional Ocaml, precisaremos do compilador correspondente e de alguns pacotes. Podemos instal-los com os seguintes comandos, por exemplo, no Ubuntu 12.10:
sudo apt-get install ocaml ocamlfindlib libcalendar-ocaml libcalendarocaml-dev camlp4-extra libocamlnet-ocaml-bin

O comando ./configure inicia a etapa de configurao, que informa se todos os pacotes necessrios esto instalados. Durante o teste, vimos o seguinte erro quando executamos make: error: Unbound value XDR.safe_add. Resolvemos isso excluindo os arquivos gerados lib/ whenproto_aux.ml e lib/whenproto_aux. mli. Executar o comando make instala o Whenjobs globalmente no sistema.

Ajuda para iniciar


Figura 1 Quando iniciado com o parmetro --help, o Whenjobs exibe os parmetros de comando disponveis. A ajuda est disponvel na man page.

Quando iniciado com a opo -help, o Whenjobs gera uma curta mensagem de ajuda, listando

Linux Magazine #100 | Maro de 2013

57

TUTORIAL | Alternativa elegante

novas tarefas com o Whenjobs, dependendo de certas condies. A sintaxe para isso :
when <condition> : <jobcode>

Por exemplo, a funo de alterao no Whenjobs permite que o usurio monitore quando uma varivel muda. Usando as variveis acima, podemos formular, assim, uma condio como se free_space mudar e se o valor for inferior a 10.000 (blocos):
when changes free_space && free_space < 100000 :

Figura 2 Quando iniciamos o Whenjobs pela primeira vez, ele vem com uma
tarefa de exemplo que exibe um breve texto de ajuda.

opes e parmetros disponveis ( figura 1 ). O comando whenjobs -e informa ao programa que deve iniciar um editor, que vem com um arquivo Whenjobs, embora contenha apenas um comentrio (figura 2). O editor mostrado na figura, ilustra que este deve ser o arquivo .$HOME/whenjobs/jobs.ml. No caso de erros de sintaxe no arquivo de tarefas, o Whenjobs no muito til; na verdade, ele simplesmente envia uma mensagem de erro ao compilador, embora ainda salve o arquivo mesmo com erros. Ao invs de um arquivo, tambm podemos armazenar vrios arquivos com a extenso .ml em .whenjobs; no entanto, precisaremos edit-los manualmente. Alm disso, os nomes de arquivo tm de obedecer a regras da linguagem Ocaml; por exemplo, eles no podem conter hfens. Os princpios bsicos dos arquivos Whenjobs so explicados nos trechos de comentrio. Os comentrios iniciam e terminam com um asterisco (*) esta uma dica sutil de que os prprios arquivos Whenjobs so arquivos Ocaml no entanto, normalmente no precisamos nos preocupar com a linguagem de programao

quando utilizamos o Whenjobs. Uma medida de tempo comea com cada palavra-chave e termina com dois pontos, por exemplo:
every 10 minutes:

Os caracteres << apresentam um bloco de comandos Shell, que so ento encerrados pelos caracteres >>.

Variveis

O exemplo no comentrio da figura 2 ilustra alguns recursos do Whenjobs, como a definio de variveis. Para fazer isso, a ferramenta oferece a opo --set, que podemos estender, indicando o tipo de varivel (-type). O cdigo a seguir, executa primeiro o comando stat e atribui os resultados varivel Shell livre. A segunda linha l esta varivel e a atribui varivel free_space do Whenjobs como um inteiro; este ltimo estar ento disponvel para outras tarefas.
free=`stat -f -c %b /home` whenjobs --set --type int free_ space=$free

Para que isso funcione, o daemon do Whenjobs (whenjobsd) deve estar em execuo; ele armazena as variveis e executa as tarefas. Ele pode ser iniciado usando a interface do Whenjobs e a opo --daemon-start. Alternativamente, tambm podemos iniciar o whenjobsd diretamente; e ento, usar a opo -f para evitar que o daemon execute em segundo plano, e a opo -d para ativar as mensagens de depurao. O comando whenjobs --variables informa a ferramenta para obter a lista de variveis armazenadas atualmente. Se no quiser uma alterao em uma varivel para desencadear uma mudana de evento, tambm podemos definir a opo --whisper:
whenjobs --set free_space=0 -whisper

O Whenjobs mostra quais tarefas esto ativas quando estipulamos o parmetro --jobs e quais so carregadas quando usamos o parmetro --jobs-names. Podemos definir o nome acrescentando-o antes da linha que comea com um when ou every:
job "disk monitoring" every 15 minutes :

O segmento de cdigo inferior na gura 1 mostra como executar

Podemos executar tarefas individuais manualmente digitando whenjobs --start jobname. Tarefas

58

www.linuxmagazine.com.br

Alternativa elegante | TUTORIAL

ativas podem ser canceladas com whenjobs --cancel <number> e digitar whenjobs --tail <number> ir mostrar a sada de uma tarefa ativa.

Prova do milnio

Quando se trata de definir horrios para tarefas agendadas, a ferramenta oferece uma vasta gama de opes: segundo, minuto, hora, dia, semana, ms, ano e at mesmo dcada, sculo e milnio. Estas opes podem ser todas combinadas com um nmero: por exemplo, cada hora executa um script uma vez por hora, e cada 15 minutos executa um script a cada 15 minutos.

O Whenjobs tambm oferece uma riqueza de expresses: elas podem estar ligadas por operadores (&&) e/ou (| |) e tambm negadas. Comparaes de duas expresses com vrias combinaes de maior que, menor que e igual podem ser numricas ou baseadas em comparaes de strings. Outras funes internas podem comparar variveis com valores anteriores ou determinar se um valor aumentou ou diminuiu. Alm disso, os usurios podem programar expresses prprias na linguagem Ocaml. Mais informaes sobre isso esto disponveis em detalhes no manual fornecido pela ferramenta.

Maduro

O Whenjobs foi desenvolvido como um projeto particular de Jones e como um substituto para o cron. Oferece sintaxe mais simples e suporta dependncias entre tarefas. Em um post, Jones indica expressamente que este um projeto privado e no planejado como um substituto para o sistema cron padro usado pelo Fedora ou pela Red Hat. No entanto, ele no usa a tarefa para compilaes automatizadas de ferramentas de virtualizao da Red Hat, demonstrando assim sua capacidade para uso em produo. n

Mais informaes
[1] Fcron de Matija Suklje, Linux Magazine, Janeiro de 2010, pg. 48. [2] Anacron: http://anacron.sourceforge.net [3] Whenjobs: http://people.redhat.com/~rjones/whenjobs/

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

A certi cao LPI cada vez mais prxima de voc!


Adquira j o seu kit de certi cao LPI, faa o curso intensivo e as provas no sl14 e garanta a sua vaga entre os especialistas Linux mais procurados do mercado!

Kit de certi cao LPI-1

Kit de certi cao LPI-2

Contedo do kit:

1 livro contendo o guia de estudos para a certi cao LPI-1 ou 2 Curso preparatrio intensivo 2 provas para certi cao LPI-1 ou LPI-2: Exames 101/102 ou Exames 201/202

Linux Magazine #100 | Maro de 2013 Para aquisio e mais informaes: https://www.linuxnewmedia.com.br/lm/certi cacao_ sl14

0 ,0 ,33 0 8 65 10 $ $ r R e R ros u Po xd mj 6 e 59 ou s

TUTORIAL| Raspberry Pi

Raspberry Pi

TUTORIAL

Raspberry Pi aplicado a projetos do mundo real


O Raspberry Pi, pouco maior que um carto de crdito, torna mais fcil adquirir experincia com sistemas embarcados Linux. Apresentamos alguns exemplos prticos de como us-lo em ambientes comuns do dia a dia. por Werner Hein

engenheiro britnico Eben Upton e uma equipe de hackers de hardware comearam o projeto Raspberry Pi como um meio de fornecer tecnologia de computador acessvel para jovens interessados no assunto [1]. O objetivo era desenvolver e comercializar um computador de placa nica, do tamanho aproximado de um carto de crdito e compatvel com o oramento apertado do pblico alvo (quadro 1). Se o usurio estiver lembrado dos primeiros computadores domsticos, no se sentir completamente por fora do assunto: a inteno fundamental dos criadores era reocupar pores, garagens e salas de aula com o esprito de uma gerao que cresceu com o Atari 400/800, ZX80/81 ou VC20/C64.

Quase um ano depois de surgir o Raspberry Pi, apropriado olharmos para trs e analisarmos o que aconteceu entre a primeira srie de cerca de 10 mil peas e a situao atual de aproximadamente 1 milho de unidades entregues: qual teria sido a razo de sucesso do projeto? Quais capacidades o hardware oferece? O que possvel e o que no (ainda) possvel fazer com o sistema? Este artigo explora o Raspberry Pi atravs de trs projetos do mundo real: Um multimidia, de sistema de reproduo de vdeo, Um ponto de acesso sem fio, e Uma unidade embarcada de controle de temperatura. O primeiro projeto um exemplo do sistema Raspberry Pi servindo como um substituto para um desktop padro.

Os dois ltimos exemplos mostram o Raspberry Pi como um sistema embarcado e que exigiro um pouco de conhecimento de programao, mas, tambm, ressaltam a versatilidade deste poderoso minicomputador. Talvez todos os trs exemplos ajudam a mentalizar outros projetos faa voc mesmo (de do it yourself ou DIY) que podemos criar com um Raspberry Pi prprio.

Lista de compras

Originalmente, os designers haviam previsto um modelo A e B, que diferem principalmente no nmero de portas USB (uma ou duas), na disponibilidade de uma porta Ethernet, e, evidentemente, no preo (de 25 a 35 dlares, nos Estados Unidos). A esta altura, apenas o modelo B est disponvel. Veja a tabela 1 para um resumo

Quadro 1: Histria
Em 2006, Eben Upton e sua equipe desenvolveram os primeiros conceitos para o Raspberry Pi, baseados no Atmel ATmega. A ideia de atrair jovens interessados no minicomputador j fazia parte do programa. Em 2009, os membros oficialmente estabeleceram a Raspberry Pi Foundation. Em agosto de 2011, a srie alpha de aproximadamente 50 placas deixou a produo. Elas serviram principalmente como uma plataforma para desenvolvedores, para depurao e para fins de demonstrao. Em dezembro de 2011, foi a vez da srie de 25 placas beta, j baseada no layout de produo. Os desenvolvedores eliminaram as ltimas falhas. Em um leilo online em janeiro de 2012, 10 placas desta srie beta foram vendidas por um total de 16.336 libras no Reino Unido. Em 29 de fevereiro de 2012, s 7 horas (horrio da Europa Central), os servidores web da fundao e duas distribuidoras foram sobrecarregadas em poucos minutos pela tempestade de pedidos. Muitos clientes esperaram durante horas para submeter uma pr-encomenda.

60

www.linuxmagazine.com.br

Raspberry Pi | TUTORIAL

dos componentes do Raspberry Pi. Para obter o Raspberry Pi (ou RasPi, abreviadamente) instalado e funcionando, precisamos fazer uma lista dos componentes bsicos. A Internet possui ainda mais dicas sobre operaes avanadas [2] [3]. Atualmente, apenas dois distribuidores globais tm a placa em catlogo [4] [5]. Embora a entrega de alguns meses no fosse incomum no primeiro trimestre de 2012, agora o usurio geralmente s precisa aguardar algumas semanas. Alm da placa, o usurio precisar dos seguintes componentes: Uma fonte de alimentao USB com nada menos do que 700mA. Se desejar um hardware com fonte adicional atravs de USB, deve planejar pelo menos 1 amp. Um carto SD (HC) com pelo menos 2GB de capacidade; no entanto, 4GB seria melhor. Dependendo do que o usurio pretende fazer, ainda assim pode no ser suficiente. Como o sistema est tambm alojada no carto SD, aconselhvel escolher um carto com boa leitura e velocidade de escrita. Para acesso sem fio, um adaptador WLAN na forma de um pendrive (stick USB) seria prtico. Mas, na prtica, um adaptador WLAN USB muitas vezes um fator significativo no consumo de energia. Se estiver pensando em usar um adaptador USB, verifique se o driver
Componente: Tipo: SoC CPU GPU RAM Ports USB Ethernet SD/MMC Audio Video 2 x USB 2.0 1 x 10/100 Mbps 1 x slot 1 x stereo analog out

suportado e escolha um design enxuto (slim) que no bloqueie a segunda porta USB. Tendo em vista o baixo nmero de portas USB, investir em um teclado e em um mouse sem fio valeria a pena tambm para poupar a carga desnecessria sobre os recursos limitados do adaptador de energia USB. Alm destes itens, o usurio tambm precisar de cabos diversos, tais como HDMI ou Ethernet, dependendo do uso planejado para o dispositivo. No que se refere ao cabo HDMI, quanto menor, melhor. O usurio tem a opo de aumentar a sada do driver, mas isso tambm aumenta o consumo de energia. Se estiver pensando em ouvir msica ou assistir a vdeos, tambm ir precisar de fones de ouvido ou alto-falantes. O terceiro projeto (um controlador de temperatura embarcado) usa uma placa de expanso que requer um hardware adicional [6].

sistema consistindo de uma partio de boot de 60MB e um sistema de arquivos root em torno de 2GB. Descompacte o arquivo e mova-o para um carto SD com o seguinte comando:
$ sudo dd bs=1M if=2012-08-16-wheezy-raspbian.img of=SD_card_device_filename

Primeiros passos

Uma distribuio Linux baseada em Debian conhecida como Raspbian adaptada para o servio como um sistema operacional on-board para Raspberry Pi. A Raspberry Pi Foundation recomenda o Raspbian Wheezy [7], ltima verso lanada, utilizada neste artigo. Comece fazendo o download do arquivo de imagem Raspbian Wheezy, que uma imagem completa do

Agora, conecte o carto SD, teclado, mouse e monitor para o sistema Raspberry Pi e inicialize, ligando a fonte de alimentao USB. O menu de configurao aparece, e se o usurio no estiver usando um teclado padro em ingls, seria melhor primeiro alterar as configuraes nos itens do menu configure-keyboard e change_locale para o teclado e idioma preferidos; caso contrrio, ir encontrar problemas assim que for solicitado o login. O nome de usurio padro pi; a senha raspberry. Outros itens de menu teis incluem change_timezone, para definir o fuso horrio correto; ssh para permitir o acesso seguro ao terminal via rede; e expand_rootfs, para alterar o tamanho do sistema de arquivos root de 2GB para o tamanho real do carto SD. Finalmente, devemos atualizar o sistema no modo Debian tpico:
$ sudo apt-get update $ sudo apt-get upgrade

Podemos iniciar a ferramenta de configurao a qualquer momento usando sudo raspi-config.

Broadcom BCM2835 (system on chip) ARM1176JZF-S, 700 MHz Broadcom VideoCore IV (OpenGL ES 2.0, OpenVG, 1080p30, H.264 alto nvel de codificao/decodificao) 512MB of RAM

Projeto 1: reproduo de vdeo


Entrar com startx levar para o desktop grfico LXDE, o que otimizado para sistemas enxutos. Reproduzir um vdeo em HD certamente o ltimo teste para o hardware. Os players de vdeo comuns, no entanto, so de nenhuma ajuda porque a GPU da placa otimizada para decodificao de udio e dados de vdeo. Assim, precisaremos de um player que utiliza
61

1 x composite out, 1 x HDMI out

Tabela 1 Dados tcnicos do Raspberry Pi.

Linux Magazine #100 | Maro de 2013

TUTORIAL| Raspberry Pi

a prpria biblioteca do programa da Broadcom (encontrado em /opt/vc). Atualmente, o nico que faz isso o programa de linha de comando pr-instalado omxplayer [8]. Se possvel, simplesmente monte o diretrio que contm os arquivos na rede. O NFS oferece acesso mais rpido coleo de vdeos, mas o SSHFS menos complicado. Os pacotes apropriados esto instalados, como mostrado na listagem 1. O usurio, ento, inicia a reproduo com o comando omxplayer <File>. Depois de um curto soluo de imagem e som, o software fez o teste de vdeo em HD em formato 720p com udio Dolby Digital 5.1 claro, misturando at dois canais sem qualquer problema. E isso tudo do que se trata o espartano Omxplayer. O programa demonstra capacidades impressionantes para decodificao de udio e vdeo, mas nada mais. H tambm duas desvantagens extras: a biblioteca de vdeo mencionada

Quadro 2: Ativao da interface serial


Equipar o Raspberry Pi com uma interface serial requer algumas medidas prvias: os sinais TXD e RXD do UART do SoC so enviados para os pinos 8 e 10 do cabealho P1 situado entre a sada de TV e o slot para carto SD (figura 1). No entanto, os sinais ainda esto no nvel I/O do SoC com 3.3 volts. Com um deslocador de nvel (level shifter), podemos mov-los para a faixa serial padro RS232. Para isso usamos, por exemplo, o MAX3232CP IC. O minicom pode ser utilizado como um programa de terminal no PC. Com o comando minicom -s, possvel fazermos mudanas mnimas nas configuraes necessrias. Por exemplo, a porta serial pode ser representado tanto pelo arquivo de dispositivo /dev/ttySnumber como /dev/tty-USBnumber. A taxa de dados (115.200 bps) e o formato de dados (8N1) so predefinidos. Certifique-se de que nem o Hardware Flow Control (controle de fluxo de hardware) ou o Software Flow Control (software de controle de fluxo) sejam usados pelo software. O comando minicom -o impede que o programa execute as sequncias para inicializar no startup e conecta o usurio diretamente ao console.

Listagem 1: Configurao de um player de vdeo


$ sudo apt-get sshfs $ sudo adduser pi fuse $ mkdir myVideos $ sshfs username@host_name:/ directory_name myVideos

acima no um software de cdigo aberto, e necessrio adquirir licenas para os formatos MPEG-2 e VC-1. O consumo de energia, por outro lado, surpreendentemente baixo: a carga mdia durante a renderizao do vdeo em HD era de apenas 3.8 watts, apesar da rdua tarefa de transmisso atravs da rede. Os programas Omxplayer, SSH e SSHFS criam a maior carga para CPU e memria, enquanto o player reivindica a maior parte para si. No entanto, se o usurio quiser reproduzir vdeo em HD com 1080i ou 1080p, vale a pena conectar o drive de rede via NFS.

Sistemas embarcados

Listagem 2: Como modificar o arquivo de configurao


ctrl_interface=/var/run/wpa_ supplicant eapol_version=1 ap_scan=1 network={ ssid="(E)SSID" scan_ssid=1 proto=WPA (or RSN for WPA2) key_mgmt=WPA-PSK pairwise=TKIP (or CCMP) group=TKIP (or CCMP) psk="key" }

O segundo e terceiro projetos empregam o Raspberry Pi como um sistema embarcado em uma rede - sem um teclado, mouse ou monitor, mas com acesso LAN/WLAN. Neste tipo de sistema, podemos ler as mensagens iniciadas com um terminal na porta serial. Se ocorrer um erro na configurao de rede, no ser possvel acessar o sistema atravs do SSH, logo, conectar-se diretamente atravs de um monitor e teclado a nica maneira de logar no sistema e corrigir o erro. Por esse motivo, o usurio faria bem em ativar a interface serial (quadro 2). O acesso com SSH atravs da rede deve ser sempre a primeira escolha; o acesso via interface serial deve ser

usado apenas como uma porta de fundo para emergncias. O prximo passo na construo do sistema embarcado a configurao de uma conexo de rede; neste exemplo, vamos conectar atravs de uma WLAN. A instalao padro do Raspbian j contm os pacotes de firmware dos sticks WLAN populares, bem como do programa cliente wpa_supplicant. Para ver se a stick WLAN est ativa, conecte o hardware e pesquise a reao correspondente do kernel no syslog. Agora, a nica coisa que resta a fazer configurar o wpa_supplicant para um ponto de acesso. Em uma rede com um servidor DHCP no roteador, encontraremos os dados essenciais no relatrio fornecido pelo comando iwlist scanning. O usurio modifica, ento, a configurao do arquivo
/etc/wpa_supplicant/wpa_supplicant. conf, como mostrado na listagem 2, e /etc/network/interfaces, como mostra-

do na listagem 3. Finalmente, inicie a conexo com sudo ifup wlan0.

Projeto 2: ponto de acesso


O Raspberry Pi tambm pode servir como um ponto de acesso (figura 2). Neste caso, ele simplesmente envia tudo o que o stick WLAN recebe diretamente porta LAN, como uma espcie de ponte. por isso que esta

62

www.linuxmagazine.com.br

Raspberry Pi | TUTORIAL

o encaminhamento de pacotes entre as duas interfaces. Os pacotes necessrios so instalados com:


$ sudo apt-get install hostapd bridge-utils

Listagem 4: Adicionar ao hostapd.conf


ctrl_interface=/var/run/hostapd ctrl_interface_group=0 driver=nl80211 # according to driver support macaddr_acl=0 auth_algs=3 ignore_broadcast_ssid=0 wpa=2 # for WPA2 with PSK wpa_key_mgmt=WPA-PSK rsn_preauth=1 rsn_preauth_interfaces=wlan0 rsn_pairwise=CCMP wpa_passphrase=password interface=wlan0 hw_mode=g channel=11 # a free or weak channel ssid=(E)SSID

Configure o ponto de acesso WLAN em trs etapas: primeiro, insira a seguinte linha no /etc/default/hostap:
DAEMON_CONF=/etc/hostapd/hostapd. conf

Figura 1 Cabealho para o qual a

placa de circuito envia os sinais TXD e RXD de uma interface serial.

configurao chamada de modo bridge (bridged mode). Desta forma, podemos aumentar o alcance de uma rede sem fio existente. A configurao realizada em duas etapas. Na primeira, devemos configurar o acesso direto WLAN com o daemon hostapd. No entanto, note que o hostapd no totalmente compatvel com todas os WLAN sticks. Procure na Internet por uma lista de hardwares suportados [9]. Na segunda etapa, precisamos configurar

Em seguida, adicione os contedos da listagem 4 para o arquivo /etc/hostapd/hostapd.conf, modificando-o para se ajustar ao ambiente local, se necessrio. Um exemplo de configurao para o arquivo /etc/network/interfaces encontrado na listagem 5. A listagem 6 mostra como iniciar o ponto de acesso e a ponte de rede (network bridge). O consumo de energia menor com a operao LAN. Dependendo da distncia entre as estaes WLAN e do volume de dados transferidos, o consumo de energia para um cliente WLAN ou ponto de acesso flutuou entre 3.3 e 3.8 watts, enquanto que em funcionamento de rede local (LAN),

o consumo foi de cerca de 2.9 watts. Se ambas as interfaces fossem ativas, o valor estaria entre 3.5 e 4 watts.

Projeto 3: controlador de temperatura


Alm de servir como um ponto de acesso flexvel, o Raspberry Pi tambm excelente para o controle de processos simples. O exemplo a seguir utiliza medies de tempe-

Listing 3: Como modificar /etc/network/interfaces


auto wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/ wpa_supplicant.conf

Figura 2 Raspberry Pi operando como um ponto de acesso - com um consumo de energia de apenas 3.5 Watts.

Linux Magazine #100 | Maro de 2013

63

TUTORIAL| Raspberry Pi

Listagem 5: Interfaces de rede


auto wlan0 iface wlan0 inet static address 192.168.128.1 netmask 255.255.255.0 broadcast 192.168.128.255

Listagem 7: Pacotes Python e bibliotecas


$ sudo apt-get install git python3 python-pip pythonvirtualenv $ git clone https://github.com/quick2wire/ quick2wire-gpio-admin.git The red and green $ git clone https://github.com/quick2wire/ quick2wire-python-api.git $ cd quick2wire-gpio-admin $ make $ sudo make install $ sudo adduser pi gpio $ virtualenv TEMPCONTROL $ source TEMPCONTROL/bin/ activate $ cd quick2wire-python-api $ sudo python3 setup.py install

Listagem 8: Programa do controlador


01 #!/usr/bin/env python3 02 import quick2wire.i2c as i2c 03 import time 04 from quick2wire.gpio import Pin, exported 05 06 busaddr = 0x48 07 regaddr = 0x00 08 redLED = Pin(16, Pin.Out) 09 greenLED = Pin(18, Pin.Out) 10 11 with exported(Pin(16, Pin. Out)) as redLED, \ 12 exported(Pin(18, Pin.Out)) as greenLED, \ 13 i2c.I2CMaster() as bus: 14 while True: 15 temp_hib, temp_lob = bus. transaction( i2c.writing_bytes(busaddr, regaddr), i2c.reading(busaddress, 2))[0] 16 temp = (temp_hib << 1 | temp_lob >> 7) / 2. 17 if temp > 25: 18 redLED.value = 1 19 greenLED.value = 0 20 elif temp < 22: 21 redLED.value = 0 22 greenLED.value = 1 23 else: 24 redLED.value = 1 25 greenLED.value = 1 26 print ("%02.01f" % temp) 27 redLED.value = 0 28 greenLED.value = 0 29 time.sleep(5)

Listagem 6: Iniciar ponto de acesso


$ sudo $ sudo $ sudo eth0 $ sudo wlan0 $ sudo service hostapd start brctl addbr myBridge brctl addif myBridge brctl addif myBridge ifconfig myBridge up

ratura cclicas de um ambiente e, dependendo do valor, sinaliza os resultados visualmente com dois LEDs. Em temperaturas acima de 25 graus Celsius, o controlador aciona o LED vermelho; a menos de 22 graus Celsius, aciona o LED verde. Ambas as luzes so acionadas a valores entre estes dois extremos (figura 3). Este projeto, claro, destina-se a um experimento de prova de conceito. Em uma implementao do mundo real, o controlador pode conduzir a alguma outra ao, como iniciar um aquecedor ou fechar as cortinas, em vez de simplesmente acionar um LED. A unidade de temperatura do controlador requer um hardware adicional ocupando uma placa de expanso separada. Vamos precisar das seguintes peas: o LM75 IC como sensor de temperatura e o MAX-3232CPE IC, incluindo quatro capacitores eletrolticos 0.47F, como transceptores para a interface serial (UART), juntamente com um conector de nove pinos D-sub ou um soquete para montagem PCB e um cabo de interface. Alm disso, precisaremos tambm de dois LEDs, vermelho e verde, cada um com um resistor em srie de 22 e um transistor NPN (por exemplo, o
64

BC237) como driver, bem como duas resistncias de 10k para o barramento I2C. Materiais diversos, como uma placa de montagem (breadboard), filtro de linha, cabo de fita plana (flat-ribbon cable) e capacitores de desacoplamento serviro como base. O popular mdulo LM75 serve como sensor de temperatura e conectado ao barramento I2C. A mquina controla os dois LEDs atravs de dois pinos GPIO e uma fase de transistor. A fiao simples podemos usar um modelo que encontrarmos na Internet. Na verdade, o SoC possui duas interfaces mestres no barramento I2C, cuja sada tambm encontrada no syslog, mas somente uma das duas est disponvel no cabealho de linha dupla (P1-03 e P1-05) a que possui o barramento ID 0 (bus-ID 0). Podemos ativar o barramento I2C instalando os dois drivers i2c-bcm2708 e i2c-dev. Para fazer isso, remova o driver i2c-bcm2708 da lista de drivers que no devem ser carregados em /etc/modprobe.d/raspiblacklist. conf. Podemos tambm especificar o driver i2c-dev, que cria a interface do dispositivo no diretrio /dev, em /etc/modules.

O barramento estar ativo uma vez que o sistema for reiniciado. Para ativ-lo sem reiniciar, execute o comando modprobe i2c-bcm2708 I2C-dev. Para realizar operaes no barramento I2C como um usurio normal, primeiro precisamos instalar algumas ferramentas correspondentes e definir as permisses de grupo:
$ sudo apt-get install i2c-tools $ sudo addgroup pi i2c

Os endereos onde os mdulos se encontram revelado pelos valores encontrados na sada retornada por

www.linuxmagazine.com.br

Raspberry Pi | TUTORIAL

O usurio ter que fornecer o script com as permisses necessrias para execuo. Aps a inicializao, ele ir continuamente dispor os valores medidos no console a cada atualizao dos LEDs.

Concluso

Figura 3 O Raspberry Pi com uma placa de expanso como um monitor

de temperatura. A luz verde na placa de expanso confirma que a temperatura est abaixo de 22 graus Celsius.

i2cdetect -y 0

Dependendo de como foram cabeados os trs pinos do LM75, a sada ir conter exatamente um valor na faixa hexadecimal de 0x48 a 0x4F. O usurio, ento, ir ler a palavra de temperatura de 2 bytes do LM75 no registro de endereo 0 com o comando:
$ i2cget -y 0 I2C bus_address register_address w

sas. Os LEDs vermelho e verde so GPIO23/GPIO24, de acordo com o cabealho, mas tambm esto conectados ao P1-16/P1-18. A primeira denominao corresponde documentao BCM2835 e aos valores do kernel. No entanto, as bibliotecas Python seguem a segunda nomenclatura.

O Raspberry Pi no , obviamente, um sistema desktop. Se utilizar o terminal parecer algo muito estranho e enigmtico para o usurio, comece no desktop e trabalhe o caminho para a linha de comando de forma gradual. Desde o princpio, o RasPi foi concebido como um PC com eficincia energtica para aplicativos multimdia, e claramente destinado para uso como um sistema embarcado. 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/8388

Mais informaes
[1] Raspberry Pi: http://www.raspberrypi.org/ [2] Guia de compra de hardware: http://elinux.org/RPi_ Hardware_Basic_Setup_#Typical_Hardware_You_Will_Need [3] Mais ajuda ao escolher hardware: http:// elinux.org/RPi_VerifiedPeripherals [4] Farnell element14 (Europa) / Newark element14 (Amrica do Norte): http://uk.farnell.com http://www.newark.com [5] RS Components (Inglaterra) / Allied Electronics (Amrica do Norte): http://uk.rs-online.com http://www.alliedelec.com [6] Para respostas a questes: http://elinux.org/RaspberryPiBoard [7] Raspbian Wheezy: http://www.raspbian.org/ [8] Reprodutor de udio/vdeo Omxplayer: https:// github.com/huceke/omxplayer/ [9] Hostapd: http://hostap.epitest.fi/hostapd/ [10] API Quick2Wire Python: https://github.com/ quick2wire/quick2wire-python-api [11] GPIO Admin: https://github.com/quick2wire/quick2wire-gpio-admin

A ficha de dados do mdulo ser uma ajuda para a converso do valor crptico retornado (exemplo: 0x8015) para a temperatura correspondente. Python um ambiente de software adequado para o controlador, desde que as bibliotecas de classe j existam para o Raspberry Pi para acessar o barramento I2C e os pinos GPIO. Este exemplo usou duas bibliotecas [10] [11]. A listagem 7 mostra a instalao dos pacotes e bibliotecas. O programa em si muito simples (listagem 8): ele l o valor do sensor (linha 15) em um ciclo de cinco segundos e converte a leitura do sensor para o valor da temperatura (linha 16). O programa ento aciona os dois LEDs para ligado ou desligado, de acordo com a inteno do usurio. As diferentes designaes para os pinos GPIO so um pouco confu-

Linux Magazine #100 | Maro de 2013

65

Aplicativos para gerentes de projetos

ANDROID

Gesto na palma da mo
Conhea cinco ferramentas indispensveis para a gesto de projetos de TI e resolva seus problemas de controle de tarefas, tempo e recursos. por Flvia Jobstraibizer

erentes de projeto, gestores de TI e outros profissionais que diariamente necessitam ter o controle total do andamento das tarefas de suas equipes sofrem com a falta de aplicativos especficos para este fim e que funcionem corretamente em dispositivos mveis. A mobilidade trouxe com ela inmeras vantagens e entre elas, a principal manter o controle sobre tudo o que est sob nossa responsabilidade, de qualquer lugar. Mas para que isso acontea, necessrio que o aplicativo utilizado, fornea os recursos necessrios para garantir nossa tranquilidade. O Android j famoso por possuir uma infinidade de softwares em seu

rico acervo. E softwares de gesto e gerenciamento de projetos no so excesso. No entanto, testar cada um deles pode demandar tempo, o que, muitas vezes, um escasso recurso. Neste artigo vou apresentar cinco ferramentas que, como gerente de projetos, testei pessoalmente e obtive minhas impresses a respeito de cada uma, com suas particularidades, prs e contras. Todas as ferramentas so gratuitas e podem ser baixadas no site do Google Play [1].

Thorsten Kramer, decidiu criar o aplicativo em vrios mdulos instalveis, um para cada necessidade. Existe, alm do Project Schedule que o gerenciador de projetos em si, o Project Schedule Office, que um pacote de ferramentas para escritrio no estilo LibreOffice, o Project Schedule Contacts que cuida de forma completa dos recursos humanos dos projetos e o Project Schedule PDF Export, que muito til para compartilhamento

Project Schedule Free


O Project Schedule um aplicativo de que gosto muito por conta da modularidade. O desenvolvedor,

Figura 1 Vizualisador de tarefas do Project Schedule Free.

Figura 2 Incluso de novas tarefascom recursos completos.

66

www.linuxmagazine.com.br

Aplicativos para gerentes de projetos | ANDROID

Figura 3 Vizualisador de tarefas do Project Schedule Free no tablet.

do calendrio e dos grficos com os colaboradores ou clientes. Todas as ferramentas so integradas entre si aps instaladas individualmente, e no so dependentes umas das outras. O Project Schedule na verso paga que custa R$15,00 (e que particularmente comprei por conta da utilidade do programa), possui de diferenciais apenas o fato de no exibir banners de propagandas, j vem com o PDF Export completo que exporta os diagramas de

Gantt, listas de tarefas, custos e sobrecargas de trabalho e exporta tambm os dados em formato de planilha. Na verso gratuita h todos os recursos necessrios para qualquer gerente de projeto: possvel criar e

gerenciar mltiplos projetos, carregar informaes a partir de arquivos CSV, XLS, XML etc., visualizar tarefas sob diversas formas: por tempo, por recurso, por hora etc (gura 1). A incluso de novas tarefas tambm bastante facilitada (gura 2), com recursos como incluso de horrios, incio e fim da tarefa, colaborador/contato (que pode vir do mdulo externo ou ser cadastrado manualmente) e outros recursos.

Figura 4 O PMS simples e objetivo.

Figura 5 Visualizao de tarefas


com monitor de status.

Figura 6 A interface do TeamworkPM


limpa e objetiva.

Linux Magazine #100 | Maro de 2013

67

Figura 7 Visualizador geral de


tarefas do TeamworkPM.

A visualizao do projeto e tarefas no tablet tambm bastante rica em detalhes (figura 3). O programa merece crditos no momento da escolha de um gerenciador de projetos simples e objetivo.

Project Management System


O Project Management System (ou PMS) outro aplicativo bastante simplificado e voltado para pequenos projetos de desenvolvimento de software ou projetos curtos e que no necessitem de muitos recursos (figura 4). Possui gerenciamento de pessoas (Teams) para as quais as tarefas podem ser alocadas, listas de tarefas por projeto e monitores de status de cada tarefa (figura 5).
Figura 9 Gerenciamento dos projetos cadastrados com andamento das tarefas.

tarefas, gerenciador de pessoas, leitura e resposta de mensagens trocadas entre os colaboradores do projeto, criao e acompanhamento de milestones e outros recursos ( figura 7).

AceProject
O AceProject outro projeto promissor. Utilizei a ferramenta durante muito tempo e sem dvida nenhuma ela no deixa nada a desejar frente a seus concorrentes. A interface o que primeiro conquista o usurio, pois extremamente amigvel. Possui boa acessbilidade: todos os recursos so fceis de serem encontrados (figura 8). Possui capacidade para gerenciar mltiplos projetos de forma clara e

Teamwork PM
O aplicativo TeamworkPM, criado pela empresa homnima e que especializada somente em produtos e solues para gesto de projetos, est maduro o suficiente para ser usado profissionalmente ( figura 6). Possui recursos como: mltiplos projetos, incluso rpida de

Figura 8 Acessibilidade perfeita


no AceProjetc.

68

www.linuxmagazine.com.br

Aplicativos para gerentes de projetos | ANDROID

Figura 10 Visualizao facilitada de


tarefas em diversos formatos.

objetiva, mostrando o andamento e prioridade de cada um (figura 9). A gesto do tempo de cada tarefa tambm um diferencial: ela possui informaes muito completas sobre o tempo gasto (ou decorrido at ento), o status da tarefa no momento e outras informaes que podem ser visualizadas em formato de lista, calendrio ou grfico de Gantt (figura 10).

sendo o principal diferencial a possibilidade de medir o desempenho de um determinado colaborador, o que pode ser til para projetos onde os recursos humanos recebem o pagamento sob a forma de valores por hora (figura 11). Uma rea dedicada s notas do projeto tambm outro ponto de destaque, pois facilita a visualizao dos comentrios e apontamentos enviados pelos membros do projeto (figura 12). Assim como seus similares, o LiquidPlanner gerencia mltiplos projetos e contatos, possui visualizao de tarefas individuais, clonagem de tarefas e atribuio de uma mesma tarefa para vrios contatos, rea para troca de documentos anexados e outros recursos. Vale a pena experiment-lo.

Figura 11 Monitor de desempenho de


um colaborador.

Concluso
H ainda muitos outros bons aplicativos no Google Play criados para facilitar o dia a dia dos gerentes de projetos. Cada um possui particularidades que podem ser teis para alguns projetos e pessoas, ou irrelevantes para pequenos projetos pessoais. necessrio uma boa dose de pacincia para encontrar aquele que mais adequado ao seu caso, afinal de contas, a ideia principal deixar que o software trabalhe para ns e no o contrrio!

LiquidPlanner
Um aplicativo completo e amigvel. Este o resumo do LiquidPlanner, que possui alguns diferenciais frente aos seus outros concorrentes,

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

O autor
Flvia Jobstraibizer (fjobs@linuxnewmedia.com.br, twitter: @aviajobs) 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.

Figura 12 Notas do projeto: uma


viso geral rica em detalhes

Mais informaes
[1] Google Play: https:// play.google.com/

Linux Magazine #100 | Maro de 2013

69

O novo xerife da inicializao | ANLISE

Boot com UEFI

O novo xerife da inicializao


A especicao do boot UEFI oferece novas capacidades e novas dores de cabea tambm se o usurio no estiver preparado para isso. por Christopher Dock

ANLISE

lgumas coisas das quais nunca devemos esquecer: primeiro carro primeiro computador primeiro beijo No entanto, uma destas primeiras coisas no deve ser um borked (termo usado para algo que foi destrudo ou no funciona corretamente) [1] das parties do novo laptop. Infelizmente, algumas pessoas passam por essa experincia, especialmente quando displicentes ao instalar o Kubuntu 12.04 em modo dual-boot com o Windows 7. A principal razo de problemas geralmente porque o Windows 7 original pr-instalado estava configurado para usar o novo recurso de boot UEFI, e o Linux novo, adicionado posteriormente, no tinha essa capacidade.

Master Boot Record (MBR)


At recentemente, a maioria dos computadores usava o Basic Input Output System (BIOS) para gerenciar o processo de boot. O sistema de BIOS executa algumas tarefas preliminares e ento carrega o setor de boot do disco rgido. Este setor de boot chamado de Master Boot

Record (MBR) e composto pelos primeiros 512 bytes de incio do disco, onde esto descritos no apenas o layout do disco (suas parties), como tambm a forma de iniciar o (ou os) sistema operacional. O MBR mudou um pouco ao longo dos anos, mas no radicalmente to diferente de quando foi criado, em 1983. O MBR contm quatro parties primrias, onde uma delas definida como partio ativa ou inicializvel. Juntamente com uma lista das parties e contm um pequeno carregador de boot (bootloader) (de aproximadamente 440 bytes) para carregar o sistema operacional. Este bootloader encontra a partio ativa e ento executa o Volume Boot Record (o primeiro setor da partio), que continuar o processo de carregamento do sistema operacional. O MBR possui algumas limitaes que tm impedido seu progresso. Duas dessas limitaes so o fato de o nmero de parties primrias ser limitada a quatro, e o tamanho das parties de disco ser limitada a 2TB. Estes limites no eram um problema quando surgiu a primeira implementao do MBR, mas agora que possvel comprar um drive USB de 3TB por

menos de R$300, estas questes se tornaram mais visveis. Os especialistas tm reconhecido a necessidade de romper com o passado e produzir um moderno firmware independente do sistema operacional e com suporte para inicializar a partir de discos de grandes dimenses, bem como em um ambiente sem sistema operacional de forma flexvel, com capacidade de rede e design modular. A interface de firmware estendida (Extended Firmware Interface) da Intel o resultado desse esforo. Uma organizao de toda a indstria foi formada em 2005 para promover a adoo da especificao EFI, e a especificao foi ento renomeada de Unified EFI (UEFI) [2].

Como funciona a UEFI


A UEFI traz o conceito de BIOS para um nvel totalmente novo. Em vez de um MBR de 512 bytes e algum cdigo de inicializao, a UEFI, em contraste com a opo de simples legado do BIOS, sabe o que um sistema de arquivos e ainda possui seu prprio sistema de arquivos, com arquivos e drivers.

Linux Magazine #100 | Maro de 2013

73

ANALISE | O novo xerife da inicializao

Este sistema de arquivos possui geralmente entre 200MB e 500MB e formatado como FAT32. Em vez de alguns bytes de cdigo de montagem para carregar o sistema operacional, cada sistema instalado deve possuir um bootloader prprio (como por exemplo, no caso do Grub: grubx64. efi). Este bootloader ter lgica o suficiente para exibir algum tipo de menu de boot ou iniciar o carregamento de um sistema operacional. Basicamente, a UEFI o prprio mini-sistema operacional. A UEFI tem deixado de lado a antiga metodologia de partio MBR e, ao invs dela, utiliza o GPT (GUID Partition Table) para gerenciar tabelas de partio. Usar o GPT elimina a limitao no nmero de parties e tambm garante o suporte para parties maiores de at 9ZB [3]. A partio GPT parte do padro UEFI, mas limitada a apenas uma lista de parties sem nenhuma lgica de bootloader. A especificao permite um nmero quase ilimitado de parties, mas implementaes especficas podem impor limites mais prticos (o Windows, por exemplo, limita o nmero de parties a 128 [4]). Como o MBR, a UEFI marca uma das parties como ativa, mas esta apenas a partio EFI, nunca qualquer uma das parties do sistema operacional. A estrutura geral do sistema de arquivos EFI significa que cada sistema operacional (ou fornecedor) tem seu prprio diretrio. Este diretrio pode conter quaisquer dados e tambm todos os arquivos necessrios para carregar o sistema operacional:
/EFI /Boot /Microsoft/ /ubuntu /refind

Alguns diretrios possuem uma hierarquia bastante horizontalizada, enquanto outros (por exemplo, os da

Microsoft [5]), no. Os programas bootloader, por padro, possuem a extenso .efi; no entanto, esta apenas uma conveno: arquivos bootloader so devidamente criados e executados quando necessrio mesmo sem essa extenso. Olhar para a estrutura de diretrio EFI oferece a esperana de que, com a prxima instalao ou reinstalao, outro sistema operacional Microsoft no ir sobrescrever nossa instalao Linux atual, mas no tentamos isso ainda. Uma coisa especialmente conveniente sobre como a UEFI foi implementada no Linux que, aps o computador ser iniciado, a partio EFI, pelo menos no Kubuntu, montada sobre a partio de boot (/boot/ efi), o que torna fcil mudar ou experimentar este sistema de arquivos. Levando isso um passo adiante, no entanto, um bootloader apenas um programa que executa a operao de carregamento do sistema operacional. E se este programa fosse um Shell? Um Shell com habilidade UEFI permitiria que o usurio interagisse com o sistema UEFI para modificar os parmetros de boot, iniciasse bootloaders e obtesse informaes sobre o ambiente de firmware. Shells para EFI j existem mas o usurio no precisa se contentar com qualquer Shell que tenha sido enviado com sua instalao UEFI: ao invs disso, pode obter um novo ou escrever o seu prprio. O projeto Tianocore fornece um EFI Shell [6] referenciado no site Arch Linux [7]. O Shell Tianocore inclui vrias opes que atualmente no possuem muita utilidade, mas que podem vir a calhar no futuro. Com este Shell, possvel selecionar um novo bootloader manualmente, fazer listas de diretrio, editar arquivos de texto ou remover arquivos. Ao iniciar o Shell, necessrio um ponto de partida. Curiosamente, quando executamos o nosso Shell, o diretrio de trabalho atual no se encontra em qualquer um dos sistemas

de arquivos, o que causa um erro em cada comando. Para criar uma listagem de diretrio ou mudar para um diretrio diferente, s precisamos selecionar o sistema de arquivos primeiro. Este Shell foi criado, conferindo-lhe uma atmosfera MS-DOS. Por exemplo, para mudar para um sistema de arquivos, basta selecionar o nmero do sistema de arquivos: FS0: <Enter>. A designao de unidade FS0 uma referncia ao File System 0; dependendo da configurao, tambm podemos ter um FS1 ou FS2. Podemos registrar um novo Shell, um novo sistema operacional, ou sistemas operacionais mltiplos com a UEFI. Assim, o prprio computador pode perfeitamente suportar mltiplos sistemas operacionais ou Shells. Temos algumas opes diferentes para manter essas entradas. A primeira seria usar o programa efibootmgr do Linux para manipular entradas armazenadas na memria RAM no voltil (NVRAM). Dependendo da implementao, a UEFI pode realmente suportar o efibootmgr quando inicializar em tela UEFI/BIOS. O Asus N76, que usa o sistema de firmware Aptio baseado em UEFI da AMI, permite que o usurio registre o programa diretamente com a opo Add New Boot Option (adicionar nova opo de boot) (gura 1). Eventualmente, podamos faz- lo trabalhar quando paramos de fazer referncia explcita unidade (no caso, \EFI\path versus FSO:\EFI\path). Foi possvel, ento, experimentar novos bootloaders e um Shell. As entradas do caminho apontado em path so relativas partio EFI instalada.

Boot seguro
A UEFI oferece muita flexibilidade, mais (e maiores) parties, e uma maneira fcil e padro para a definio de vrios sistemas operacionais. O que h para no gostar? Talvez o usurio j tenha ouvido

74

www.linuxmagazine.com.br

O novo xerife da inicializao | ANLISE

falar do infame recurso Secure Boot (Boot Seguro) da UEFI, que foi controverso e bastante comentado Internet a fora e esteja preocupado com isso. O boot seguro garante o processo de boot, impedindo drivers ou bootloaders que no sejam assinados com uma chave conhecida de inicializar, evitando uma possivel infecco do seu sistema de inicializao por vrus ou trojans. Como vrias fontes na comunidade de cdigo aberto j relataram, este recurso impediria com eficincia que algum compilasse a distribuio favorita e a instalasse no prprio PC (pelo menos no pior dos casos um caso um pouco melhor seria se o usurio tivesse a capacidade de desativar o recurso de boot seguro [8] [9]).

GPT particionado Sistema de arquivos UEFI Instalao do Windows no-

Como consertar o laptop


Vamos considerar a seguinte configurao problemtica: Drive 0:

funcional Drive 1: MBR particionado Algumas parties repletas de dados Instalao Linux no-funcional A incompatibilidade entre GPT e MBR, bem como nossos esforos de reparo subsequentes, tornaram o sistema impossvel de inicializar (unbootable ). Quando acrescentamos o Linux, o bootloader preexistente no pode inicializar o sistema Linux no Drive 1 MBR particionado. Tentamos mudar o drive de boot, que nos devolveu o Linux incluindo um menu GRUB que apontava para a opo de inicializao do Windows. Contudo, o Windows no iniciou com xito. Para obter o Windows de volta, tentamos usar a opo Windows Restore, mas causamos ainda mais problemas, o que tornou o sistema Linux impossvel de inicializar.

Como corrigir os problemas com a baguna do dual-boot? A facilidade da nossa recuperao foi porque tnhamos uma imagem de backup do primeiro disco, antes de qualquer instalao Linux, porque o Linux estava sendo instalado no segundo disco, e porque reconhecemos a necessidade de instalar o Kubuntu, com suporte da EFI. A lista de tarefas a serem realizadas, foi pequena: 1. Converter a unidade 1 do MBR para GPT; 2. Adicionar/modificar parties no Drive 1; 3. Instalar o Kubuntu, com suporte da EFI; 4. Salvar toda a configurao da EFI Instalao Kubuntu; 5. Restaurar imagem de disco para Drive 0; 6. Restaurar configurao Kubuntu para partio EFI; 7. Reiniciar o computador e testar. Nota: quando se tratam de parties, importante fazer backup dos dados para evitar uma possvel perda.

Figura 1 Alguns sistemas de rmware permitem adicionar uma opo de inicializao prpria para a congurao.

Linux Magazine #100 | Maro de 2013

75

ANALISE | O novo xerife da inicializao

O processo segue de perto uma instalao grfica padro; configuramos nossas parties de troca (swap) (/) e /home e selecionamos o GRUB como bootloader. O nico truque para esta etapa como devemos iniciar o disco.

Arquivos de congurao do Kubuntu


Figura 2 No nosso Asus, os dispositivos de UEFI boot prontos so
iniciados com o prexo UEFI:.

Converso MBR para GPT


O laptop foi inicializado com o Kubuntu 12.04 com um DVD Live. As parties estavam bem; o problema era o particionamento, ento a coisa mais fcil era usar o comando sgdisk para ler na antiga tabela de partio MBR e escrever uma nova tabela de partio GTP. importante ter em mente que deve haver algum espao livre para manter as novas estruturas GPT. Isso pode exigir redimensionar a primeira partio para deixar algum espao livre no incio do disco, bem como redimensionar a partio final para deixar algum espao no final. Tudo isso descrito em detalhes por Rod Smith [10]. Uma vez que toda a preparao tenha sido feita, o comando a seguir executa a converso:
sgdisk -g /dev/sdX

foi necessrio neste caso (o usurio tambm pode realizar o particionamento na etapa de instalao do Kubuntu).

A partio EFI simplesmente um sistema de arquivos FAT32. Fazer o backup da configurao significa simplesmente copiar os arquivos para um local seguro. Basta montar o sistema de arquivos EFI e copiar os arquivos necessrios para outro lugar:
mount /dev/sdX1 /mnt/mountpoint cp -rp /mnt/mountpoint/EFI/refind /media/usbstick cp -rp /mnt/mountpoint/EFI/ubuntu /media/usbstick

Instalao do Kubuntu 12.04 com suporte EFI


Esta etapa fcil, mas no 100% bvia. Quando colocamos um CD ou DVD na unidade e o iniciamos, a UEFI vai examinar o que a mdia tem disponvel; o que pode ser tambm um pendrive USB ou um DVD de boot. No entanto, pelo menos para o nosso Asus, tanto um DVD MBR de boot normal quanto um DVD de boot UEFI foram encontrados na lista de dispositivos de inicializao. Apesar de ambas as entradas se referirem ao mesmo disco, importante que a entrada UEFI seja escolhida porque esta entrada parece ser o gatilho para a utilizao do GRUB EFI em vez da configurao padro do MBR. No nosso Asus, os dispositivos UEFI inicializveis so prefixados com UEFI: na lista de boot (gura 2). Quando inicializamos o Kubuntu como um dispositivo UEFI, ele traz uma lista de menus GRUB familiares. possvel que qualquer uma dessas opes consiga instalar qualquer sistema compatvel com o EFI com sucesso, mas escolhemos a opo Install Expert Mode.

Nota: o diretrio EFI provavelmente ser a partio 1, sdX1, mas essa no uma regra.

Restaurar a imagem de disco para disk1


Como nunca planejamos fazer uma baguna na nossa instalao, antes de comearmos esta grande aventura, fizemos o backup do Drive 0 usando o comando dd:
Salvar dd bs=1M if=/dev/sdX of=/media/usbdevice/saved-image Restaurar dd bs=1M if=/media/usbdevice/saved-image of=/dev/sdX

Este comando ir fazer a converso adequada, mas deixar a unidade sem qualquer sistema operacional inicializvel.

Adicionar/modicar parties
Todo o particionamento foi feito durante a instalao anterior; nenhum particionamento adicional

Neste ponto, o Drive 0 do laptop possui a instalao original do Windows 7, mas a configurao do bootloader Kubuntu foi perdida. Isto no tem nada a ver com a Microsoft ou com o Windows, mas sim com a forma como fizemos o backup do disco.

76

www.linuxmagazine.com.br

O novo xerife da inicializao | ANLISE

Restauraro EFI do Kubuntu


O laptop foi inicializado com o Kubuntu 12.04 em um DVD Live para o prximo passo. A partio EFI simplesmente um sistema de arquivos FAT32. Restaurar a configurao significa simplesmente copiar os arquivos a partir de um local seguro:
mount /dev/sdX1 /mnt/mountpoint cp -rp /media/usbstick/refind /mnt/mountpoint/EFI cp -rp /media/usbstick/ubuntu /mnt/mountpoint/EFI

Mais informaes
[1] Borked: http://www.urbandictionary.com/define.php?term=borked [2] UEFI: http://www.uefi.org/home [3] Tamanho das parties GPT: http://en.wikipedia. org/wiki/GUID_Partition_Table [4] Windows e GPT: http://msdn.microsoft.com/en-us/ library/windows/hardware/gg463525.aspx [5] FAQ Windows e GPT: http://msdn.microsoft.com/enus/library/windows/hardware/gg463525.aspx [6] Tiancore ProjectL: http://sourceforge.net/apps/ mediawiki/tianocore/index.php?title=Efi-shell [7] Shell UEFI no Arch: https://wiki.archlinux.org/index.php/Unified_ Extensible_Firmware_Interface#UEFI_Shell_download_links [8] Como fazer o boot seguro da UEFI funcionar em plataformas abertas: http://www.linuxfoundation.org/publications/ making-uefi-secure-boot-work-with-open-plataforms/ [9] Linus Torvalds sobre Windows 8, UEFI e Fedora: http://www.zdnet.com/ blog/open-source/linus-torvalds-on-windows-8-uefi-and-fedora/11187 [10] http://www.rodsbooks.com/gdisk/mbr2gpt.html

Depois de restaurar esses arquivos, seremos capazes de reiniciar o laptop e iniciar o Linux ou o Windows 7.

Gostou do artigo? o?
Queremos ouvir sua a opinio. Fale Fa conosco em cartas@linuxmagazine.com.br ine.com.b Este artigo no nosso so site: sit http://lnm.com.br/article/8311 articl 311

Linux Magazine #100 | Maro de 2013

77

Calendrio de eventos
Evento Data
28 de janeiro a 3 de fevereiro

ndice de anunciantes
Local
So Paulo, SP

Informaes
http://www.campus-party. com.br/2013/index.html

Empresa
IBM

Pg.
02 07 09 11 13 16,17 21 27 31 39 59 77 83 84

SERVIOS

Campus Party 2013

IBM Microsoft Uol Cloud

/sys/dev

2 e 3 de maro

So Paulo, SP

http://www.linuxnewmedia. com.br/sysdev/

Impacta Plus Server Central Server Unodata e-smart

Web Expo Forum

3 e 4 de abril

So Paulo, SP

http://www.webexpoforum. com.br/

Gartner Data Center Summit

9 e 10 de abril

So Paulo, SP

http://www.gartner.com/ technology/summits/ la/data-center/

Big Data Fisl Cloud Conf

BITS 2013

14 a 16 de maio

Porto Alegre, RS

http://www.bitsouthamerica. com.br/

Watchguard IBM

A LINUX MAGAZINE TEM UM PRESENTE PARA VOC!

Quer ganhar essa mochila Targus personalizada de presente da Linux Magazine?


Veja o regulamento da promoo no site:

http://www.linuxmagazine.com.br/hotsite/mochila_natal
80
www.linuxmagazine.com.br

Assunto | SEO

NOME DA SEO
81

Linux Magazine #XX | Ms de 200X

PREVIEW

Linux Magazine #101


Virtualizao
Como obter o mximo de desempenho utilizando os recursos de virtualizao mais adequados para sua necessidade? Como monitorar, medir o desempenho e estabilidade destes ambientes? Esse o tema da prxima edio da Linux Magazine, que vai falar sobre alta disponibilidade em ambientes virtualizados, como controlar remotamente desktops e computadores monitorados distncia e at mesmo como criar sistemas de monitoramento inteligentes que auxiliem na rdua tarefa de identificar potenciais problemas antes que eles se tornem maiores. 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