10/2009
SL NA FACULDADE p.32
CONSEGI 2009 p.26
UNIX 40 ANOS p.30
SL para governos, usuários e empresas
Maddog explica como isso mostra a fragilidade das empresas
Para Taurion, estudantes de TI aprenderão mais com SL
# 59 Outubro 2009 Linux Magazine # 59
A REVISTA DO PROFISSIONAL DE TI INVASÃO LINUX PARK 2008 p.28 Iniciada em Porto Alegre a temporada de seminários Linux Park de 2008
CEZAR TAURION p.34 O Código Aberto como incentivo à inovação
#44 07/08
00044
R$ 13,90 € 7,50
A REVISTA DO PROFISSIONAL DE TI
9 771806 942009
AULA DE INVASÃO
CASE ALFRESCO p.26 A Construcap agilizou seus projetos com o Alfresco
VISUALIZAÇÃO DE INVASÃO
GOVERNANÇA COM
GRÁTIS
SEJA UM BOM GESTOR E UTILIZE AS MELHORES PRÁTICAS ADOTADAS E RECOMENDADAS PELOS PROFISSIONAIS MAIS EXPERIENTES NESSA ÁREA p.36 » O que dizem os profissionais certificados p.24 » Cobit, CMMI, ITIL. Quais as melhores práticas? p.36 » ITIL na prática p.39 » Novidades do ITIL v3. p.44
SEGURANÇA: DNSSEC p.69
VEJA TAMBÉM NESTA EDIÇÃO:
Com o DNSSEC, a resolução de nomes fica protegida de ataques. Mas seu preço vale a pena?
» Relatórios do Squid com o SARG p.60
REDES: IPV6 p.64
» Becape de bancos de dados com a Libferris p.46
Conheça as vantagens da nova versão do Internet Protocol, e veja por que é difícil adotá-la
» Java, Ruby e Rails: conheça o JRuby on Rails p.74 » Benchmarks do GCC 4.3? p.58 » LPI nível 2: Servidores NIS e DHCP p.52
WWW.LINUXMAGAZINE.COM.BR
LIDS MOD_MONO
A MELHOR DEFESA É UM BOM ATAQUE. APRENDA A INVADIR SISTEMAS PARA ENTENDER COMO DEFENDER SEUS SISTEMAS E REDES. p.33
UPGRADE ESCALONADORES
» Aula de invasão p.34 » Mapa gráfico de uma invasão p.41 » Linux à prova de invasão com LIDS p.47
UPNP OPENSOLARIS
O jeito certo de atualizar o sistema não é como todos fazem. Mas o cenário está melhorando.
ADOBE AIR
SEGURANÇA: UPGRADE 2.0 p.18
REDES: ASP.NET NO APACHE! p.67 Com o versátil mod_mono, seu Apache pode servir conteúdo .NET nativamente.
WWW.LINUXMAGAZINE.COM.BR
VEJA TAMBÉM NESTA EDIÇÃO: » Escalonadores de processo p.53 » OpenSolaris, sexto artigo p.58
» Adobe AIR no Linux p.64 » UPnP é fácil com o Brisa p.70
Expediente editorial
Sinal de maturidade
Diretor Geral Rafael Peregrino da Silva rperegrino@linuxmagazine.com.br Editor Pablo Hess phess@linuxmagazine.com.br
Editora de Arte Paola Viveiros pviveiros@linuxmagazine.com.br Coordenador de Comunicação Igor Daurício idauricio@linuxmagazine.com.br Tradutores Rodrigo Amorim e Leandro Melo de Sales Centros de Competência Centro de Competência em Software: Oliver Frommel: ofrommel@linuxnewmedia.de Kristian Kißling: kkissling@linuxnewmedia.de Peter Kreussel: pkreussel@linuxnewmedia.de Marcel Hilzinger: hilzinger@linuxnewmedia.de Centro de Competência em Redes e Segurança: Jens-Christoph B.: jbrendel@linuxnewmedia.de Hans-Georg Eßer: hgesser@linuxnewmedia.de Thomas Leichtenstern: tleichtenstern@linuxnewmedia.de Markus Feilner: mfeilner@linuxnewmedia.de Nils Magnus: nmagnus@linuxnewmedia.de Anúncios: Rafael Peregrino da Silva (Brasil) anuncios@linuxmagazine.com.br Tel.: +55 (0)11 4082 1300 Fax: +55 (0)11 4082 1302 Petra Jaser (Alemanha, Áustria e Suíça) anzeigen@linuxnewmedia.de Penny Wilby (Reino Unido e Irlanda) pwilby@linux-magazine.com Amy Phalen (Estados Unidos) aphalen@linux-magazine.com Hubert Wiest (Outros países) hwiest@linuxnewmedia.de Gerente de Circulação 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 – Austrália www.linux-magazine.ca – Canadá www.linux-magazine.es – Espanha www.linux-magazine.pl – Polônia www.linux-magazine.co.uk – Reino Unido Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta revista, a editora não é responsável por eventuais imprecisões nela contidas ou por consequências que advenham de seu uso. A utilização 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 permissão expressa da editora. Assume-se que qualquer correspondência recebida, tal como cartas, emails, faxes, fotografias, artigos e desenhos, sejam fornecidos para publicação ou licenciamento a terceiros de forma mundial não-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. Av. Fagundes Filho, 134 Conj. 53 – Saúde 04304-000 – São Paulo – SP – Brasil Tel.: +55 (0)11 4082 1300 – Fax: +55 (0)11 4082 1302
EDITORIAL
Prezados leitores,
Revisora Aileen Otomi Nakamura anakamura@linuxmagazine.com.br
Ainda ouvimos com frequência afirmações de que o Software Livre não cria nada de novo, apenas copia boas ideias vindas de softwares proprietários. No entanto, o nicho recém-inaugurado dos aplicativos para sistemas embarcados, em especial celulares e netbooks, mostra que um conceito já antigo do Software Livre, o repositório de pacotes, agora é aplicado com sucesso por empresas que desejam, acima de tudo, inovar para vender mais – uma prova da maturidade tecnológica e mercadológica do Software Livre. Apple, Google e Intel são três integrantes da nova onda de companhias que cercam seus produtos com repositórios de softwares já adaptados ao ambiente em que serão executados. A App Store da Apple, o Android Market no caso do Google e a iniciativa recém-anunciada da Intel para inaugurar um repositório de aplicativos para a plataforma Moblin demonstram que a ideia de manter todo um ecossistema em torno de um produto, seja ele hardware ou software, é de fato inovadora e benéfica para os negócios. A facilidade encontrada pelos usuários do iPhone ou do Android de simplesmente visitar suas respectivas “lojas” de aplicativos e selecionar alguns para baixar e instalar é um importante valor desses aparelhos. Não é difícil perceber que em breve esses ecossistemas serão bem mais importantes, do ponto de vista do consumidor, do que o hardware ou até o sistema operacional dos smartphones. O uso de repositórios de software, prática já antiga entre as distribuições GNU/Linux, parece estar sendo reconhecido pelas maiores empresas de software como uma forma de inovar, produzir mais e abocanhar fatias maiores do mercado, sem no entanto comprometer a segurança ou a qualidade de suas ofertas. Um efeito prático altamente positivo da difusão do uso de repositórios virá ao encontro aos proponentes e defensores do Software Livre. Quem já se deu o trabalho de incentivar usuários de sistemas Windows a adotar o GNU/Linux certamente esbarrou na dificuldade enfrentada por essas pessoas com relação à instalação de aplicativos. O hábito de navegar pela Internet em busca de um aplicativo, sem qualquer controle sobre o que este instalará consigo no sistema, é difícil de largar, para esses usuários. Especialmente para tais pessoas, eliminar o estranhamento do conceito de repositórios de software será um importante passo para facilitar a adoção de sistemas livres. n
Direitos Autorais e Marcas Registradas © 2004 - 2009: Linux New Media do Brasil Editora Ltda. Impressão e Acabamento: RR Donnelley Distribuída em todo o país pela Dinap S.A., Distribuidora Nacional de Publicações, São Paulo. Atendimento Assinante www.linuxnewmedia.com.br/atendimento São Paulo: +55 (0)11 3512 9460 Rio de Janeiro: +55 (0)21 3512 0888 Belo Horizonte: +55 (0)31 3516 1280 ISSN 1806-9428
Impresso no Brasil
.
Linux Magazine #59 | Outubro de 2009
Pablo Hess Editor
3
ÍNDICE
CAPA Ataque contra os atacantes
33
C onheça as ferramentas à disposição dos invasores para entender como eles agem e tomar as medidas necessárias para evitar problemas. Um bom ataque
34
Para se proteger, é preciso pensar como o invasor. A visão do IDS
41
E ncontre invasores com essas fáceis ferramentas de visualização. Tapa-buraco
47
E ntre os sistemas MAC para controle obrigatório de acesso, há uma boa alternativa aos famosos SELinux e AppArmor: o LIDS.
4
http://www.linuxmagazine.com.br
Linux Magazine 59 | ÍNDICE
COLUNAS
TUTORIAL 08
OpenSolaris, parte 6
Charly Kühnast
10
Zack Brown
12
E ste mês, conheça as formas de particionamento de discos mais fáceis e desconhecidas até pelos próprios administradores OpenSolaris.
Augusto Campos
14
Alexandre Borges
16
Kurt Seifried
18
Pablo
20
Klaus Knopper
Tomando um AIR
58
64
C om o advento do Adobe Integrated Runtime (AIR), os aplicativos em Flash agora rodam em qualquer desktop, incluindo o Linux.
NOTÍCIAS Geral ➧ Nero 4 para Linux
22
➧ Microsoft lança Silverlight para Linux
CORPORATE Notícias ➧ Palm se despede da Microsoft
24
REDES ASP.NET no Apache
67
O mod_mono permite hospedar aplicações .NET em seu servidor Apache 2.
➧ Cloud Xen: nuvem para empresas ➧ MySQL versus Oracle Consegi 2009
26
No Consegi 2009, governo, empresas e comunidade envolvidos com o Software Livre trocaram experiências. E fecharam acordos.
PROGRAMAÇÃO Rede Plug and Play
70
O Universal Plug and Play facilita a integração transparente de dispositivos de rede. Aprenda a usá-lo com o framework BRisa UPnP.
Coluna: Jon “maddog” Hall
30
Coluna: Cezar Taurion
32
ANÁLISE Fiscalização da fila
53
V eja como usar o Dtrace para observar as classes de escalonamento do OpenSolaris.
SERVIÇOS
Linux Magazine #59 | Outubro de 2009
Editorial
03
Emails
06
Linux.local
78
Eventos
80
Preview
82
5
c.h ww .s x –w ro ne gje nja sa
CARTAS
Permissão de Escrita
u
Emails para o editor
Pen drive seguro ✉
Lendo a edição 57 da revista, especialmente interessado na matéria sobre criptografia de pen drives, acredito que tenha ocorrido um equívoco no quadro, “Listagem 1: Criptografando um pendrive” na página 67. Supondo atribuir o diretório montado /mnt ao usuário, o comando correto na linha 4 seria: chown -R usuario:users /mnt
Ao menos fazendo esta singela modificação, a dica funcionou perfeitamente no meu sistema. Aproveito para adicionar uma dica a usuários do Gentoo Linux. Devido a mudanças nos ebuilds, desinstale o pacote sys-fs/device-mapper e instale o sys-fs/lvm2. Qualquer conflito com o udev será desfeito e será possível instalar tanto o pacote sys-fs/cryptsetup quanto o app-crypt/luks-tools. Rodolfo Timoteo da Silva
Resposta
Rodolfo, obrigado pela dica aos usuários do Gentoo. Com relação ao código, a sua sugestão vale caso o nome do usuário em questão seja “usuário” e ele percença ao grupo “users”. A instrução na linha 4 era chown -R seu_usuario:seu_grupo /mnt
Basta substituir “seu_usuário” pelo usuário em questão e “seu_grupo” por seu respectivo grupo, exatamente como você fez. n
Escreva para nós!
OpenSolaris não é Linux ✉
Sempre queremos sua opinião sobre a Linux Magazine e nossos artigos.
Caro editor, OpenSolaris não é Linux. Se a revista se chama Linux Magazine, ela precisa falar só de Linux e nada mais. Os artigos da revista sempre me ajudam e informam, mas quando falam de OpenSolaris eu simplesmente não leio. Se é Unix ou não, isso não me importa. Laura Pedroso Caro editor, estou muito feliz com a série sobre OpenSolaris que está sendo publicada na Linux Magazine nos últimos meses. No meu trabalho, sempre usamos só Linux nos servidores, mas recentemente começamos a usar também o OpenSolaris, e estes artigos estão me ajudando a ganhar intimidade com o sistema. Carlos Fernandes 6
✉
Envie seus emails para cartas@linuxmagazine.com.br e compartilhe suas dúvidas, opiniões, sugestões e críticas. Infelizmente, devido ao volume de emails, não podemos garantir que seu email seja publicado, mas é certo que ele será lido e analisado.
Coluna do Zack
COLUNA
Crônicas do kernel Contos e histórias do desenvolvimento do Linux.
Desfragmentação no Ext4
Clemens Eisserer perguntou o estado do recurso de desfragmentação online do Ext4, e Diego Calleja disse que ele foi acrescentado à versão 2.6.31. Clemens ficou muito feliz ao saber disso, principalmente porque sua impressão era de que a desfragmentação online estava morta. Não que ele visse problemas de fragmentação no Ext4, mas às vezes um pouco de desfragmentação poderia ser ainda melhor – como quando o Firefox tenta acessar seu banco de dados SQLite. Theodore T’so ofereceu uma visão do estado da desfragmentação. Em princípio, ele disse, o recurso não estava exatamente completo, ainda que também não tivesse morrido. A ferramenta de usuário ainda precisava de muitos ajustes, incluindo o uso dos ioctls que seriam incluídos juntamente com alguns novos patches do Ext4. O código de desfragmentação, ele acrescentou, ainda não é suficientemente inteligente com relação ao espaço livre. Ele espera que todos esses problemas sejam resolvidos no futuro próximo, mas afirmou que parte do problema era simplesmente não ter gente suficiente trabalhando nessa questão.
Novo software para a lista do kernel
Matti Aarnio começou a escrever seu próprio software de lista de emails, semelhante ao majordomo. A ferramenta de Matti se baseia no MySQL para armazenar e consultar todos os dados da lista (não os emails, claro, apenas para os dados relevantes para a lista). Ele também melhora alguns aspectos de segurança do majordomo, por exemplo, dificultando a tarefa de um usuário maliciosamente descadastrar outro de uma dada lista. Ele não ofereceu uma explicação muito convincente de por que acha necessário um novo software para gerenciar a lista de emails; mas quem disse que não se 12
pode programar a esmo só por diversão? Até o momento, ele só dedicou alguns dias ao projeto. Vamos ver como isso vai continuar.
Memória transcendente do Xen
Os desenvolvedores do Xen implementaram a “memória transcendente” (tmem), um tipo mais macio de memória que não está diretamente associado ao hardware, mas que pode ser fornecido virtualmente pelo sistema. A ideia é que a tmem seja um pouco mais abundante para os programas de usuário, com o custo de potencialmente desaparecer sem aviso. Atualmente, o Xen é a única coisa que implementa a tmem, mas em teoria ela poderia ser um recurso genérico implementado por qualquer código que a desejasse. Dan Magenheimer e vários outros escreveram patches para implementar uma API para usar os diversos recursos da tmem, assim como para criar a infraestrutura para ela no Xen. No geral, muitos desenvolvedores do kernel parecem ao menos interessados nesses patches, embora algumas questões de segurança tenham se sobressaído a outras. Mas ninguém parece se opor fundamentalmente ao conceito da tmem.
Suporte ao HTC Dream
Pavel Machek postou alguns patches para acrescentar suporte à câmera do smartphone HTC Dream. Seus patches também oferecem algum suporte à tela sensível ao toque desse dispositivo, baseados no código de Arve Hjønnevåg. n
A lista de discussão Linux-kernel é o núcleo das atividades de desenvolvimento do kernel. Zack Brown consegue se perder nesse oceano de mensagens e extrair significado! Sua newsletter Kernel Traffic esteve em atividade de 1999 a 2005.
http://www.linuxmagazine.com.br
Coluna do Augusto
COLUNA
Comunicação interna Quando diferentes desenvolvedores de um projeto têm pontos de vista diferentes, é importante encontrar um meio termo.
E
mbora haja grande variedade de iniciativas de código aberto voltadas com grande comprometimento ao uso no desktop de usuários “comuns” (não técnicos ou não entusiastas), acompanhando o desenvolvimento do kernel Linux é fácil perceber que este projeto não é voltado aos usuários do desktop de forma específica – embora também os considere, até porque boa parte dos seus desenvolvedores o usem desta forma, pessoalmente. E é fácil entender a razão: grande parte do trabalho no kernel é custeado por grandes empresas de tecnologia, com interesse específico em ver o Linux rodar cada vez melhor em seus hardwares de ponta, com zilhões de gigabytes de memória, uma infinidade de processadores, e sistemas de E/S que ainda demorarão vários anos até chegar às máquinas que eu e você temos em nossas mesas. Claro que algumas delas também investem no desktop, em especial em sub-nichos como o dos equipamentos embarcados ou os de maior mobilidade, como os UMPCs e netbooks – e o desktop comum acaba se beneficiando disso, com maior suporte a hardware, melhorias em geral, ou como nos exemplos recentes de grandes reduções no tempo de inicialização. Por outro lado, projetos e empresas dedicadas a soluções de desktop com código aberto muitas vezes se concentram nas camadas superiores, cuidando da apresentação e das aplicações – e na minha opinião fazem bem, porque a demanda neste espaço é ainda maior. Mas em alguns momentos este foco que o desenvolvimento do kernel tem naturalmente voltado às arquiteturas menos comuns no desktop fica mais evidente. Foi isso que me levou a trazer este assunto à
14
LM59.indb 14
Linux Magazine deste mês, a partir da leitura das recentes discussões entre a comunidade do kernel sobre o novo escalonador de processos produzido, na forma de um patch não oficial denominado BFS, por Con Kolivas – que muitos usuários conhecem pelas suas séries de patches mantidas, até dois anos atrás, para tornar o kernel mais amistoso ao desktop, abrindo mão da atenção às demais categorias. Me interessam pouco os méritos comparados dos escalonadores – pessoalmente, não sinto problemas de desempenho que justifiquem o esforço de eu aplicar regularmente um patch no kernel para ganhar alguma melhoria no computador de mesa. O que me chamou a atenção na discussão, na verdade, foram os pontos de vista aplicados: um desenvolvedor oficial do kernel comparava o desempenho dos escalonadores com base nos tempos das tarefas “puras” que ele está acostumado a usar como referência (desempenho de pipes, de troca de mensagens, de uso de PostgreSQL e de compilação do próprio kernel), e Kolivas respondia lembrando que o que ele quer é o desempenho percebido em tarefas como codificação de vídeo, reprodução de áudio, execução de aplicativos em segundo plano e responsividade em jogos on-line. Ficou a impressão de que há um problema fundamental de comunicação, em que nenhum dos lados está se permitindo perceber o contexto do outro – e, se há tanta oportunidade de melhoria no desktop sendo deixada de lado, talvez seja o caso de começar a torcer para surgir alguém apto e interessado em encontrar o meio do caminho entre as duas posições. ■ Augusto César Campos é administrador de TI e desde 1996 mantém o site BR-linux.org, que cobre a cena do Software Livre no Brasil e no mundo.
http://www.linuxmagazine.com.br
24/09/09 17:14
Coluna do Pablo
COLUNA
Linux 2.6.31 A versão mais recente do kernel livre traz várias pequenas novidades em diversas áreas.
A
pós quase três meses num ciclo de desenvolvimento um pouco mais longo que o de costume (e nove release candidates), Linus Torvalds anunciou a versão 2.6.31 do kernel Linux no dia 9 de setembro. Com 29.111 arquivos e mais de 12 milhões de linhas de código, trata-se da versão mais volumosa do Linux. O kernel 2.6.31 não é um campeão de novos recursos. As novidades são menos numerosas que nas “revolucionárias” 2.6.28 e 2.6.29, mas abrangem diversas áreas.
Mais importantes
Áudio
Sem dúvida, o que mais chama atenção no Linux 2.6.31 é a inclusão do suporte a USB 3.0. Apesar de o padrão ainda nem ter chegado aos dispositivos, a Intel lançou mão de alguns protótipos para embutir no kernel livre o suporte experimental ao novo USB. Outros pontos que merecem destaque são o suporte ao kernel mode-setting (KMS) para chips gráficos AMD Radeon R500 e anteriores (chips mais recentes serão incluídos nas próximas versões do kernel), assim como os dispositivos de caracteres no espaço do usuário (CUSE), que prometem agitar essa área da mesma forma como o FUSE fez para os sistemas de arquivos. O primeiro exemplo de uso do CUSE já está pronto: consiste num proxy do subsistema de áudio OSS para substituir a emulação feita pelo ALSA. Com isso, o aplicativo pode utilizar os dispositivos OSS de forma normal, e o áudio será encaminhado ao ALSA. A vantagem é a possibilidade de usar múltiplos streams de áudio.
O driver da família RT2x00 de chips Ralink de rede sem fio ganhou suporte a novos dispositivos, além do protocolo 802.11n. A Internet via rede elétrica (PLC), que vem recebendo atenção da Anatel e em breve estará disponível comercialmente no Brasil, já conta com suporte no Linux. O novo driver bnx2 para chips gigabit da Broadcom conta agora com um avanço importante: ele encarrega o hardware de tratar o iSCSI, reduzindo o trabalho da CPU, principalmente sob carga intensa.
Sistemas de arquivos
Restante
O astro maior entre os sistemas de arquivos, o Btrfs, está com nova versão atualizada. Mas atenção: o formato dos arquivos em disco mudou. Ao gravar arquivos num sistema Btrfs com o novo kernel, estes tornam-se ilegíveis para kernels anteriores. Seu irmão mais modesto Ext4 também ganhou reforços e agora deve ser um pouco mais rápi20
do – um dos reforços inclusive foi aplicado também ao Ext3, que também deve se tornar ligeiramente mais veloz. Os discos IDE, ou ATA paralelo (PATA), encaminham-se para a extinção, assim como o código original que lida com eles no kernel. O novo mantenedor do subsistema IDE já anunciou que tratará o código como “puramente legado”, pois o subsistema PATA, construído sobre a Libata – originalmente escrita para lidar com discos SATA –, já oferece mais recursos e manutenção mais fácil que o legado. No campo do áudio, a maior novidade é o desejadíssimo suporte aos chips de áudio Sound Blaster X-Fi da Creative. Após um longo tempo com a opção entre drivers livres problemáticos ou drivers proprietários, os usuários do pinguim finalmente têm à disposição um driver de alta qualidade definitivamente incluído no kernel.
Redes
A camada firewire, projetada para substituir a ultrapassada ieee1394, finalmente a suplantou. As estruturas Dnotify e Inotify tornaram-se oficialmente obsoletas com a chegada do Fsnotify, que pode permitir a busca de vírus e de malware de forma mais eficaz e eficiente no futuro próximo. n
http://www.linuxmagazine.com.br
NOTÍCIAS
➧ Nero 4 para Linux A Nero, tradicional fabricante de um dos mais populares softwares de gravação de CDs e DVDs para plataforma Windows, lançou em setembro o Nero Linux 4, a mais recente versão de seu aplicativo para Linux. A versão 4 inclui um novo aplicativo, o Nero Linux Express 4, e a empresa ainda expandiu seu portifólio Linux com o Nero Linux 4 Essentials, oferecendo soluções também para parceiros OEM. O Nero Linux 4 oferece suporte avançado a áudio e dados, bem como opções, ferramentas e configurações para cópia e gravação de CDs e DVDs. O Nero Linux 4 é, atualmente, o único aplicativo comercial para Linux a suportar a gravação de mídias Blu-ray. Os usuários têm acesso a opções como o sistema de gerenciamento de erros do Blu-ray para gravação em alta velocidade e suporte ao sistema de arquivos ISO 9660 na criação de compilações. Com o isolinux, o Nero Linux 4 ainda é capaz
de criar live CDs. O Nero Linux 4 ainda oferece suporte aos formatos de áudio Musepack e AIFF, além dos formatos mp3PRO, FLAC e WAV. O Nero Linux 4 está disponível no site da Nero em português e pode ser adquirido na loja online da empresa pelo preço sugerido de US$ 19,99. O Nero Linux 4 Essentials também está disponível para OEMs. n
➧ Microsoft lança Silverlight para Linux
Durante o Intel Developer Forum de 2009, realizado no final de setembro, a Intel anunciou, no primeiro dia, o lançamento da versão 2.1 do sistema Moblin. Baseado em um kernel Linux e em diversos aplicativos GNU, o Moblin foi criado pela própria Intel e atualmente se encontra sob o controle da Linux Foundation. Um dos anúncios mais marcantes do primeiro dia do evento, no entanto, não coube aos recursos que diferenciam a versão 2.1 de sua antecessora, mas à Microsoft, que lançou uma versão de sua plataforma de execução Silverlight para o Moblin. Embora já conte com o Moonlight, ambiente de execução de código aberto em Mono e compatível com o Silverlight, os sistemas GNU/Linux não dispunham, até então, de qualquer software da Microsoft para usuários finais. Os recursos da versão mais recente do Silverlight não têm suporte completo por parte do Moonlight,
desenvolvido primariamente pela Novell sem auxílio efetivo da Microsoft. Após a liberação (sob a GPLv2) de um driver para acelerar o funcionamento de máquinas virtuais Linux sobre seu hypervisor proprietário Hyper-V, a Microsoft mostra agora mais um passo em direção a um melhor diálogo com o GNU/Linux. Apesar de a versão anunciada do Silverlight ser específica para o sistema Moblin, seu porte para outros sistemas GNU/Linux decerto passa pelas mentes dos executivos de Redmond – ainda que apenas como algo a ser evitado. n
Para notícias sempre atualizadas e com a opinião de quem vive o mercado do Linux e do Software Livre, acesse nosso site: www.linuxmagazine.com.br
22
http://www.linuxmagazine.com.br
➧ Palm se despede
CORPORATE
da Microsoft
O diretor executivo da Palm, John Rubinstein, confirmou durante uma entrevista no final de setembro a decisão da empresa em se concentrar exclusivamente no desenvolvimento de aparelhos equipados com o webOS, sistema baseado em Linux criado pela Palm. É o fim de uma parceria de três anos com a Microsoft e do uso do Windows Mobile em celulares da Palm. O comunicado foi feito um dia após a Palm anunciar ter superado a receita prevista para o primeiro trimestre fiscal de 2010, em um claro sinal de recuperação da empresa. Os analistas atribuem o crescimento da receita e dos lucros ao grande sucesso do smartphone Palm Pre, equipado com o sistema webOS, baseado em um kernel Linux. Com ele, as vendas neste
semestre fiscal aumentaram 134% (num total de 823 mil unidades) em relação ao trimestre anterior – embora permaneçam 30% inferiores ao mesmo período do ano passado. “Estamos progredindo significativamente na transformação da Palm, e nossa cultura de inovação é mais forte do que nunca. Estamos lançando outros ótimos produtos Palm webOS com mais operadoras e voltando nossa atenção ao crescimento”, afirmou ainda o diretor e CEO da Palm. O Palm Pre é o primeiro smartphone da pioneira Palm equipado com o webOS, novo sistema operacional de código aberto da empresa – baseado em Linux. Esse sistema é a aposta da Palm para retomar a posição de liderança ocupada pela empresa no passado. n
➧ Cloud Xen: nuvem para empresas
Essa os meteorologistas não conseguiriam prever. O projeto Xen.org, responsável pelo código do hypervisor de código aberto Xen, anunciou em setembro a iniciativa Xen Cloud Platform. Trata-se de um esforço para produzir “uma plataforma de infraestrutura completa para virtualização”, nas palavras de Simon Crosby, CTO da Citrix para a divisão de virtualização e fundador da XenSource. “Mas por que o Xen.org está fazendo isso? É um ato de desespero ou uma desistência? O KVM está prestes a entrar no mercado do Xen?”, pergunta o executivo em seu post, respondendo logo abaixo que a iniciativa “nada tem a ver com o KVM” e que seu objetivo é “oferecer um poderoso conjunto de recursos de virtualização de infraestrutura de primeira linha para empresas”. Para esclarecer as funções de uma “plataforma de nuvem”, Simon ainda oferece uma lista de itens, que incluem o agrupamento e o isolamento de recursos de hardware e rede, o rápido provisionamento de sistemas, a criação de um conjunto de APIs para expor os recursos, além da oferta de ampla compatibilidade com todas as plataformas de virtualização – “tudo como código aberto, é claro”, completa. n
➧ MySQL versus Oracle
Após o anúncio por parte da Comissão Europeia (órgão da União Europeia encarregado de avaliar acordos comerciais, entre outros) de que a aquisição da Sun Microsystems pela Oracle seria investigada e, portanto, consideravelmente adiada no continente europeu, surgiram diversos rumores afirmando que a solução mais prática para a empresa de Larry Ellison seria a Sun desfazer-se do MySQL. O motivo dos rumores era o fator apontado pelo órgão europeu como principal ponto de preocupação: a concorrência entre o banco de dados de código aberto e o proprietário Oracle, que passariam a pertencer à mesma companhia. Porém, no fim de setembro, Ellison anunciou que a Oracle não pretende abrir mão do MySQL. Em um tom facilmente interpretado como desafiador, o polêmico CEO da Oracle lembrou que a aquisição já foi aprovada pelas autoridades dos Estados Unidos e afirmou que “depois que fizerem seu trabalho, eles (a Comissão Europeia) chegarão à mesma conclusão”. n
Para notícias sempre atualizadas e com a opinião de quem vive o mercado do Linux e do Software Livre, acesse nosso site: www.linuxmagazine.com.br
24
http://www.linuxmagazine.com.br
Congresso Internacional Software Livre e Governo Eletrônico
CORPORATE
Consegi 2009 No Consegi 2009, governo, empresas e comunidade envolvidos com o Software Livre trocaram experiências. E fecharam acordos. por Bruno Buys
E
m meio a uma inesperada e incomum frente fria, a cidade de Brasília hospedou nos dias 26 a 28 de agosto o Congresso Internacional Software Livre e Governo Eletrônico – Consegi 2009. Organizado pelo Serviço Federal de Processamento de Dados, Serpro, e sediado na Escola de Administração Fazendária (ESAF), o Consegi 2009 teve por objetivo trocar experiências e popularizar iniciativas e soluções em Software Livre na esfera do governo federal. Na ESAF misturava-se uma multidão de pessoas de todos os tipos e
procedências, todas tentando assistir às palestras espalhadas pelas instalações. Estudantes, jovens com piercings e camisetas do Nirvana, Ubuntu e Google, grupos de usuários GNU/ Linux, participantes de projetos de cultura livre, DJ’s e VJ’s misturavamse a executivos, estrangeiros e representantes de governos, que vinham divulgar suas organizações e mostrar os trabalhos desenvolvidos de forma livre e participativa. A programação do Consegi 2009 foi de palestras e oficinas técnicas, além de mesas-redondas sobre atualidades do mundo digital, interaCrédito: Bruno Buys
Figura 1 Réplica do Demoiselle conforme projetado por Santos Dumont, em exposição na área externa do Consegi 2009.
26
ções entre a tecnologia e a política e também ativismo e cultura livre. Organizado em dez eixos temáticos, como “Políticas de desenvolvimento tecnológico e industrial”, “Desenvolvimento Social, Educação e Inclusão Digital”, “Padrões e Interoperabilidade”, entre outras, o Consegi 2009 foi bem-sucedido em funcionar como um ponto de troca de experiências entre o governo, a sociedade organizada e países parceiros. Entre os estrangeiros, representantes dos governos da África do Sul, Argentina, Chile, Coreia do Sul, Cuba, Equador, França, Índia, Indonésia, Malásia, Paraguai, São Tomé e Príncipe, Venezuela e Zimbábue. O Consegi 2009 faz parte da programação oficial do Ano da França no Brasil, contando com representantes franceses do setor de TIC. O Serviço Federal de Processamento de Dados, Serpro, além de anfitrião do evento, foi também um dos mais ativos participantes, presente em mesas-redondas e oficinas. O framework Demoiselle, mais importante solução apresentada pelo órgão, foi discutido em oficinas para o público técnico e em mesas-redondas. O Demoiselle é uma plataforma desenvolvida pelo Serpro para construção de aplicações em Java, cujo objetivo é tornar-se uma referência no desenvolvimento de sistemas do Governo Federal. Com a padroniza-
http://www.linuxmagazine.com.br
Consegi | CORPORATE
ção, o órgão espera ganhar em reutilização de código, simplificação e corte de gastos. Em sua fala durante a inauguração do evento, o presidente Lula reafirmou a opção pelo Software Livre como plataforma preferencial de software a ser escolhida pelo Governo Federal em seus sistemas. Para Lula, a questão não se limita à economia trazida pelo Software Livre: “Em meio a um mundo dominado pelo individualismo competitivo, pelas barreiras cada vez mais elevadas de acesso à propriedade intelectual e pela busca de lucros a qualquer custo, a comunidade do Software Livre conseguiu mostrar a todos nós que ainda há espaço para a cooperação, o trabalho colaborativo e a democratização do conhecimento”. O presidente ainda completou: “Neste sentido, o que estamos debatendo neste Congresso Internacional de Software Livre e Governo Eletrônico vai muito além das questões tecnológicas. Estamos, sim, tratando do acesso e compartilhamento do conhecimento, expresso na forma de programas livres, de conteúdos que podem ser apropriados por todos os cidadãos e do desenvolvimento colaborativo”. A adesão ao Protocolo Público de Intenção de Adoção do Formato Aberto de Documentos (Protoco-
lo Brasília), iniciada no Consegi 2008, também se fortaleceu este ano. O Protocolo de Brasília é uma declaração de interesse em adotar o Open Document Format (ODF) como padrão para geração e troca de documentos entre órgãos de governo. Após a adesão de importantes instituições como Caixa Econômica Federal, Banco do Brasil, Serpro, Dataprev e Correios, entre diversas outras durante a última edição do evento, este ano o Protocolo obteve a adesão do Exército e da Marinha. A Tenda Cultural do Consegi 2009 foi nomeada em homenagem ao professor da USP e matemático Imre Simon, falecido em 13 de agosto último. Durante os três dias, a Tenda abrigou apresentações musicais, palestras sobre Blender, Inkscape e GIMP, além de case-modding feito por grupos de jovens das escolas de Brasília e entorno. Os que assistiram ao Consegi 2009 saíram com a impressão de que o Governo Federal está realmente empenhado na adoção de Software Livre e convicto de sua escolha. Mesmo com todas as dificuldades (técnicas e políticas) envolvidas em uma migração dessa magnitude, o Governo Federal, liderado pelo Serpro, conseguiu resultados notáveis em construção de comunidades e no
desenvolvimento de soluções como o e-CAR, o Expresso e o Demoiselle.
Demoiselle: avião ou software? Em 1907, Alberto Santos Dumont construía seu primeiro avião da série Demoiselle, após o famoso 14Bis. Estes aviões foram os melhores e mais robustos que o pai da aviação conseguiu produzir: eram leves, pequenos, baratos e relativamente simples de fabricar. Santos Dumont tinha esperanças de que pudessem estimular a popularização da aviação, que era até então uma curiosidade de inventores e nobres ricos. Durante todo o tempo em que os Demoiselles existiram e foram desenvolvidos, Santos Dumont sempre se recusou a patentear sua invenção, porque considerava o projeto seu “presente para a humanidade”. Ele entendia que a cobrança de royalties inviabilizaria a adoção do invento. Ao contrário, o pai da máquina fornecia cópias dos planos e desenhos do avião a qualquer um que se interessasse. Uma réplica funcional do avião Demoiselle conforme concebido por Santos Dumont estava presente nos jardins da ESAF, com colaboração do Instituto Arruda Botelho. A programação incluía um voo da CAVA
VIA GR S CAVALO DE TR A ÓIA PHIS HING VÍR CAVA LO D VÍ US E TR VIAGRA ÓIA RU
LO D E
TRÓ
SPAMs?
IA
FRAUDE
Saiba como importantes empresas estão solucionando este problema
(11) 3522-3011 www.unodata.com.br
Linux Magazine #59 | Outubro de 2009
Baseado em software livre Filtro de Entrada e Saída Eficiente sem descartar mensagens importantes Flexível e customizável Clientes 100% satisfeitos
Acesse www.unodata.com.br e veja nossos casos de sucesso.
PHIS
HING
ES
FRAUD
30 D GRÁ IAS TIS! 27
CORPORATE | Consegi
aeronave, porém a frente fria, incomum nessa época do ano em Brasília, não forneceu as condições de vento necessárias. Antecipando em várias décadas o espírito do desenvolvimento aberto, o pioneirismo de Santos Dumont foi homenageado na escolha do nome do framework integrador Demoiselle pelo Serpro. A ideia é que ele seja desenvolvido, depurado, usado e estendido colaborativamente pelos diversos órgãos e pela comunidade de usuários, cumprindo não somente a missão institucional do Serpro como também a política de adoção de Software Livre do governo federal. O framework Demoiselle, atualmente hospedado no SourceForge [1], foi iniciado na Companhia de Informática do Paraná (Celepar) com o projeto Pinhão, continuado pelos analistas do Serpro, e tem recebido contribuições da comunidade.
Representação internacional O sul-coreano Seong-jin Kim, da Korea SW Industry Promotion Agency (KIPA), explicou aos presentes no Consegi 2009 as ações de fomento ao desenvolvimento de Software Livre e de Código Aberto da agência de seu país. Existe grande interesse no modelo aberto de desenvolvimento na Coreia do Sul e o governo promove ações no sentido de acelerar sua adoção. O palestrante trabalhou pessoalmente em um livro digital sobre Linux, em um projeto da Agência para distribuição em 32 escolas, alcançando 64 turmas de alunos. O material é exibido em tablet PCs, dispositivos semelhantes a netbooks com uma tela giratória sensível ao toque. Na tela, os alunos podem ler e anotar ao mesmo tempo. O projeto inclui também a construção de infraestrutura de acesso à rede sem fio das escolas e aos servidores de conteúdo. 28
A presença de representantes da KIPA no Brasil foi motivada também pela busca de competências na área. Como resultado, o Diretor-Presidente do Serpro, Marcos Mazoni assinou um protocolo de intenções para cooperação em Software Livre com os representantes da KIPA. Pode ser um começo de relacionamento muito frutífero com aquele lado do mundo, já famoso pela produção de hardware.
Sustentabilidade de software Em apresentação sobre sustentabilidade de software, o presidente da Open Source Initiative, Michael Tiemann, mostrou dados de diferentes pesquisas e organizações para convencer o público de uma ideia aparentemente muito simples: software proprietário é socialmente mais custoso, tecnicamente mais falho e economicamente menos vantajoso. Dono de uma narrativa ágil e empolgante, Tiemann usou exemplos de sustentabilidade em outras áreas de atividade, como a agricultura: segundo ele, existe um grave problema de sustentabilidade na maneira como muitos países cultivam alimentos. Com o exemplo de seu país, os Estados Unidos, ele explicou que o uso intensivo de pesticidas, fertilizantes e água está erodindo o patrimônio natural do solo. A Índia, tendo importado o mesmo modelo de agricultura quimicamente intensiva, sofre hoje em dia as consequências do desastre, servindo de exemplo aos Estados Unidos do que o futuro lhes reserva. Na economia, Tiemann declarou que a atual crise financeira vivida por aquele país é resultado, também, de uma economia insustentável. O palestrante mostrou dados do Grupo Gartner para 2008, segundo o qual gastam-se anualmente cerca de 3 trilhões de dólares em TIC no
mundo inteiro. Deste total, 1 trilhão são desperdiçados em projetos que são abandonados, que acabam dando errado, que chegam tarde demais ou que são simplesmente falhos. Mais de 90% dos fornecedores de TI não recebem uma boa avaliação em termos de “valor pelo dinheiro” de cerca de 80% de seus clientes mais importantes. Estes dados foram medidos pelo Gartner durante quatro anos seguidos. Os dois últimos dados levantados mostram que o software proprietário destrói 85% de todo o potencial de inovação global e que tem, em média, uma densidade de defeitos (bugs) entre 50 e 150 vezes maior do que o Software Livre (dados medidos ao longo de cinco anos). A conclusão já antecipada: software proprietário não é sustentável. Tiemann finalizou mostrando os recentes avanços em termos de adoção internacional de Software Livre e apontando que o Software Livre traz muito mais benefícios para a sociedade: melhor para a educação, indispensável eticamente para o governo e para a iniciativa privada e com o melhor custo-benefício. n
Mais informações [1] Demoiselle no SourceForge: http://demoiselle. sourceforge.net/
Sobre o autor Bruno Buys é biólogo e especializado em jornalismo científico pela Unicamp. Usa Debian GNU/Linux e é fissurado por Software Livre. twitter.com/brunobuys
Gostou do artigo? Queremos ouvir sua opinião. Fale conosco em cartas@linuxmagazine.com.br Este artigo no nosso site: http://lnm.com.br/article/3051
http://www.linuxmagazine.com.br
Fórum Permanente de Tecnologia da Informação e Comunicação Edição 2009 - 27 a 30 de outubro de 2009 Tecnologia para um Brasil sustentável Apresentação
Apoio Institucional
No período de 27 a 30 de outubro próximo, no Centro de Eventos e Convenções Brasil 21, Brasília sediará pela 7ª vez o FÓRUM TIC com participação gratuita. Consolida-se no mercado como
importante evento de relacionamento, integrando governo
e iniciativa privada. Também se configura como ação de utilidade pública promovendo, além capacitação
de
gestores
de de
TI
ações da
de
relacionamento, a
administração
pública
e
privada.
Eventos Associados 1º Encontro Nacional de Gestores Municipais, com apoio da Secretaria de Assuntos Federativos da Presidência da República; 1º Encontro Nacional de Comunidades de Software Público com apoio da Secretaria de Logística e Tecnologia da Informação do Ministério do Planejamento; XXIV ENESI – Encontro Nacional das Empresas de Software e Serviços de Informática; Encontro dos Coordenadores de APL-TIC estaduais do SEBRAE;
ASSESPRO Associação das Empresas Brasileiras d e Te c n o l o g i a d a I n f o r m a ç ã o
Encontro de CIO´s (Chief Information Officer); Premiação do III Prêmio Ação Coletiva – MPOG/SLTI; Premiação do Prêmio SINFOR de Tecnologia da Informação FIBRA/SINFOR; Lançamento do Prêmio Brasil TIC SUCESU/FÓRUM TIC;
4CMBr
de Cidadania
Diferencial O FÓRUM TIC abrigará a primeira realização do FÓRUM EMPRESARIAL sobre “Gestão,Crédito, Capital de Risco, Empreendedorismo: COMPETITIVIDADE” que conta com a parceria da Secretaria de Desenvolvimento Econômico e Turismo do Distrito Federal, com objetivo de promover a maturidade empresarial dos novos empreendedores. Este evento promoverá gratuitamente oficinas de capacitação em “Business plan” e em “Como desenvolver a inteligência competitiva pessoal no ambiente de trabalho” para 1.100 empreendedores.
SUCESU-DF
www.forumtic.org.br
Inscrições Inscrições gratuitas www.forumtic.org.br
Coluna do Taurion
CORPORATE
SL e os profissionais do futuro Usando Software Livre nos cursos universitários, os estudantes de computação de hoje poderão aprender muito mais para o futuro.
U
m tema que me entusiasma muito é o uso de Software Livre nos cursos de formação de profissionais de TI. Já havia abordado o assunto em meu blog e volto a ele hoje com algumas outras ideias que gostaria de compartilhar com vocês. O uso de Código Aberto na formação dos futuros profissionais de computação nos traz diversos benefícios: possibilita que os estudantes adquiram experiência prática com desenvolvimento de software, necessária em eventuais futuras contratações, pois desenvolvem código real que será avaliado e até mesmo colocado em operação; possibilita que o aluno compreenda, na prática, a importância dos princípios da engenharia de software; permite o trabalho em colaboração com profissionais já experientes e com estudantes de outras instituições; os alunos aprendem que programação não é uma tarefa isolada, mas colaborativa; t ambém aprendem a trabalhar em projetos de razoável (e até mesmo alta) complexidade, abrindo a visão prática para as dificuldades do engajamento em projetos destes portes; possibilita o trabalho em projetos de vida útil longa, não ficando mais restritos a projetos individuais que duram apenas os semestres de aulas; mantém os currículos atualizados, pois estarão envolvidos em projetos atuais, usando técnicas e tecnologias modernas. Mas, em quais projetos os estudantes deveriam se engajar? O diretório Sourceforge registra mais de 170.000 projetos e mais de 1,7 milhões de membros. Claro que existem projetos de código aberto muito conhecidos, como o Linux, Firefox e o BrOffice, mas que tal pensar32
mos em olhar o software também como uma tecnologia que pode e deve beneficiar diretamente a humanidade e a sociedade? Pesquisando o assunto, descobri um projeto muito interessante que pode servir de base para o uso do Código Aberto no ensino da computação no Brasil. É o projeto HFOSS (Humanitarian Free and Open Source Software), que pode ser visto em www.hfoss. org. Este projeto, por sua vez, foi baseado nas ideias de um projeto de código aberto para gerenciamento de desastres, desenvolvido no Sri Lanka, chamado Sahana (http://www.sahana.lk/). O Sahana foi iniciado por desenvolvedores voluntários para ajudar na gestão de atividades de apoio em desastres, como o tsunami ocorrido naquele país em dezembro de 2004. Engajar estudantes de computação na criação, manutenção e evolução de projetos de software humanitários, além dos benefícios que vimos acima, contribui para que eles percebam que desenvolver software é muito mais que codificar linhas de código. Eles poderão ver os resultados de seu trabalho refletidos diretamente na sociedade. Aprendem também que os desenvolvedores devem ter uma visão mais abrangente dos problemas e desafios da sociedade e das empresas, para poderem projetar softwares mais adequados ao mundo real. Este, aliás, é um dos desafios que os cursos de computação enfrentam: na maioria das vezes estão descolados das realidades do mundo real, pois os estudantes desenvolvem projetos hipotéticos de classe, sem conexão com os problemas das empresas e da sociedade. n Cezar Taurion (ctaurion@br.ibm.com) é diretor de novas tecnologias aplicadas da IBM Brasil e editor do primeiro blog da América Latina do Portal de Tecnologia da IBM developerWorks, em https://www.ibm.com/ developerworks/mydeveloperworks/blogs/ctaurion/.
http://www.linuxmagazine.com.br
Entenda, detecte e evite ataques de rede
CAPA
Ataque contra os atacantes Conheça as ferramentas à disposição dos invasores para entender como eles agem e tomar as medidas necessárias para evitar problemas. por Joe Casad e Pablo Hess
A
prática da invasão de redes não é mais uma atividade feita por lazer. Spammers, piratas de crédito, viciados em atividades caras (drogas, jogo, apostas) e vários outros tipos de malfeitores estão em busca de “dinheiro fácil”, mesmo que precisem burlar a lei e a segurança de um sistema. Neste cenário, como podemos mantê-los do lado de fora de nossas redes e sistemas? Baixando todas as atualizações de sistema e empregando as melhores ferramentas disponíveis – além, claro, de conhecer seu inimigo. As atualizações de sistema ficam por sua conta, já que você provavelmente entende que o código de ontem é a janela aberta de amanhã. Este mês, vamos examinar as técnicas de intrusão e algumas ferramentas para desvendar e evitar ataques. Para começar, nosso colunista e blogueiro de segurança Kurt Seifried explicará as estratégias de intrusão mais recentes. Ele abordará as técnicas de injeção SQL, cross-site
request forgery e poluição de parâmetros HTTP. Em seguida, ofereceremos uma introdução prática a algumas ferramentas de visualização de eventos de intrusão, essenciais para compreender como agem os meliantes digitais. Mostraremos como reproduzir situações reais de intrusão usando arquivos PCAP (Packet Capture) e também como usar a saída de texto do IDS Snort em comparação com a saída gráfica de ferramentas como NetGrok, AfterGlow, Rumint, TNV e EtherApe. Finalizando a seção de capa do mês, há um estudo do Linux Intrusion Detection System, LIDS, uma
alternativa aos famosos SELinux e AppArmor que oferece controle obrigatório de acesso e vários outros recursos de segurança importantes. O Linux jamais foi tão seguro, mas o fato é que as ameaças à sua rede nunca foram tão profundas. Se você procura novas ferramentas e uma melhor compreensão do jogo da detecção de intrusão, os artigos a seguir são justamente para você. n
Índice das matérias de capa Um bom ataque A visão do IDS Tapa-buraco
Linux Magazine #59 | Outubro de 2009
33
Como organizar e escalonar processos
ANÁLISE
Fiscalização da fila Veja como usar o Dtrace para observar as classes de escalonamento do OpenSolaris. por Marcelo Arbore e José Damico
O
s primeiros computadores nasceram com o objetivo de fazer cálculos repetitivos, que demorariam tempo demasiado se feitos por seres humanos. Nesta época, o algoritmo de escalonamento era simples: execute o próximo trabalho ao fim do atual. Hoje, os sistemas computacionais compartilham tempo, usuários e serviços. É comum encontrar situações em que temos dois ou mais processos competindo pelo mesmo processador. Neste caso, cabe ao sistema operacional decidir a ordem em que os processos serão executados. O componente do sistema operacional responsável por esta tarefa é chamado de escalonador, e o algoritmo utilizado é chamado de algoritmo de escalonamento. Algumas das funções fundamentais dos sistemas operacionais modernos são o gerenciamento e o escalonamento dos processos dentro
Linux Magazine #59 | Outubro de 2009
dos processadores disponíveis. O objetivo principal é manter a justiça. Entretanto, como na política, existe divergência de opiniões, pois nos deparamos com necessidades, objetivos e métricas diferentes. Por este motivo, existe uma extensa variedade de algoritmos disponíveis. Este artigo analisa algumas das implementações clássicas existentes no sistema operacional de código aberto OpenSolaris por meio da ferramenta de instrumentação dinâmica Dtrace.
Observabilidade
Com o aumento do tamanho e da complexidade dos sistemas operacionais modernos, torna-se cada vez mais complicada a análise, a depuração ou mesmo a compreensão didática do que está ocorrendo no que se refere ao kernel e aos usuários. A maioria dos softwares existentes para depuração se mostram
ineficientes, principalmente pelo custo de desempenho, e também incompletos, pelas restrições de segurança que o kernel impõe aos seus processos e, consequentemente, aos depuradores. A leitura do códigofonte é, além de complexa, pouco eficiente do ponto de vista prático. Existem diversas ferramentas de observabilidade em sistemas Unix, mas elas sofrem, além dos problemas já listados, de baixa flexibilidade (servem para propósitos específicos e apresentam saídas padronizadas) e baixa interoperabilidade (não conversam entre si). Em 2002 foi lançado o primeiro protótipo da ferramenta DTrace. O Dtrace não sofre as restrições de segurança dos métodos convencionais e tem bom desempenho porque está diretamente inserido no kernel do sistema operacional. Utilizando-se de blocos dinamica53
ANÁLISE | Escalonamento
Escalonamento no OpenSolaris
Figura 1 Fluxo de estados de threads no sistema OpenSolaris.
mente alocáveis, ele não desperdiça preciosos ciclos de processamento quando desligado. Isto permite um extenso número de pontos de instrumentação (atualmente na ordem de dezenas de milhares) que podem ser ativados individualmente. Desta maneira, observa-se padrões globais ou específicos do sistema de uma maneira uniforme.
Por meio de scripts na linguagem de alto nível D (semelhante a C), é possível fazer perguntas arbitrárias ao sistema sobre praticamente qualquer padrão de comportamento deste. O DTrace foi implementado inicialmente no Solaris, e hoje já esta portado para OpenSolaris, MacOS, FreeBSD e existem projetos para outros sistemas.
Listagem 1: Script para verificar alterações de prioridade #!/usr/sbin/dtrace -s sched:::change-pri { @[stringof(args[0]->pr_clname)] = lquantize(args[2] - args[0]->pr_pri, 50, 50, 5); }
Listagem 2: Saída sem script fominha value ––––- Distribution ––––- count -15 | 0 -10 |@@@@@@@@@@ 3 -5 | 0 0 | 0 5 | 0 10 |@@@@@@@@@@@@@ 0 15 | 0
54
No OpenSolaris, cada thread possui uma prioridade global, e isto determina quão brevemente ela, dentre todas as threads executáveis do sistema, será executada. Tipicamente, uma thread encontra-se nos estados RUN, ONPROC ou SLEEP (figura 1). RUN representa prontidão para execução (esperando a sua prioridade ser a maior na fila de execução). ONPROC simboliza as threads selecionadas para execução no presente momento e SLEEP é o estado no qual elas aguardam um evento de sincronia, como o término de uma operação de entrada/saída. O escalonador é responsável por gerenciar todos os estados de todas as threads do sistema, assim como a troca sincronizada entre eles. As principais funções do escalonador do OpenSolaris são: gerência de filas: inserir e remover threads das filas de execução e de SLEEP; seleção de thread: selecionar, dentre todas as threads no estado RUN, qual será a próxima a ser executada; seleção do processador: escolher em qual processador uma thread será executada; troca de contexto: trocar o ambiente de execução de um processador para que este possa executar uma thread diferente. Diferentes situações requerem diferentes algoritmos de escalonamento. Isto acontece porque as áreas de aplicação possuem objetivos distintos. Não existe um algoritmo único otimizado para todos os sistemas. Os algoritmos de escalonamento implementados no OpenSolaris são: Timeshare (TS, compartilhamento de tempo) Interactive (IA, interativo) Fair Share (FSS, parcela justa)
http://www.linuxmagazine.com.br
Escalonamento | ANÁLISE
Fixed Priority (FX, prioridade fixa) Real Time (RT, tempo real) System (SYS, sistema)
Analisaremos agora o comportamento de alguns destes algoritmos. A referência completa pode ser encontrada na documentação oficial.
Timeshare (TS)
A ideia central do timeshare é tentar compartilhar o tempo da CPU de maneira uniforme entre as threads. É claro que cada processo possui a sua demanda própria por processamento. Por este motivo, os ajustes de prioridade são feitos com base no tempo gasto pela thread à espera do processador ou em execução. O TS é estruturado com múltiplas filas de execução (uma por prioridade). Dentro da fila, os processos comportam-se de maneira similar ao algoritmo Round-Robin (rodízio simples). Este algoritmo de escalonamento possui um tempo inicial padrão – chamado de quantum – que ele atribui a todos os processos. Por um lado, se um processo tem a tendência de usar seu quantum inteiro, o escalonador se encarrega de reduzir sua prioridade. Por outro lado, se o processo tende a não usar seu quantum por completo, cessando o processamento ou parando em algum mecanismo de sincronia, o algoritmo timeshare aumenta a sua prioridade com o intuito de valorizar o pedido deste por processamento. Suponhamos um processo faminto por processamento, digamos: $ while true; do let a=0; done
É fácil perceber que este script na linha de comando entra em loop infinito enquanto faz uma atribuição inútil. Vejamos agora um script em linguagem D (listagem 1), retirado da
Linux Magazine #59 | Outubro de 2009
Listagem 3: Saída com script fominha value ––––- Distribution ––––- count -15 | 0 -10 |@@@@@@@@@@@@@@ 120 -5 | 0 0 |@@@@@@@@@@@ 49 5 | 0 10 | 0 15 | 0 25 | 0 30 | 0 35 | 0 40 | 0 45 |@@@@@ 25 >=50 | 0
documentação, que verifica todas as alterações de prioridade nas threads do sistema. O script agrupa pelo nome da classe – no nosso caso, TS – e pede para agregar linearmente o valor resultante da diferença entre as prioridades nova e velha. Ao acionar o script da listagem 1 por alguns segundos, com o script fominha anterior em execução, são gerados resultados como os das listagens 2 e 3.
Eles mostram uma distribuição do valor da variação de prioridade (à esquerda) e o número de ocorrências daquela mudança (à direita). Fica visível que o escalonador age no sentido de diminuir a prioridade de threads no sistema. O grupo de controle (execução sem o script fominha) levanta a suspeita de que o culpado pelas mudanças de prioridades é o processo do terminal que está em loop infinito.
Listagem 4: Script para contar o tempo 01 #!/usr/sbin/dtrace -s 02 03 #pragma D option quiet 04 05 long int tson, tsoff; 06 07 sched:::on-cpu 08 /pid == $1 && tid == $2/ 09 { 10 trace(probename); 11 tson = timestamp; 12 printf(“ tempo fora = %d nsec\n”, timestamp-lsoff); 13 } 14 sched:::change-pri 15 /args[1]->pr_pid == $1 && args[0]->pr_lwpid == $2/ 16 { 17 trace(probename); 18 printf(“ delta pri = %d\n”,args[2]-args[0]->pr_pri); 19 } 20 sched:::off-cpu 21 /args[1]->pr_pid == $1 && args[0]->pr_lwpid == $2/ 22 { 23 trace(probename); 24 printf(“ tempo dentro = %d nsec , pri = %d\n”, timestamp -tson,args[0]->pr_pri); 25 tsoff = timestamp; 26 }
55
ANÁLISE | Escalonamento
Listagem 5: Saída de listagem 4 ... off-cpu on-cpu change-pri off-cpu on-cpu off-cpu on-cpu off-cpu on-cpu off-cpu on-cpu change-pri off-cpu on-cpu off-cpu on-cpu off-cpu on-cpu off-cpu on-cpu change-pri off-cpu on-cpu off-cpu on-cpu off-cpu on-cpu off-cpu on-cpu off-cpu on-cpu change-pri off-cpu ...
tempo tempo delta tempo tempo tempo tempo tempo tempo tempo tempo delta tempo tempo tempo tempo tempo tempo tempo tempo delta tempo tempo tempo tempo tempo tempo tempo tempo tempo tempo delta tempo
dentro = 16649243 nsec , pri = 59 fora = 91681 nsec pri = -9 dentro = 41670399 nsec , pri = 50 fora = 97571 nsec dentro = 9318139 nsec , pri = 50 fora = 79198 nsec dentro = 13291416 nsec , pri = 50 fora = 177805 nsec dentro = 5495730 nsec , pri = 50 fora = 81745 nsec pri = -10 dentro = 10681020 nsec , pri = 40 fora = 116827 nsec dentro = 19035494 nsec , pri = 40 fora = 84719 nsec dentro = 10120625 nsec , pri = 40 fora = 87395 nsec dentro = 25661734 nsec , pri = 40 fora = 89414 nsec pri = -10 dentro = 2488795 nsec , pri = 30 fora = 90233 nsec dentro = 232736969 nsec , pri = 30 fora = 95045 nsec dentro = 7080789 nsec , pri = 30 fora = 85251 nsec dentro = 10344521 nsec , pri = 30 fora = 164332 nsec dentro = 11108804 nsec , pri = 30 fora = 107210 nsec pri = -10 dentro = 68544355 nsec , pri = 20
Se quisermos observar com mais detalhes essa thread que muda o padrão de comportamento do escalonador, temos que usar o script em D da listagem 4 para verificar os tempos de execução e inatividade desta
thread, e também as mudanças de prioridade aplicadas pelo algoritmo de escalonamento. Ao executar esse script sobre a nossa thread sedenta por processamento, a saída gerada é semelhan-
Listagem 6: Script de teste de IA 01 #!/usr/sbin/dtrace -s 02 03 #pragma D option quiet 04 05 0sched:::change-pri 06 /args[0]->pr_clname == “IA” && args[1]->pr_pid == $1 && args[0] ->pr_lwpid == 1/ 07 { 08 printf(“Priority:%d + (%d) = %d\n”,args[0]->pr_pri, args[2] -args[0]->pr_pri, args[2]); 09 }
56
te à listagem 5. Nela, é possível ver claramente que o algoritmo de escalonamento age sobre a thread em questão. A listagem 5 demonstra que o processo permanece muito tempo dentro da CPU (na ordem de dezenas de milissegundos) em relação ao tempo fora dela (na ordem de dezenas ou centenas de microssegundos). Como esperado, o algoritmo de timeshare diminui a prioridade desta thread.
Interactive (IA)
Similar ao timeshare, esta classe adiciona um mecanismo que aumenta a prioridade das threads relacionadas à janela ativa do desktop. O algoritmo IA tem o intuito de ser usado em laptops e desktops para aumentar a interatividade e melhorar o tempo de resposta (isto é, reduzir a latência) do usuário. Para demonstrar este mecanismo, foi utilizado o script D da listagem 6, que imprime as alterações de prioridade de um determinado processo. Repare que, dentre todos os eventos de alteração de prioridades, o script seleciona aqueles que são da classe IA, cujo id do processo é passado como argumento e cujo id da thread é igual a um (para evitar comprometer a análise com o comportamento de threads distintas). Ao passar como argumento o id de um processo que está aberto no desktop, alterando o foco para este processo e voltando (duas vezes), é gerada uma saída como a da listagem 7. Repare que, ao colocar o foco na janela referente ao processo, o escalonador se encarrega de elevar a prioridade deste até o nível máximo (prioridade 59). Existem dois momentos, de acordo com a saída, em que a thread atinge o limite superior. Estes acontecem no momento em que colocamos a janela em foco. Desta maneira, o algoritmo IA consegue privilegiar os processos
http://www.linuxmagazine.com.br
Escalonamento | ANÁLISE
que possuem janelas sendo manuseadas por usuários, gerando uma sensação de respostas instantâneas, ou ao menos com uma latência sensivelmente menor.
Fixed Priority (FX)
Existem casos em que a preempção, isto é, a retirada forçada de uma thread do processador por outra de maior prioridade, não é desejada. Normalmente não há necessidade de baixa latência, sendo o tempo total de execução o fator crítico. O FX permite isto porque, como o próprio nome indica, não há mudanças de prioridade nos processos. Não existem ciclos de processamento sendo desperdiçados para gerência de prioridades, manutenção intensiva de filas e trocas de contexto desnecessárias. Desta maneira, os processos são serializados e executados um após o outro, terminando o lote de trabalho em menor tempo. Ao se executar os scripts anteriores em um ambiente configurado com o algoritmo FX, é possível verificar que sua prioridade não muda, além de poder ver claramente o momento em que cada processo entra no processador, é executado por inteiro e finalmente sai.
E no Linux?
O Linux, como o Opensolaris, herda do Unix as principais políticas de escalonamento de tarefas com o objetivo de oferecer máxima confiabilidade na execução de cada thread e processo. Para tanto, os seguintes problemas precisam ser resolvidos: gerenciamento dinâmico de prioridade das tarefas, tipificação e controle de processos em lote, interativos e em tempo real, com a consideração se os mesmos usam intensa alocação de I/O ou de CPU. O tempo de resposta de cada chamada de sistema e o fluxo de processos assinalados ao sistema operacional
Linux Magazine #59 | Outubro de 2009
Listagem 7: Saída da listagem 6 Priority:39 Priority:49 Priority:59 Priority:59 Priority:39 Priority:29 Priority:49 Priority:49 Priority:59 Priority:49 Priority:59 Priority:59 Priority:39
+ + + + + + + + + + + + +
(10) = 49 (10) = 59 (0) = 59 (-20) = 39 (-10) = 29 (15) = 44 (5) = 49 (10) = 59 (-10) = 49 (10) = 59 (0) = 59 (-20) = 39 (-10) = 29
devem ser rápidos o suficiente para evitar o congelamento da execução ou tempos de espera muito altos entre processos. Por fim, o suporte à implementação SMP é obrigatório para que em máquinas com mais de um núcleo ou processador se possa escalonar processos paralelamente, de forma eficaz. Tanto o OpenSolaris quanto o Linux implementam com sucesso todos esses requisitos, contudo existem algumas diferenças na implementação do sistema do pinguim, especialmente a partir de sua versão 2.6, que primeiramente implementou o escalonador O(1) e depois, a partir da versão 2.6.23, incluiu o Completely Fair Scheduler (CFS, escalonador completamente justo).
Conclusão
Como dito anteriormente, uma das funções principais de qualquer sistema operacional moderno é a gestão de processos, threads e processadores. O entendimento prático dos algoritmos é essencial para a seleção correta, assim como para o uso didático. Para isso, o Dtrace é uma ferramenta adequada: primeiramente por permitir trabalhar com o kernel funcional e ativo; em segundo lugar pela flexibilidade que os scripts D permitem; em terceiro, pela facilidade e acessibilidade da sintaxe de D, muito semelhante ao popular C. O Dtrace também se mostrou, pelos motivos levantados anteriormente e por ser aberto, adequado para o ambiente acadêmico de ensino didático de sistemas operacionais e de computação em geral. n
Sobre o autor Marcelo Arbore (marbore@br.ibm.com) é engenheiro de software da IBM. Formado em engenharia pela Poli-USP, tem experiência com soluções sobre as plataformas Solaris, Linux e AIX. José Damico (jdamico@br.ibm.com) é engenheiro de software da IBM, onde trabalha com a solução de data warehouse, Smart Analytics. É também especialista em Linux e Open Source, desenvolve e suporta diversos projetos no SourceForge e no GoogleCode.
Gostou do artigo? Queremos ouvir sua opinião. Fale conosco em cartas@linuxmagazine.com.br Este artigo no nosso site: http://lnm.com.br/article/3012
57
Sirva ASP.NET pelo Apache com mod_mono
REDES
ASP.NET no Apache O mod_mono permite hospedar aplicações .NET em seu servidor Apache 2. por Juliet Kemp
O
que fazer se a sua empresa investiu em algumas aplicações web elaboradas baseadas em ASP.NET antes de descobrir o GNU/Linux? E se o seu ambiente heterogêneo exige que essas mesmas páginas dinâmicas funcionem em múltiplas plataformas? Você precisa se desfazer do seu servidor web Apache simplesmente para poder servir conteúdo web desenvolvido no framework .NET da Microsoft? O Projeto Mono [1] tem trabalhado arduamente no problema de suporte ao framework .NET no GNU/Linux, e parte desta atenção foi dedicada à questão do ASP.NET. O Mono já oferece um módulo do Apache conhecido como mod_mono para hospedar aplicações na linguagem ASP baseadas em aplicações web .NET a partir de servidores Apache [2]. Este artigo fornece uma rápida análise de como configurar o servidor Apache para o suporte a ASP.NET. Naturalmente, esta discussão não pretende ser um tutorial completo de como configurar o Apache – um tema que poderia facilmente preencher um livro bem grande – porém, se você já tem conhecimentos básicos de configuração do Apache, continue a ler este artigo para mais informações sobre como trazer o .NET para o seu ambiente web. Para instalar o mod_mono, é importante dar preferência à utilização
Linux Magazine #59 | Outubro de 2009
do pacote disponibilizado pela sua própria distribuição GNU/Linux. Em sistemas Ubuntu e Debian, procure o pacote libapache2-mod-mono, e no Fedora instale os pacotes mod_mono e mono-web. Além disso, será necessário o pacote XSP. No Fedora, é preciso instalar o XSP direto dos fontes. No Ubuntu e demais distribuições baseadas em Debian, o pacote pode ser diretamente instalado como uma dependência do pacote (se preferir, você pode instalar o mod_mono pelo código-fonte [2], mas tenha em mente que assim aumentam as chances de problemas de compatibilidade). Ative o módulo inserindo sua respectiva seção no arquivo apache2. conf. No Ubuntu/Debian, o módulo é habilitado como parte da instalação. Porém, se isso não ocorrer, execute o comando sudo a2enmod mod_mono para habilitá-lo. Como alternativa, con-
sulte um exemplo de configuração na listagem 1. Depois de efetuar as alterações necessárias, recarregue o Apache com o comando /etc/init.d/ apache2 force-reload. Agora que a configuração básica já está pronta, o servidor já consegue lidar corretamente com páginas ASP. NET. Para testá-lo, crie uma pasta no diretório raiz do site com um de seus aplicativos ASP.NET ou instale o pacote asp.net-examples e acesse a pasta samples/ na raiz do servidor (algo como http://seu.servidor.net/ samples) para ver algumas aplicações de demonstração em funcionamento (figura 1). Se você instalou a partir do códigofonte, copie o diretório de teste do XSP (/lib/xsp/test/ ou /usr/lib/xsp/ test/, normalmente) para o diretório do Apache. Certifique-se de ter as permissões definidas corretamente
Listagem 1: Configuração de módulos do Apache 01 02 03 04 05 06 07 08 09 10 11 12
# Talvez seja preciso alterar isto de acordo com sua instalação LoadModule mono_module /usr/lib/apache2/modules/mod_mono.so <IfModule mod_mono.c> MonoUnixSocket /tmp/.mod_mono_server MonoServerPath /usr/lib/mono/1.0/mod-mono-server.exe MonoAutoApplication enabled AddType application/x-asp-net .aspx .ashx .asmx .ascx .asax .config DirectoryIndex index.aspx default.aspx MonoApplicationsConfigDir /etc/mono-server MonoPath /usr/lib/mono/1.0:/usr/lib:/usr/lib/mono/1.0 </IfModule>
67
REDES | Mod_mono
Figura 1 Teste a sua configuração com uma das aplicações exemplo de ASP.NET.
Figura 2 O painel de controle (bem básico) do servidor Mono.
(o usuário Apache deve ser capaz de ler esses diretórios e arquivos). A versão para Debian/Ubuntu fornece automaticamente uma configuração similar ao arquivo de configuração de exemplo contido na listagem 1. Primeiramente, o Apache carrega o módulo, e então cria um socket para o servidor e faz com que seu caminho seja executável. A linha MonoAutoApplication significa que não é preciso especificar de forma explícita as linhas MonoApplications para adicionar um aplicativo ao servidor (veja mais adiante como fazer com que as aplicações não sejam tratadas automaticamente), ao passo que a linha AddType diz ao Apache para definir o tipo de aplicação correta para os arquivos com as extensões dadas.
Listagem 2: Configuração do Painel de Controle Web 01 <Location /mono> 02 SetHandler mono-ctrl 03 Order deny,allow 04 Deny from all 05 Allow from 127.0.0.1 06 </Location>
68
A linha DirectoryIndex diz ao Apache para tratar os arquivos com os nomes especificados, como um índice. Este comando significa que, ao visitar, digamos, o endereço local http://seu.servidor.net/teste/, caso exista um arquivo default.aspx no diretório, esse arquivo será servido ao navegador. Com essas configurações, o mod_mono iniciará automaticamente o mod_mono_server e assim executará o aplicativo web requisitado quando uma requisição for enviada pelo navegador.
Painel de Controle Web Um painel de controle básico via Web distribuído com o mod_mono permite reiniciar o servidor do mod_mono, o que é útil quando há necessidade de recarregar os conjuntos modificados (figura 2). O painel de controle também fornece informações sobre os pedidos em processamento. Para usar o painel de controle, adicione as linhas na listagem 2 à configuração do Apache. Em sistemas
que utilizam o estilo de configuração do Debian, com a configuração do mod_mono em /etc/apache2/modsavailable/mod_mono.conf, provavelmente é melhor adicionar o código ao arquivo referido nele: /etc/monoserver/mono-server-hosts.conf. Caso contrário, será necessário colocar este código na seção mod_mono do arquivo de configuração do Apache. Na listagem 2, substitua 127.0.0.1 pelo endereço IP do computador cujo painel você deseja acessar (se não for o próprio localhost, claro). Esteja ciente de que o endereço IP é a única restrição. Em outras palavras, qualquer usuário com uma conta na máquina especificada será capaz de usar o painel de controle. Agora recarregue o Apache e dê uma olhada em http://meu.dominio. com/mono (ou http://localhost/mono caso se trate da própria máquina local). Há várias outras opções para ajustar a configuração do mod_mono. Por exemplo, para limitar o número de requisições simultâneas, use: MonoMaxActiveRequests 20 MonoMaxWaitingRequests 20
A diretiva ThreadPool do Apache limita o número de pedidos que o servidor de back-end mod_mono poderá tratar ao mesmo tempo. Se muitos pedidos chegarem de uma só vez, poderão ocorrer bloqueios. As diretivas anteriores evitam esse problema limitando o número de solicitações passadas de uma só vez. O valor 20 é o padrão. Altere-o de acordo com seu limite de ThreadPool (0 desabilita os limites). Os comandos a seguir reiniciam o servidor Mono a cada três horas (o formato de tempo é DD[:HH[:MM[:SS]]]): MonoAutoRestartMode Time MonoAutoRestartTime 00:03
Se o processo do servidor Mono estiver crescendo com o tempo, tal-
http://www.linuxmagazine.com.br
Mod_mono | REDES
vez seja preciso reiniciar o sistema periodicamente. Além disso, você pode marcar para reiniciar a partir do número de requisições servidas em vez de se basear no tempo: MonoAutoRestartMode Requests MonoAutoRestartRequests 10000
Outra possibilidade é configurar o servidor para escutar em uma porta específica: MonoListenPort 8080
Esse recurso permite executar o servidor Mono ASP.NET em uma porta diferente da porta padrão do Apache, embora provavelmente seja preciso modificar as configurações do firewall para que isso funcione.
Múltiplas aplicações
Para a maioria das pessoas, simplesmente habilitar o MonoAutoApplication no arquivo de configuração (listagem 1) já deverá funcionar. No entanto, se você preferir registrar as aplicações de forma explícita, poderá editar a configuração do Apache para que a seção mod_mono se pareça com o código da listagem 3 (mas é necessário deixar a linha LoadModule intacta). A listagem 3 desativa o autohosting, adiciona o manipulador do Mono para esses tipos de arquivos e define dois locais onde os aplicativos do Mono podem ser encontrados. Cada um deles está especificado como local_ virtual:local_no_disco. Recarregue o Apache e tente a página de exemplo novamente – ela ainda deve estar funcionando corretamente. No caso de aplicações diferentes, também é possível executar múltiplas instâncias independentes no servidor, cada uma com um nome – talvez para separar servidores em testes daqueles de produção, ou talvez para limitar a utilização por parte de cada usuário de forma independente. Além disso, será preciso
Linux Magazine #59 | Outubro de 2009
Listagem 3: Mono sem configuração automática 01 MonoAutoApplication disabled 02 AddHandler mono .aspx .ascx .asax .ashx .config .cs .asmx .axd 03 MonoApplications “/:/home/username/www,/samples:/usr/share/asp. net-demos”
Listagem 4: Múltiplos servidores 01 02 03 04 05 06 07 08 09
MonoApplications meu teste “/ my-teste: / usr / share / mono / test” <Location /my-test> testes MonoSetServerAlias </ Location> MonoApplications minha casa “/ nos-aqui: / home / user / mono” <Location /my-home> home MonoSetServerAlias </ Location>
ter as linhas LoadModule e AddHandler, citadas anteriormente, e então verificar na listagem 4 um exemplo de configuração para dois servidores. Novamente, este código deve ser incluído na seção mod_mono da configuração do Apache 2. O argumento adicional de MonoApplications é um “apelido” (alias) de uma instância específica do servidor, que então é associada a um determinado diretório. Ao adicionar o alias do servidor como segundo argumento, é possível aplicar qualquer uma das opções discutidas anteriormente. Por exemplo, a diretiva MonoListenPort nos-aqui 8080 faz o servidor nos-aqui escutar na porta 8080. Novamente, esta abordagem pode ser útil para separar os servidores e também porque diferentes aplicativos podem ter requisitos distintos.
ASP.NET Versão 2
O servidor Mono padrão é o da versão 1.1, discutida neste artigo. Para usar a versão 2, é preciso instalá-la (os pacotes já estão disponíveis) e então editar sua configuração de acordo – as diretivas que precisam ser editadas para a versão 2 são MonoServerPath e MonoPath. Em seguida, recarregue o Apache. No caso do Debian/Ubuntu, os detalhes da configuração se encontram no arquivo mod_mono.conf.
Solução de problemas
O primeiro lugar para procurar em caso de problemas é o log de erros do Apache (/var/log/apache2/error_log). Verifique também se as permissões de arquivos estão definidas corretamente; em especial, garanta que o usuário sob o qual o Apache está em execução possua as permissões adequadas para acessar o(s) diretório(s) dos aplicativos em Mono. No caso de erros de “Service Temporarily Unavailable” (Serviço temporariamente indisponível), tente alterar a diretiva MonoServerPath para apontar para /usr/bin/mod-mono-server (o diretório /usr/lib/mono/ também parece funcionar em algumas configurações, mas não em todas). n
Mais informações [1] Projeto Mono: http://mono-project.com [2] Projeto mod_mono: http://www.mono-project.com /Mod_mono
Gostou do artigo? Queremos ouvir sua opinião. Fale conosco em cartas@linuxmagazine.com.br Este artigo no nosso site: http://lnm.com.br/article/3047
69
Linux.local
SERVIÇOS
O maior diretório de empresas que oferecem produtos, soluções e serviços em Linux e Software Livre, organizado por Estado. Sentiu falta do nome de sua empresa aqui? Entre em contato com a gente: 11 4082-1300 ou anuncios@linuxmagazine.com.br
Fornecedor de Hardware = 1 Redes e Telefonia / PBX = 2 Integrador de Soluções = 3 Literatura / Editora = 4 Fornecedor de Software = 5 Consultoria / Treinamento = 6
Empresa
Cidade
Endereço
Telefone
Web
1 2 3 4 5 6
71 4062-8688
www.imtech.com.br
4 4
4 4
85 3252-3836
www.f13.com.br
4 4
4 4
Bahia IMTECH
Salvador
Av. Antonio Carlos Magalhaes, 846 – Edifício MaxCenter – Sala 337 – CEP 41825-000
F13 Tecnologia
Fortaleza
Rua Padre Valdevino, 526 – Centro
Ceará Espírito Santo Linux Shopp
Vila Velha
Rua São Simão (Correspondência), 18 – CEP: 29113-120
27 3082-0932
www.linuxshopp.com.br
Megawork Consultoria e Sistemas
Vitória
Rua Chapot Presvot, 389 – Praia do Canto – CEP: 29055-410 sl 201, 202
27 3315-2370
www.megawork.com.br
4
4 4
Spirit Linux
Vitória
Rua Marins Alvarino, 150 – CEP: 29047-660
27 3227-5543
www.spiritlinux.com.br
4
4 4
4 4
4 4
Minas Gerais Instituto Online
Belo Horizonte
Av. Bias Fortes, 932, Sala 204 – CEP: 30170-011
31 3224-7920
www.institutoonline.com.br
Linux Place
Belo Horizonte
Rua do Ouro, 136, Sala 301 – Serra – CEP: 30220-000
31 3284-0575
corporate.linuxplace.com.br
4 4 4
4 4 4
Microhard
Belo Horizonte
Rua República da Argentina, 520 – Sion – CEP: 30315-490
31 3281-5522
www.microhard.com.br
4 4 4
4 4
TurboSite
Belo Horizonte
Rua Paraíba, 966, Sala 303 – Savassi – CEP: 30130-141
0800 702-9004
www.turbosite.com.br
4
4 4
iSolve
Curitiba
Av. Cândido de Abreu, 526, Cj. 1206B – CEP: 80530-000
41 252-2977
www.isolve.com.br
Mandriva Conectiva
Curitiba
Rua Tocantins, 89 – Cristo Rei – CEP: 80050-430
41 3360-2600
www.mandriva.com.br
Telway Tecnologia
Curitiba
Rua Francisco Rocha 1830/71
41 3203-0375
www.telway.com.br
81 3223-8348
www.fuctura.com.br
21 2203-2622
www.multipla-ti.com.br
Paraná 4 4
4
4 4 4 4 4 4
Pernambuco Fuctura Tecnologia
Recife
Rua Nicarágua, 159 – Espinheiro – CEP: 52020-190
4
4
4
4 4
Rio de Janeiro Múltipla Tecnologia da Informação
Rio de Janeiro
Av. Rio Branco, 37, 14° andar – CEP: 20090-003
4
NSI Training
Rio de Janeiro
Rua Araújo Porto Alegre, 71, 4º andar Centro – CEP: 20030-012
21 2220-7055
www.nsi.com.br
4
4
Open IT
Rio de Janeiro
Rua do Mercado, 34, Sl, 402 – Centro – CEP: 20010-120
21 2508-9103
www.openit.com.br
4
4
Unipi Tecnologias
Campos dos Goytacazes
Av. Alberto Torres, 303, 1ºandar – Centro – CEP: 28035-581
22 2725-1041
www.unipi.com.br
4up Soluções Corporativas
Novo Hamburgo
Pso. Calçadão Osvaldo Cruz, 54 sl. 301 CEP: 93510-015
51 3581-4383
www.4up.com.br
Definitiva Informática
Novo Hamburgo
Rua General Osório, 402 - Hamburgo Velho
51 3594 3140
www.definitiva.com.br
Solis
Lajeado
Av. 7 de Setembro, 184, sala 401 – Bairro Moinhos CEP: 95900-000
51 3714-6653
www.solis.coop.br
4 4 4 4
Rio Grande do Sul 4 4
4 4
4
4 4
4
4 4 4 4 4
DualCon
Novo Hamburgo
Rua Joaquim Pedro Soares, 1099, Sl. 305 – Centro
51 3593-5437
www.dualcon.com.br
4
4
Datarecover
Porto Alegre
Av. Carlos Gomes, 403, Sala 908, Centro Comercial Atrium Center – Bela Vista – CEP: 90480-003
51 3018-1200
www.datarecover.com.br
4
4
LM2 Consulting
Porto Alegre
Rua Germano Petersen Junior, 101-Sl 202 – Higienópolis – CEP: 90540-140
51 3018-1007
www.lm2.com.br
4 4
4
4 4
Lnx-IT Informação e Tecnologia Porto Alegre
Av. Venâncio Aires, 1137 – Rio Branco – CEP: 90.040.193
51 3331-1446
www.lnx-it.inf.br
4
4
4 4
Plugin
Av. Júlio de Castilhos, 132, 11º andar Centro – CEP: 90030-130
51 4003-1001
www.plugin.com.br
4
4
4
Porto Alegre
TeHospedo
Porto Alegre
Rua dos Andradas, 1234/610 – Centro – CEP: 90020-008
51 3286-3799
www.tehospedo.com.br
4 4
Propus Informática
Porto Alegre
Rua Santa Rita, 282 – CEP: 90220-220
51 3024-3568
www.propus.com.br
4 4 4
4 4
São Paulo Ws Host
Arthur Nogueira
Rua Jerere, 36 – Vista Alegre – CEP: 13280-000
19 3846-1137
www.wshost.com.br
4
DigiVoice
Barueri
Al. Juruá, 159, Térreo – Alphaville – CEP: 06455-010
11 4195-2557
www.digivoice.com.br
4 4 4
Dextra Sistemas
Campinas
Insigne Free Software do Brasil Campinas
4
4 4 4
Rua Antônio Paioli, 320 – Pq. das Universidades – CEP: 13086-045 19 3256-6722
www.dextra.com.br
4
4 4
Av. Andrades Neves, 1579 – Castelo – CEP: 13070-001
www.insignesoftware.com
4
4 4
19 3213-2100
Microcamp
Campinas
Av. Thomaz Alves, 20 – Centro – CEP: 13010-160
19 3236-1915
www.microcamp.com.br
PC2 Consultoria em Software Livre
Carapicuiba
Rua Edeia, 500 - CEP: 06350-080
11 3213-6388
www.pc2consultoria.com
4 4 4 4
4
4 4
4 4
Savant Tecnologia
Diadema
Av. Senador Vitorino Freire, 465 – CEP: 09910-550
11 5034-4199
www.savant.com.br
2MI Tecnologia e Informação
Embu
Rua José Bonifácio, 55 – Jd. Independência – CEP: 06826-080
11 4203-3937
www.2mi.com.br
14 3413-1137
Epopéia Informática
Marília
Rua Goiás, 392 – Bairro Cascata – CEP: 17509-140
Redentor
Osasco
Rua Costante Piovan, 150 – Jd. Três Montanhas – CEP: 06263-270 11 2106-9392
www.redentor.ind.br
Go-Global
Santana de Parnaíba
Av. Yojiro Takaoca, 4384, Ed. Shopping Service, Cj. 1013 – CEP: 06541-038
www.go-global.com.br
78
11 2173-4211
4
4 4
www.epopeia.com.br
4 4 4
4 4
http://www.linuxmagazine.com.br
Linux.local | SERVIÇOS
Empresa
Cidade
Endereço
Telefone
Web
1 2 3 4 5 6
São Paulo (continuação) AW2NET
Santo André
Rua Edson Soares, 59 – CEP: 09760-350
11 4990-0065
www.aw2net.com.br
Async Open Source
São Carlos
Rua Orlando Damiano, 2212 – CEP 13560-450
16 3376-0125
www.async.com.br
4
Delix Internet
São José do Rio Preto
Rua Voluntário de São Paulo, 3066 9º – Centro – CEP: 15015-909
11 4062-9889
www.delixhosting.com.br
4
4
4 4 4 4
4
4
4Linux
São Paulo
Rua Teixeira da Silva, 660, 6º andar – CEP: 04002-031
11 2125-4747
www.4linux.com.br
A Casa do Linux
São Paulo
Al. Jaú, 490 – Jd. Paulista – CEP: 01420-000
11 3549-5151
www.acasadolinux.com.br
4
4 4
Accenture do Brasil Ltda.
São Paulo
Rua Alexandre Dumas, 2051 – Chácara Santo Antônio – CEP: 04717-004
11 5188-3000
www.accenture.com.br
4
4 4
4 4
ACR Informática
São Paulo
Rua Lincoln de Albuquerque, 65 – Perdizes – CEP: 05004-010
11 3873-1515
www.acrinformatica.com.br
4
4
Agit Informática
São Paulo
Rua Major Quedinho, 111, 5º andar, Cj. 508 – Centro – CEP: 01050-030
11 3255-4945
www.agit.com.br
4 4
4
Altbit - Informática Comércio e Serviços LTDA.
São Paulo
Av. Francisco Matarazzo, 229, Cj. 57 – Água Branca – CEP 05001-000
11 3879-9390
www.altbit.com.br
4
4
4 4
AS2M -WPC Consultoria
São Paulo
Rua Três Rios, 131, Cj. 61A – Bom Retiro – CEP: 01123-001
11 3228-3709
www.wpc.com.br
Big Host
São Paulo
Rua Dr. Miguel Couto, 58 – Centro – CEP: 01008-010
11 3033-4000
www.bighost.com.br
4
4 4
Blanes
São Paulo
Rua André Ampére, 153 – 9º andar – Conj. 91 CEP: 04562-907 (próx. Av. L. C. Berrini)
11 5506-9677
www.blanes.com.br
4 4 4
4 4
Commlogik do Brasil Ltda.
São Paulo
Av. das Nações Unidas, 13.797, Bloco II, 6º andar – Morumbi – CEP: 04794-000
11 5503-1011
www.commlogik.com.br
4 4 4
4 4
Computer Consulting Projeto e Consultoria Ltda.
São Paulo
Rua Caramuru, 417, Cj. 23 – Saúde – CEP: 04138-001
11 5071-7988
www.computerconsulting.com.br
4
4 4
Consist Consultoria, Sistemas e Representações Ltda.
São Paulo
Av. das Nações Unidas, 20.727 – CEP: 04795-100
11 5693-7210
www.consist.com.br
Domínio Tecnologia
São Paulo
Rua das Carnaubeiras, 98 – Metrô Conceição – CEP: 04343-080
11 5017-0040
www.dominiotecnologia.com.br
EDS do Brasil
São Paulo
Av. Pres. Juscelino Kubistcheck, 1830 Torre 4 - 5º andar
11 3707-4100
www.eds.com
Ética Tecnologia
São Paulo
Rua Nova York, 945 – Brooklin – CEP:04560-002
11 5093-3025
www.etica.net
Getronics ICT Solutions and Services
São Paulo
Rua Verbo Divino, 1207 – CEP: 04719-002
11 5187-2700
www.getronics.com/br
4
4 4
4
4 4 4 4 4
4 4 4
4
4
4
4 4
4
4 4
Hewlett-Packard Brasil Ltda.
São Paulo
Av. das Nações Unidas, 12.901, 25º andar – CEP: 04578-000
11 5502-5000
www.hp.com.br
4
4 4 4 4
IBM Brasil Ltda.
São Paulo
Rua Tutóia, 1157 – CEP: 04007-900
0800-7074 837
www.br.ibm.com
4
4
4 4
iFractal
São Paulo
Rua Fiação da Saúde, 145, Conj. 66 – Saúde – CEP: 04144-020
11 5078-6618
www.ifractal.com.br
4
4 4
Integral
São Paulo
Rua Dr. Gentil Leite Martins, 295, 2º andar Jd. Prudência – CEP: 04648-001
11 5545-2600
www.integral.com.br
4 4 4 4
Itautec S.A.
São Paulo
Av. Paulista, 2028 – CEP: 01310-200
11 3543-5543
www.itautec.com.br
Kenos Consultoria
São Paulo
Av: Fagundes Filho, 134, Conj 53 – CEP: 04304-000
11 40821305
www.kenos.com.br
Konsultex Informatica
São Paulo
Av. Dr. Guilherme Dumont Villares, 1410 6 andar, CEP: 05640-003
11 3773-9009
www.konsultex.com.br
São Paulo
Av. Dr. Lino de Moraes Leme, 185 – CEP: 04360-001
11 5034-4191
www.komputer.com.br
4 4
Linux Mall
São Paulo
Rua Machado Bittencourt, 190, Cj. 2087 – CEP: 04044-001
11 5087-9441
www.linuxmall.com.br
São Paulo
Al. Santos, 1202 – Cerqueira César – CEP: 01418-100
11 3266-2988
www.temporeal.com.br
Locasite Internet Service
São Paulo
Av. Brigadeiro Luiz Antonio, 2482, 3º andar – Centro – CEP: 01402-000
11 2121-4555
www.locasite.com.br
Microsiga
São Paulo
Av. Braz Leme, 1631 – CEP: 02511-000
11 3981-7200
www.microsiga.com.br
Locaweb
São Paulo
Av. Pres. Juscelino Kubitschek, 1.830 – Torre 4 Vila Nova Conceição – CEP: 04543-900
11 3544-0500
www.locaweb.com.br
Novatec Editora Ltda.
São Paulo
Rua Luis Antonio dos Santos, 110 – Santana – CEP: 02460-000
11 6979-0071
www.novateceditora.com.br
Novell América Latina
São Paulo
Rua Funchal, 418 – Vila Olímpia
11 3345-3900
www.novell.com/brasil
Oracle do Brasil Sistemas Ltda. São Paulo
Av. Alfredo Egídio de Souza Aranha, 100 – Bloco B – 5º andar – CEP: 04726-170
11 5189-3000
www.oracle.com.br
Proelbra Tecnologia Eletrônica Ltda.
São Paulo
Av. Rouxinol, 1.041, Cj. 204, 2º andar Moema – CEP: 04516-001
11 5052- 8044
www.proelbra.com.br
Provider
São Paulo
Av. Cardoso de Melo, 1450, 6º andar – Vila Olímpia – CEP: 04548-005
11 2165-6500
Red Hat Brasil
São Paulo
Av. Brigadeiro Faria Lima, 3900, Cj 81 8º andar Itaim Bibi – CEP: 04538-132
11 3529-6000
4 4 4 4
Linux Komputer Informática Livraria Tempo Real
4
4
4 4
4
4 4 4 4 4 4 4
4
4 4 4
4 4
4 4 4 4 4
4 4 4 4
4
4
4
www.e-provider.com.br
4
4 4
www.redhat.com.br
4
4 4
Samurai Projetos Especiais
São Paulo
Rua Barão do Triunfo, 550, 6º andar – CEP: 04602-002
11 5097-3014
www.samurai.com.br
4
4 4
SAP Brasil
São Paulo
Av. das Nações Unidas, 11.541, 16º andar – CEP: 04578-000
11 5503-2400
www.sap.com.br
4
4 4
Simples Consultoria
São Paulo
Rua Mourato Coelho, 299, Cj. 02 Pinheiros – CEP: 05417-010
11 3898-2121
www.simplesconsultoria.com.br
Smart Solutions
São Paulo
Av. Jabaquara, 2940 cj 56 e 57
11 5052-5958
www.smart-tec.com.br
4
4 4
4 4
4 4
Snap IT
São Paulo
Rua João Gomes Junior, 131 – Jd. Bonfiglioli – CEP: 05299-000
11 3731-8008
www.snapit.com.br
4
4 4
Stefanini IT Solutions
São Paulo
Av. Brig. Faria Lima, 1355, 19º – Pinheiros – CEP: 01452-919
11 3039-2000
www.stefanini.com.br
4
4 4
11 5187-2100
Sun Microsystems
São Paulo
Rua Alexandre Dumas, 2016 – CEP: 04717-004
Sybase Brasil
São Paulo
Av. Juscelino Kubitschek, 510, 9º andar Itaim Bibi – CEP: 04543-000 11 3046-7388
www.sybase.com.br
The Source
São Paulo
Rua Marquês de Abrantes, 203 – Chácara Tatuapé – CEP: 03060-020
11 6698-5090
www.thesource.com.br
Unisys Brasil Ltda.
São Paulo
R. Alexandre Dumas 1658 – 6º, 7º e 8º andares – Chácara Santo Antônio – CEP: 04717-004
11 3305-7000
www.unisys.com.br
www.sun.com.br
4
4
4 4 4 4
4
4
4 4
4
4 4
Utah
São Paulo
Av. Paulista, 925, 13º andar – Cerqueira César – CEP: 01311-916
11 3145-5888
www.utah.com.br
4
4 4
Visuelles
São Paulo
Rua Eng. Domicio Diele Pacheco e Silva, 585 – Interlagos – CEP: 04455-310
11 5614-1010
www.visuelles.com.br
4
4 4
Webnow
São Paulo
Av. Nações Unidas, 12.995, 10º andar, Ed. Plaza Centenário – Chácara Itaim – CEP: 04578-000
11 5503-6510
www.webnow.com.br
4
4
4
4
WRL Informática Ltda.
São Paulo
Rua Santa Ifigênia, 211/213, Box 02– Centro – CEP: 01207-001
11 3362-1334
www.wrl.com.br
4
Systech
Taquaritinga
Rua São José, 1126 – Centro – Caixa Postal 71 – CEP: 15.900-000
16 3252-7308
www.systech-ltd.com.br
4 4
Linux Magazine #59 | Outubro de 2009
4 4
79
Índice de anunciantes
Calendário de eventos
SERVIÇOS
Evento
Data
Local
Informações
Rails Summit 2009
13 a 14 de outubro
São Paulo, SP
www.railssummit.com.br
Futurecom 2009
13 a 16 de outubro
São Paulo, SP
www.futurecom2009.com.br
Latinoware PGCON Brasil 2009
CESoL
22 a 24 de outubro 24 e 25 de outubro
10 a 13 de novembro
1a Conferência Web W3C Brasil
23 e 24 d enovembro
Plone Symposium América do Sul
24 e 25 de novembro
4o SoLISC
26 e 27 de novembro
Foz de Iguaçu, PR
www.latinoware.org
Campinas, SP
www.postgresql.org.br/ eventos/pgconbr
Fortaleza, CE
São Paulo, SP
São Paulo, SP Florianópolis, SC
www.cesol.org
www.conferencia.w3c.br
www.plonesymposium.com.br www.solisc.org.br
Empresa
Pág.
Senac
2
Latinoware
7
Caixa Econômica Federal
9
Rittal
11
DigiVoice
13
Watchguard
15
Futurecom
17
Uol Host
21
Virtual Link
25
Unodata
27
TIC
29
Khomp
31
Vectory
81
Bull
83
Locaweb
84
Nerdson – Os quadrinhos mensais da Linux Magazine
80
http://www.linuxmagazine.com.br
PREVIEW
Na Linux Magazine #60 DESTAQUE
SEGURANÇA
Storage
Aplicações web
Jade Gordon – www.sxc.hu
Os discos rígidos já são baratos o suficiente para qualquer empresa começar a acumular grandes quantidades de terabytes em seus servidores. No entanto, a velocidade de acesso aos discos não acompanhou de forma linear seu crescimento de capacidade. Além disso, a complexidade para reunir ou separar os múltiplos discos em volumes LVM e RAID também se torna mais importante. Como resultado, hoje é possível perceber grandes atrasos no serviço de arquivos, tanto por gargalos do hardware quanto por detalhes de configuração. A próxima edição da Linux Magazine mostrará como otimizar conjuntos RAID de forma a reduzir esses atrasos e extrair o máximo de desempenho do hardware já instalado. Além disso, detalharemos políticas e procedimentos de becape com o poderoso Bacula, assim como o uso do Clonezilla para clonar e reproduzir partições inteiras. n
Suas aplicações web estão seguras? Seus clientes podem esquecer as preocupações quando as utilizam? Os outros sites que eles acessam podem interferir sobre as suas aplicações? A Linux Magazine 60 vai apresentar algumas vulnerabilidades existentes em aplicações web e a maneira como os desenvolvedores que atuam nesta área devem proteger seus sites. Este tipo de aplicação está se tornando um padrão, e os riscos são grandes, já que o desenvolvimento web guarda muitas diferenças em relação à programação de aplicativos convencionais. n
Na EasyLinux #16 Twittando no Linux
A adoção do Twitter cresce a passos gigantescos. Com ele, você não apenas fica por dentro das opiniões mais recentes dos seus amigos reais e virtuais, como também acompanha as últimas promoções das suas lojas preferidas, recebe informações sobre seu time de futebol e se atualiza em velocidade estonteante. E o Linux, naturalmente, não fica de fora disso! Na Easy Linux 16, vamos mostrar as melhores formas de utilizar o Twitter no Linux. Seja com um programa específico para essa tarefa ou por meio de complementos do Firefox e do Thunderbird, twittar no Linux é muito fácil e rápido. Vamos apresentar também os melhores feeds para você seguir e se atualizar com relação ao Linux, Ubuntu e tecnologia em geral. n 82
Programas de email
Verificar seus emails pelo navegador não é ruim, mas também há muitas vantagens em adotar um cliente como o Evolution ou o Thunderbird. Ou o Sylpheed, o KMail, o Claws... Por exemplo, eles avisam, na sua área de trabalho, sempre que chega uma nova mensagem. Na próxima edição, vamos mostrar os melhores programas para você conferir seus emails sem precisar abrir o navegador. E se você for realmente fã dos webmails, vamos mostrar os aplicativos indispensáveis para você não perder nenhum email e até receber avisos de mensagens na sua área de trabalho. n
http://www.linuxmagazine.com.br