Artigo

    

Segredo simples

O SocialVNP oferece uma abordagem simples e rápida para configurar uma conexão segura para comunicação e troca de informações.


Por e Christoph Langner


Imagine que um dia um funcionário esteja fora dos muros da empresa – ou pior, atrás de um roteador sem fio com NAT – e seja preciso acessar o computador dele. Ou então, talvez você precise de uma conexão criptografada para trocar dados confidenciais através de redes inseguras e tenha preocupação com a complexidade de se configurar um servidor VPN. O SocialVPN oferece uma técnica simples para a troca de dados por um canal criptografado entre redes e roteadores.

A VPN (Virtual Private Network) já provou seu valor como um meio seguro e eficaz para troca de dados entre computadores pela Internet. Os computadores em uma VPN agem como se estivessem na mesma rede local – por isso, serviços como o Samba, RDP, VNC ou SSH podem ser usados sem perigo de interceptação por invasores. Logicamente, uma VPN típica requer muita configuração. Por isso, produtos como o Hamachi [1], com suporte a VPNs por firewalls e roteadores sem a necessidade de configurações complexas, se estabeleceram. Infelizmente, o Hamachi tem o código fechado, o que elimina parte da segurança da VPN.


Além do mais, a empresa por trás do programa, a LogMeIn, cobra uma taxa de licença para uso comercial, e é preciso ter sempre uma conta com a LogMeIn. Pior do que isso, a versão do software para Linux não é bem mantida e a LogMeIn não oferece uma interface gráfica.


O projeto SocialVPN [2] oferece uma alternativa licenciada sob a GPLv2 ao produto comercial com a mesma funcionalidade. O SocialVPN está disponível para Windows e Linux; a versão para Mac OS X está atualmente na fase alfa.


O SocialVPN combina o trabalho de três projetos de código aberto para estabelecer uma VPN entre qualquer número de hosts. A biblioteca Brunet [3] suporta redes peer-to-peer através de roteadores sem a necessidade de encaminhamento de portas do roteador para um computador por trás dele. O IPOP [4] faz o roteamento dos pacotes entre as redes, enquanto que a interface XMPP (Jabber) [5] autentica usuários e troca chaves através de um canal seguro. Além do mais, o SocialVPN possui uma interface web fácil de usar.


A autenticação via Jabber é necessária e, por isso, é preciso ter uma conta em um servidor compatível para se usar o SocialVPN. Caso você possua uma conta de e-mail com um provedor de webmail, como o Gmail, automaticamente já tem uma conta no Jabber.


Seu endereço no Jabber será exatamente o mesmo do seu endereço de e-mail – quer dizer, seu_nome@gmail.com. Na falta de uma conta no Gmail, os servidores públicos do Jabber estão listados no site jabber.org [6], e é possível registrar-se em qualquer um deles para abrir uma conta.


Instalação


No Linux, é preciso ter o ambiente Mono instalado. Instalar o SocialVPN é bem fácil. Basta baixar o arquivo do programa [7], descompactá-lo e executar o script setup.sh para configurá-lo. Depois, execute o script sem os privilégios de root (listagem 1) e forneça seu ID do Jabber, um nome de máquina e um nome de usuário na janela de configuração.

O script permite gerar certificados individuais. No Windows, o SocialVPN requer a instalação do framework Microsoft .NET [8] primeiro. Depois, basta clicar duas vezes no ícone do programa para executar setup.cmd. A primeira medida tomada pelo script é desinstalar o SocialVPN (mesmo que ele nunca tenha sido instalado) e depois instalar a nova versão. Os drivers do dispositivo não estão assinados, portanto, será necessário aceitar o aviso apresentado pela rotina de instalação.


Execução


Após completar a instalação, inicie o VPN no Linux executando o script socialvpn (listagem 2). Note que é necessário ser root para configurar as rotas e a interface da rede virtual. Supondo que o script não tenha encontrado nenhum erro, abra o navegador web e visite o endereço http://127.0.0.1:58888http://127.0.0.1:58888 para acessar a interface web do SocialVPN.

No Windows, o SocialVPN deve ser iniciado e parado, respectivamente, com os scripts start_socialvpn e stop_socialvpn. No Windows Vista ou no Windows 7, é necessário clicar com o botão direito no ícone e escolher Executar como Administrador: é impossível configurar a interface de rede virtual de outra maneira.


Novos contatos


Após os dois interlocutores configurarem e iniciarem o SocialVPN, é necessário adicionar contatos ao SocialVPN, da mesma forma como se faz num programa de mensagens instantâneas. Certifique-se de clicar em Login para se conectar ao servidor, com o uso de seu ID Jabber e senha correspondente. Depois do login, aparecerá a mensagem Online ao lado do link de login.

A partir desse momento, já é possível adicionar seus contatos da VPN. A interface web possui um link Add Friends para isso. No campo de entrada, digite seu contato na forma de um fingerprint de ID do Jabber (figura 1); por exemplo, para fulano@jabber.exemplo.br, essa fingerprint é //SVPN:123456789. Ou seja, não basta saber apenas o ID Jabber de um contato; também é necessário ter a fingerprint do cliente para configurar a conexão VPN.


Certifique-se de usar um canal de comunicação seguro para trocar fingerprints com seus contatos; caso contrário, seria um convite a intrusos. Para uma comunicação bidirecional, é preciso também enviar seu ID Jabber e a fingerprint ao seu contato para que ele possa adicioná-lo à sua lista.


Após informar os IDs Jabber e as fingerprints, seus contatos aparecerão como Online. Neste ponto, seus computadores já estão em rede, e já é possível ver os IPs e nomes das máquinas de seus contatos (figura 2) na interface usada para se comunicar com eles. Como teste inicial, tente um ping no computador do outro lado da conexão. O SocialVPN irá fornecer os detalhes para isso.


Caso o ping funcione, é possível começar a usar serviços mais complexos. Repare que o SocialVPN é apenas uma rede entre computadores remotos; ele não possui serviços de acesso remoto à área de trabalho ou de compartilhamento de arquivos. Caso você precise de algo assim, tecnologias como NX, RDP e VNC provavelmente são as melhores escolhas.


Em nosso laboratório, serviços baseados em Avahi mostraram-se bem eficientes. Por exemplo, não tivemos problemas para usar o Vinagre/Vino para acessar remotamente a área de trabalho remota, conversar usando o Pidgin e o Bonjour ou transferir arquivos e pastas usando o Giver e tudo sem a necessidade de configurar com antecedência os servidores correspondentes.


Conclusões


O SocialVPN é realmente útil para ultrapassar obstáculos criados por roteadores com NAT entre dois computadores com uma conexão à Internet. Ele pode ser usado até em jogos que possuam recursos de LAN, mas não de Internet, e é uma ótima escolha para usar o VNC para resolver os problemas do desktop de um cliente sem precisar configurar o encaminhamento de portas nem criar um túnel SSH. Configurar uma VPN entre dois ou mais computadores é uma experiência rápida e fácil.

Dito isso, o SocialVPN é incapaz de ajudar em tarefas mais complexas. Não conseguimos usá-lo para estabelecer uma VPN em uma rede na qual o firewall bloqueava todas as conexões de saída e permitia apenas HTTP e HTTPS através de um proxy. Também não conseguimos executar o SocialVPN juntamente com outra conexão VPN. Portanto, é impossível usar o SocialVPN em uma rede com apenas uma interface VPN.


O SocialVPN é perfeito para configurar uma rede privada virtual de forma fácil e rápida em máquinas com diferentes sistemas operacionais. Pequenas empresas ou usuários domésticos em particular, que usam DSL para se conectar à Internet, irão se beneficiar do SocialVPN, pois ele elimina a necessidade de configurações de rede complexas. Porém, um programa de configuração para o Windows e pacotes para várias distribuições Linux poderiam simplificar ainda mais as coisas.


Mais informações


[1] Hamachi: https://secure.logmein.com/products/hamachi2/

[2] SocialVPN: http://socialvpn.wordpress.com


[3] Brunet: http:// github.com/johnynek/brunet/tree


[4] IPOP: http://www.grid-.org/wiki/index.php/IPOP


[5] Jabber-Net-XMPP-API: http://code.google.com/p/jabber-net/


[6] Lista de servidores públicos Jabber: http://www.jabberes.org/servers/


[7] Download do SocialVPN: http://code.google.com/p/socialvpn/downloads/list


[8] Microsoft .NET Framework 3.5: http://tinyurl.com/lu1002-dotnet


figura-01.png


Figura 1 Adicionando contatos ao SocialVPN.


figura-02.png


Figura 2 O SocialVPN lista seus contatos e os dados de suas redes na interface.


Listagem 1: Instalação do SocialVPN


$ ./setup.sh
Ent er userid (jabberid@host.com):
joe.public@jabber.example.com
Enter PCID (home-pc): samplehost
Enter Name (Jane Doe): Joe Public
Creating certificate...
Certificate creation successful
Run ./socialvpn as root

Listagem 2: Execução do script ``socialvpn``


$ sudo ./socialvpn
Set 'tapipop' nonpersistent
Set 'tapipop' persistent and owned by uid 1000
Internet Systems Consortium DHCP Client V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Listening on LPF/tapipop/0e:b0:52:6e:66:f7
Sending on LPF/tapipop/0e:b0:52:6e:66:f7
Sending on Socket/fallback
DHCPDISCOVER on tapipop to 255.255.255.255 port 67 interval 3
DHCPOFFER of 172.31.0.2 from 172.31.0.1
DHCPREQUEST of 172.31.0.2 on tapipop to 255.255.255.255 port 67
DHCPACK of 172.31.0.2 from 172.31.0.1
* Reloading /etc/samba/smb.conf smbd only
...done.
bound to 172.31.0.2 -- renewal in 1294 seconds.
Point your browser to http://127.0.0.1:58888

O autor


Christoph Langner trabalha com gerenciamento de testes na PTV em Karlsruhe, na Alemanha, e é membro ativo da comunidade de software de código aberto há muitos anos. Veja seu blog sobre GNU/Linux em http://linuxundich.de.

Christoph Langner trabalha com gerenciamento de testes para a PTV em Karlsruhe, Alemanha. Ele é membro ativo no cenário de software de código aberto. Leia seu blog sobre GNU/Linux (em alemão) em http://linuxunddich.de.

4Linux abre vagas para Líder Técnico em São Paulo e Brasília


Por


Seminário sobre gestão de privilégios do Linux dá direito a certificado CPE


Por


Novas vagas para os minicursos do WikiLab


Por


Novo evento “Universidade Livre” será realizado em Belém/PA em 06/05/2017


Por


Soluti Certificação Digital em busca de especialista Linux


Por


Vaga para analista de TI com experiência em ECM/GED, BPM e BI


Por


Nova versão do Scalix Groupware oferece suporte completo a IBM Power & IBM Mainframes


Por


Software Livre e de Código Aberto: uma questão de economia, não de política


Por


Lançamento: E-book E-mail e Colaboração no Século XXI (grátis)


Por


Technology Report – E-mail e Colaboração no Século XXI


Por


Oportunidade na 4Linux - Vaga para Brasília


Por


Lançamento: E-book 101 dicas para usar o Linux como um Profissional (grátis)


Por


Sicoob adota soluções de código aberto e triplica rede de associados


Por


BrodTec é a nova revenda Scalix na Região Sul


Por


Linux Professional Institute anuncia seu novo Diretor de Desenvolvimento Regional para o Brasil


Por


ASL.Org lança campanha de doação para realizar o FISL17


Por


EMC² acelera mudança para código aberto


Por


Red Hat lança promoção especial de verão para treinamentos virtuais


Por


A produção colaborativa precisa de menos tecnologia e mais gente


Por


Publicada entrevista com Edgar Silva, VP da WSO2 para a América Latina


Por


Seu Linux pode ser infectado por malware, trojans, worms e web scripts


Por


Entrevista com Edgar Silva, VP da WSO2 para a América Latina


Por


Futuro Digital, The Open Organization e oportunidades da TI Bimodal no Red Hat Forum em SP


Por


MP denuncia Cartorio Virtual por venda de dados sigilosos, inclusive do WhatsApp


Por


Lançado novo Portal do Software Público Brasileiro


Por


Desemprego seletivo


Por


Red Hat reúne líderes de tecnologia do Nordeste para ampliar negócios na região


Por


Estudantes de SP começam a aprender Internet das Coisas com kit Android da Samsung


Por


FIA e Cloudera fecham parceria para ensinar ‘hadoop’


Por


DevOps: Uma prática ainda pouco explorada no Brasil


Por


Wearables são a nova ‘onda’ dos desenvolvedores de apps


Por


Google lança novo visual e revela história do logotipo do buscador


Por


Dilma estuda a fusão do Serpro com a Dataprev


Por


IoT e big data ‘quebram’ as paredes das salas de aulas


Por


As novidades do Android 6.0 Marshmallow


Por


LPI e SUSE reforçam parceria para certificação profissional Linux no Brasil


Por


Data center abre 40 vagas em São Paulo, Tamboré e Rio de Janeiro


Por


Vale-Refeição será obrigatório nas empresas de TI em São Paulo


Por


Os 5 melhores sistemas de chat open source para atendimento ao cliente


Por


Maior supercomputador da América Latina é instalado no Rio de Janeiro


Por


Falha em sistema da Chrysler deixa mais de 470 mil carros vulneráveis a hackers


Por


Cibercriminosos brasileiros usam Trojan para dar golpe com WhatsApp


Por


Vulnerabilidades fazem Mozilla bloquear de vez o uso do Flash


Por


Supercomputador já é usado para megaprojetos de análise de dados em SP


Por


Cisco compra OpenDNS por US$ 635 milhões


Por


Microsoft pode abandonar Windows Phone para apostar no Android


Por


Morre Matti Makkonen, o pai do SMS


Por


Velocidade da internet cresce 13% no 1º trimestre


Por


Quer trabalhar em TI? Saiba quais são os salários médios


Por


Minicom rascunha Lei de Universalização da Banda Larga em regime público


Por


Uma CEO mulher assume o comando da Microsoft Brasil


Por


CPqD terá de aceitar mudanças para não fechar as portas


Por


Facebook monta estratégia para quebrar resistência das teles ao Internet.org


Por


Tráfego em IPv6 chega a 2% no Brasil


Por


WhatsApp chega à justiça trabalhista no Brasil


Por


LM 119 | Backup e Restauração


Por


É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Linha Assembly

“maddog” analisa alguns esforços da Linaro para aprimorar o desempenho do GNU/​Linux em arquiteturas ARM.


Por Jon “maddog” Hall


Nos últimos meses, tenho trabalhado com o Linaro [1], uma associação de empresas que desejam ter o GNU/Linux trabalhando bem em arquiteturas ARM. Embora a ARM Holdings desenhe os chips de arquitetura ARM, várias outras empresas fabricam as CPUs, GPUs e SoCs (Systems on a Chip) de projetos licenciados da ARM. Algumas dessas empresas utilizam essas unidades fabricadas em seus próprios produtos, e algumas comercializam as unidades fabricadas para outras empresas e para o público em geral. Nos últimos anos, a ARM vem trabalhando em um chip de 64 bits, e suas licenças estão próximas de ter o hardware ARM de 64 bits pronto.


Um dos engenheiros da ARM determinou que 1400 módulos de código fonte diferentes em qualquer Ubuntu ou Fedora (ou ambos) possuem linguagem Assembly no código. Isso não quer dizer que a linguagem Assembly (ou a falta dela) irá interromper o módulo de trabalhar no sistema ARM64, pois pode haver código fallback em nível mais elevado (por exemplo, código escrito em C) que tomará a frente e será compilado para a linguagem Assembly ausente no ARM64. No entanto, os módulos não foram testados e verificados nem no hardware atual, ou sobre os emuladores para a arquitetura ARM64 existente atualmente. Assim, a Linaro decidiu recorrer à comunidade para portar alguns desses módulos e criou um concurso com prêmios para as pessoas dispostas a ajudar na causa [2].


Os engenheiros também notaram que uma grande parte do código que contém linguagem Assembly era bastante antigo. Foi projetado em uma era em que os sistemas tinham uma CPU única; as CPUs eram muito mais lentas, com um único core; a memória foi medida em megabytes, não em gigabytes; A Ethernet era 10Mbps, não 1,000Mbps; e os compiladores GNU não foram tão bons em otimização como compiladores comerciais. Portanto, as pessoas escreviam assembler para as partes mais rápidas e “enxutas” do sistema. Se esses programas fossem escritos hoje, no entanto, eles poderiam ter menos linguagem Assembly, e o código seria mais portável. Assim, o concurso foi ampliado para incluir a melhoria do desempenho destes módulos e (talvez) eliminar algumas palavras da linguagem Assembly antiga onde fazia sentido.


Sistemas embarcados exemplificam como a nossa perspectiva de “desempenho” mudou ao longo do tempo, na medida em que o tamanho do espaço de memória é muitas vezes uma medida de desempenho, com uma pequena economia de recursos proporcionando uma economia no processo de fabricação. A bateria de longa duração, desenvolvida ao permitir que partes do sistema possam ser desligados após a conclusão do aplicativo, também representa uma melhoria no desempenho. Em grandes fazendas de servidores, o desempenho é frequentemente medido em economia de energia eléctrica, de cooling ou na redução de compras de equipamentos e espaço físico.


Nos primeiros anos da minha carreira como programador, meu trabalho não era escrever um novo recurso, mas fazer com que programas desenvolvidos por outras pessoas funcionassem “melhor”. Meu gerente me disse que se eu não conseguisse fazer com que o aplicativo trabalhasse na metade do tempo, era para não me preocupar com isso. Em quase todos os casos, eu poderia fazer um aplicativo executar não só pela metade do tempo, mas muitas vezes de cinco a 10 vezes mais rápido. Foi um trabalho muito gratificante, por isso tem sido interessante começar a investigar novas técnicas para perfis de código, encontrar problemas de desempenho, e buscar novas melhorias e eficiências que podem ser feitas desde que concluí esse trabalho, há 30 anos.


Ao mesmo tempo, tenho trabalhado com alguns sistemas muito pequenos que possuem algumas características muito interessantes. O uso de GPUs para computação, chips de processamento de sinal digital, e field-programmable gate arrays (FPGA) eram todos conceituais anos atrás, mas eram proibitivos em custo e espaço. Estes conceitos tornaram-se agora não só viáveis, mas até competitivos em preço/desempenho com outros tipos mais “mainstream” de circuitos. Uma placa de uma empresa chamada Adapteva não só inclui um SoC com um processador ARM de dois core, FPGA, e chips de processamento de sinais digitais, mas também uma CPU de 16 ou 64 core. Tudo isso, além de alguma memória de sistema e portas USB, vem em uma placa com faixa de preço entre 100-150 dólares [3]. A oportunidade de aprender sobre essas arquiteturas se tornou realidade na prática.


Recentemente algumas pessoas atraíram muita atenção com a construção de um “supercomputador” desenvolvido a partir de um Pi Raspberry, um sistema single-core não convidativo para o tipo de programação que pode ocorrer em um sistema HPC real. Em um sistema HPC, cada placa pode ter várias CPUs ou vários cores em um único processador e usar o OpenMP em conjunto com o MPI e outros ambientes de computação heterogêneos. Substituir computadores, como o Banana Pi [4] ou o ODROID-U3 [5], criaria um desempenho de “supercomputador” com um aumento razoável no preço, e garantiria um mix mais realista de estilos de programação. Eu incentivo os leitores, portanto, a se inscreverem para o concurso da Linaro e ajudar o GNU/Linux a ser o melhor que pode ser.


Mais informações


[1] Linaro: http://​­linaro.​­org [2] Linaro Performance Challenge: http://​­performance.​­linaro.​­org [3] Parallela: http://​­www.​­adapteva.​­com/​­parallella/ [4] Banana Pi: www.​­banana‐pi.​­org [5] ODROID-U3: http://​­hardkernel.​­com/​­main/​­products/​­prdt_info.​­php


O autor

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Lançamento decisivo

A solução de gerenciamento de sistemas Red Hat Satellite oferece uma incrível variedade de capacidades, mas não está completamente pronta para ser lançada ao público.


Por Martin Loschwitz, Markus Feilner e Joe Casad


Um ambiente típico da atualidade, que compreende dezenas ou mesmo centenas de computadores, teria sido praticamente impossível de gerenciar com as ferramentas on-board do passado. Felizmente, modernas instalações de TI suportam níveis mais elevados de automação. Como todos os fornecedores de sistemas reconhecem esse fato, SUSE, Canonical e Red Hat possuem soluções de gerenciamento de rede concorrentes no mercado. A Red Hat, líder de mercado Linux, recentemente lançou a versão 6 da ferramenta de servidor de gerenciamento Satellite [1].


O Satellite consiste de vários componentes modulares integrados a uma interface web unificada. Alguns componentes importantes incluem:


Módulo de gerenciamento – Gerencia sistemas. Inicia e interrompe serviços e máquinas virtuais. Atribuir e alterar permissões. Encontrar sistemas que atendam a critérios de busca. É possível sistemas de grupos de acordo com o uso, tornando possível gerenciar vários servidores como se fossem um só.


Módulo de provisionamento – implementa, configura e atualiza sistemas bare-metal e máquinas virtuais. Gerencia arquivos de configuração. Provisão de aplicativos baseados em RPM.


Módulo de monitoramento – Monitora o uso de recursos, otimiza o desempenho, configura notificações e gera relatórios. Como o leitor aprenderá mais adiante neste artigo, o Satellite recebe ajuda dos bastidores de várias outras ferramentas de gerenciamento de código aberto, como o popular Puppet.


O Satellite é o verdadeiro “pé na porta” da Red Hat no mercado de gerenciamento de servidores. O servidor Satellite fornece recursos que permitem aos administradores gerenciar grandes redes e hardware adicionais de uma forma significativa e conveniente. O Satellite 6 é uma extensão para a Red Hat Enterprise Linux. Os administradores podem escolher se desejam usar o RHEL 6 ou RHEL 7. Se o usuário estiver instalando um novo servidor Satellite, provavelmente escolherá o RHEL 7, porque oferece o software mais recente e é suportado por um longo período de tempo. Se o servidor estiver em execução no RHEL 7, o usuário ainda pode usar os clientes RHEL 6 com o servidor.


Nossas tentativas de experimentar a versão mais recente do Satellite encontraram algumas complicações iniciais (quadro 1), mas colocamos o sistema em execução e descobrimos que, apesar do satélite ainda não ter chegado exatamente em órbita, oferece algumas melhorias significativas em relação às versões anteriores.


Configuração


A Red Hat oferece várias maneiras de obter o Satellite como um programa, incluindo o DVD. O DVD inclui um script que pode ser executado em uma versão do RHEL 6.6 ou RHEL 7 que converte o sistema RHEL em um servidor Satellite. A instalação não foi fácil em nossos testes. O script que utilizamos para esta revisão não executou em nosso sistema. O fornecedor está ciente do problema [2] e, de acordo com a Red Hat [3], uma nova versão está disponível através do portal do cliente Red Hat. Instalar todos os pacotes no servidor Satellite através do repositório correspondente e do gerenciador de pacotes RHEL faz mais sentido, de qualquer maneira. Se o usuário comprar uma licença Satellite pela Red Hat, receberá automaticamente as informações do repositório e, com alguma sorte, poderá implementar o Satellite 6 através do menu dropdown.


Instalar através do Red Hat poupa um encontro dos dois scripts destinados a levar a uma instalação Satellite em execução ao final do dia (figuras 1 e 2). Quando fizemos a primeira tentativa de instalar, o script katello‐install falhou tão miseravelmente que a única saída foi reinstalar o sistema.


A tentativa número dois funcionou após executar o script várias vezes, mas os erros apresentados no processo eram tudo, menos intuitivo. Finalmente, tivemos uma completa instância Satellite 6 pronta para o teste (figura 3). A Red Hat definitivamente precisa melhorar a instalação e oferecer uma opção para usar uma guia de interface gráfica do usuário para instalar o Satellite a partir de um CD ou DVD.


Uma pequena história


Até agora, a Red Hat tem usado seu próprio desenvolvimento, o Spacewalk, em seus produtos Satellite. A Red Hat inventou o Spacewalk em um momento em que não havia nenhuma conversa sobre ferramentas de gerenciamento de sistema em código aberto alternativo, como o Puppet. As primeiras versões surgiram em sistemas Red Hat já em 2001. Nos primeiros dias, o Spacewalk trouxe a mesma experiência para redes corporativas que a Red Hat oferecia através da sua rede oficial. O recursos incluíam uma ampla gama de funções altamente práticas, como servidores locais de espelho para atualizações RPM, que todos os servidores locais podem, então, instalar sem desnecessariamente monopolizar o cabo. Com o tempo, os desenvolvedores expandiram o Spacewalk, acrescentando funções como gerenciamento de licenças para sistemas individuais ou instalação do pacote centralizado a um toque do mouse.


Com o surgimento do Puppet, Chef, Ansible e outras soluções semelhantes, o Spacewalk parece cada vez mais obsoleto. A Red Hat está começando a resolver a situação com o Satellite 6, que oferece uma gama significativamente maior de funções que o Spacewalk. Ao mesmo tempo, a Red Hat é pressionada pelo tempo: o SUSE [4] e o MaaS (Metal as a Service) [5], em conjunto com o programa Landscape, da Canonical, estão conquistando o segmento de mercado do Satellite. A combinação de conversão radical e pressão de tempo é, portanto, bastante explosiva. Um problema com o lançamento levaria a um verdadeiro caos real na Red Hat.


Componentes


O Satellite 6 é um “sistema abrangente de gerenciamento do ciclo de vida”, de acordo com a Red Hat. A solução Satellite se baseia em componentes bem conhecidos, tais como Puppet, Foreman e Git. Os administradores podem gerenciar o servidor no Satellite após a instalação de uma máquina no rack. As atualizações, em geral, são instaladas automaticamente – afinal de contas, servidores virtuais apenas criam sobrecarga extra que o Satellite descarrega imediatamente. O Puppet está escondido na implementação; se os administradores preferem não usá-lo, eles não precisam. O Satellite também oferece a possibilidade dos administradores usarem uma gama completa de recursos do Puppet: a variante Puppet instalada no Satellite 6 está diretamente ligada ao Puppet Forge em segundo plano, e qualquer um que queira usar seus próprios módulos pode integrá-los: o Git também faz parte do pacote de Satellite 6, o que significa que o usuário pode conferir os arquivos a partir de repositórios remotos.


Red Hat Enterprise Linux deve ser instalado em novas caixas de satélite porque utiliza exclusivamente Red Hat como sistema convidado (Cloud VMs na Amazon, ou dentro dos limites da nuvem OpenStack, são suportados, mas mais tarde). Em comparação com o Puppet, o Foreman [6] é um classificador de nó externo (ENC). O Foreman constrói sobre o Puppet, mas só usa o Puppet como uma ferramenta e adiciona suas próprias funções. Por exemplo, o Foreman vem com um instalador PXE. O administrador cria o host, incluindo um endereço MAC, e garante que o servidor procure por imagens de boot usando PXE. O Foreman, posteriormente, fornece a imagem correta e, em combinação com arquivos do Kickstart, oferece um servidor RHEL em seu hardware.


Em seguida, o manifesto do Puppet garante que o servidor contém o software e a configuração que o administrador deseja ter. O Satellite 6 não faz, aliás, nada diferente da interface gráfica do Foreman; em vez disso, ele integra o Foreman para a exibição de conteúdo. A dupla Puppet e Foreman causou uma boa impressão em nosso laboratório; agora que a Red Hat se baseia em componentes padrão, novas possibilidades estão abertas para o administrador. O Satellite 6, sintonizado com módulos adicionais para o Puppet, ultrapassa drasticamente a capacidade de quaisquer hacks Spacewalk do passado em termos de recurso e conforto. O Satellite 6 também vem com um serviço destinado a suportar descobertas: o recurso Discovery varre automaticamente a rede em busca de hosts que ainda não conhece. Com base nas várias configurações, o administrador pode, então, decidir se deseja adicionar outros sistemas de gerenciamento do Satellite e, em caso afirmativo, como configurá-los.


Katello


A Red Hat desenvolveu um aplicativo chamado Katello [7], que expande o Foreman, adicionando recursos de gerenciamento de ciclo de vida. O Katello, na verdade, envolve-se com o Puppet e o Foreman como um framework de gerenciamento e adiciona uma cornucópia de recursos significativos. O gerenciamento de conteúdo é um exemplo de um recurso que funciona bem com Katello. No workflow do Katello, conteúdo significa tanto módulos Puppet como pacotes RPM. O Satellite oferece a capacidade de armazenar RPMs específicos em sistemas locais. Com a criação de repositórios, os administradores asseguram que os clientes tomem pacotes RPM do servidor Satellite e não a partir da Internet. Se o usuário possui pacotes RPM locais (ou seja, auto-compilados), poderá criar os repositórios no Katello e fazer o dump em seus servidores gerenciados. Em segundo plano, o Katello usa o Pulp [8], que cuida de toda a infraestrutura para repositórios Yum.


Capsules


O Capsules é outro exemplo impressionante do escopo de recursos do Katello: o servidor Capsule, que faz parte do Katello (figura 4), cria um pacote pré-compilado com DHCP, Bind, Puppet e outros serviços, que o usuário pode então instalar em um ambiente Katello virtual ao clicar um botão. Muitos servidores Capsule podem pertencer a uma única instância Satellite, e podem ser executados em hardwares diferentes. Se o usuário contar com esse tipo de estrutura, os servidores Puppet individuais chamam o Capsule, que por sua vez recebe a configuração diretamente do Satellite.


Ao mesmo tempo, o Katello pode facilmente gerenciar vários ambientes virtuais. A Red Hat reconhece que ambientes heterogêneos existem. Se o usuário operar várias configurações em seu centro de dados, poderá gerenciá-los significativamente em diferentes ambientes no Katello. O Katello se apoia no Pulp para garantir que os espelhos locais dos repositórios mais frequentemente utilizados para pacotes RPM sejam criados em uma instalação Satellite.


Suporte na nuvem


O Satellite 6 permite iniciar máquinas virtuais em ambientes de nuvem, incluindo o OpenStack e o EC2 da Amazon. Ao clicar em um botão, o Satellite 6 proverá servidores virtuais que executam tanto em uma nuvem pública como em um servidor local. Praticamente todos os aparelhos da Red Hat são baseados em RHEL, assim, é possível configurá-los e usá-los a partir do Satellite. Por exemplo, se o usuário operar um produto Red Hat correspondente em uma nuvem OpenStack, pode gerenciá-lo em seu servidor Satellite. No painel do Satellite (figura 5), é possível definir sistemas operacionais adicionais na seção sistema operacional. O Katello suporte detalhes específicos de distribuição, tais como configurações pré-seed para sistemas que instalados pelo instalador Debian ou configurações Kickstart para os recursos compatíveis com o RHEL (figura 6).


Gerenciamento de assinaturas com o Candlepin


A Red Hat usa chaves para atribuir uma instalação RHEL a um usuário dentro do portal do cliente Red Hat. Se o usuário quiser usar o RHEL com a opção de atualizações online, precisará de pelo menos uma assinatura básica. Embora o nível de assinatura básica não forneça suporte, ainda é bom para muitos casos de uso. Se operar um pool de servidores RHEL, como será o caso com uma instalação Satellite mais cedo ou mais tarde, terá o mesmo problema, porém multiplicado muitas vezes. O Satellite, assim, oferece aos administradores a capacidade de deixá-lo lidar com as assinaturas. O software Candlepin conecta-se ao portal do cliente Red Hat para checar as licenças disponíveis para uma conta específica.


O Candlepin no Katello prepara automaticamente os clientes a partir de uma instalação Satellite com licenças do pool de licenças. Graças à guia de interface do usuário Candlepin no Satellite, os administradores têm acesso completo a funções de gerenciamento relacionadas com as assinaturas; por exemplo, se o usuário substituir uma instalação RHEL por outra, pode usar a guia de interface do Candlepin para transferir a chave de licença do computador anterior para um novo.


Conclusão


A Red Hat fez um bom ajuste no Satellite 6. O produto tem passado por novas bases e agora conta com ferramentas padrão, tais como Puppet ou Git. A reformulação radical implica alguns riscos, e a Red Hat não obteve êxito trabalhando em torno de todas as questões. As notas para a versão 6.0 do Satellite, por exemplo, inclui várias erratas com uma lista de problemas conhecidos. A rotina de instalação, que é extremamente rústica – pelo menos na variante standalone do Satellite – não fornece o sentimento “profissional” que estamos acostumados a esperar das iniciativas da Red Hat. Os desenvolvedores em Raleigh precisarão propor uma série de melhorias no futuro se não quiserem assustar os clientes. No entanto, uma vez que o usuário encontre o caminho da instalação, o produto impressiona de muitas maneiras diferentes. O usuário pode acompanhar a reformulação radical no software porque a interface web parece diferente da antecessora. Isto posto, o novo Satellite não parece um canteiro de obras.


O escopo de recursos do Satellite é impressionante: a equipe do Puppet e do Git, suplementada pelo Katello e seus componentes Capsule e Candlepin, significa que o novo Satellite é muito mais versátil do que as versões anteriores. O Satellite também se integra perfeitamente com outros produtos contemporâneos da Red Hat: por exemplo, se executarmos uma nuvem OpenStack no Red Hat, podemos integrar perfeitamente os nós com o Satellite. Deste modo, o Satellite 6 é uma poderosa alternativa ao MaaS, Juju e ao SUSE Manager.


A Red Hat cobra algo em torno de 5 mil dólares por ano para até 50 máquinas clientes Satellite virtuais ou físicas (os preços europeus estão em uma faixa similar). A variante Unlimited (Ilimitada) custará cerca de duas vezes esse preço. Uma coisa que pode causar problemas para uma análise de custos é o pacote de extensão obrigatório chamado Smart Management, que está disponível a partir de aproximadamente 200 dólares, mas rapidamente pode chegar a quase 600 dólares, dependendo da configuração. No momento do fechamento desta edição, cópias de avaliação estavam disponíveis apenas para equipes de vendas. Clique no botão disponível no portal do cliente Red Hat para baixá-las [9].


Mais informações


[1] Red Hat Satellite 6.0: https://​­access.​­redhat.​­com/​­products/​red‐hat‐satellite [2] Descrição de bug no Bugzilla da Red Hat: https://​­bugzilla.​­redhat.​­com/​­show_bug.​­cgi?​­id=1139894 [3] Confirmação da correção: https://​­access.​­redhat.​­com/​­solutions/​1194163 [4] SUSE Manager: https://​­www.​­suse.​­com/​­products/​suse‐manager/ [5] MaaS: https://​­maas.​­ubuntu.​­com [6] Foreman: http://​­theforeman.​­org [7] Katello: http://​­www.​­katello.​­org [8] Pulp: http://​­www.​­pulpproject.​­org


Figura 1 A instalação do Satellite 6 no RHEL 7 é uma experiência frustrante se o usuário tentar usar o script Shell no DVD.


Sem


Figura 2 um patch, nada funcionou com o CD que conseguimos obter, mas a Red Hat afirma ter corrigido o problema. Figura 3 Sucesso: Após a instalação do Satellite, o frontend aparece em um navegador web. Figura 4 A Red Hat tem senso de humor: embora o servidor Capsule escute na porta 9090, ao tentarmos falar com ele, obtemos um mini “how-to”.


Na


Figura 5 seção Operating System do painel, é possível criarmos uma variedade de sistemas operacionais – incluindo o Debian. Figura 6 O Satellite exibe quantos hosts pertencem a cada sistema operacional.


 


Quadro 1: Marketing esquisito


Muitos eventos incomuns surgiram quando o Satellite 6 seguiu para testes. A primeira curiosidade ocorreu antes do produto chegar à redação da Linux Magazine. Embora a Red Hat tenha começado a enviar email marketing semanas atrás, rufando os tambores para o Satellite 6, fomos bruscamente avisados que uma versão de teste para a imprensa não estava disponível no momento. Isso significava que eles queriam que comprássemos o produto apenas para testá-lo? Não é impossível, porém bastante incomum. Finalmente, um membro de nossa equipe editorial conseguiu colocar as mãos em um par de imagens ISO, através de seus contatos na indústria, e parece que a Red Hat tomou nota: logo após o fechamento desta edição, a Red Hat (ciente de que não poderia segurar a imprensa) finalmente concordou em fazer um teste. Por que a Red Hat agiu de forma tão estranha? Por acaso a empresa encontrou erros perigosos nos betas da nova versão que queriam resolver antes de um teste? É difícil adivinhar as razões pelas quais a Red Hat recusou um teste, mas os resultados do nosso laboratório sugerem que o Satellite 6 possui alguns esqueletos no armário de engenharia. Nós também descobrimos que alguns formadores em sessões da Red Hat advertem sobre o produto e aconselham as pessoas a aguardar pela versão 6.1.


O autor

Martin Gerhard Loschwitz trabalha como consultor senior para a hastexo, onde especializou-se em soluções de alta-disponibilidade, ao mesmo tempo em que é o mantenedor da pilha de cluster para o Debian GNU/Linux no seu tempo livre.

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Permissão de escrita


Por Flávia Jobstraibizer


SELinux


Pessoal da Linux Magazine, foi implantado o SELinux na rede da empresa onde trabalho e eu gostaria de alguma explicação amigável sobre o funcionamento da distribuição. Poderiam me ajudar?


Nichollas P - Santa Maria -RS


Resposta


Nichollas, o SELinux é um ambiente seguro e bastante completo e para quem deseja uma explicação bastante amigável, recomendamos esta, do blog Caminhando Livre: https://caminhandolivre.wordpress.com/2013/01/04/introducao-ao-selinux/


Linux em português de Portugal?


Caros, sou assinante da Linux Magazine Brasil aqui em Portugal, já que ela é a única revista no idioma português por estas bandas. Gostaria de saber quais as distribuições Linux que foram feitas exclusivamente em português de Portugal, mais a título de curiosidade do que outra coisa, já que utilizo o Ubuntu padrão com pacote de linguagem pt. Muito grato!


Manul B - Viseu - Portugal


Resposta


Caro Manuel, mandamos um abraço para você, aqui de seus irmãos brasileiros, agradecemos a preferência! Temos algumas excelente distribuições Linux criadas em Portugal, sendo a mais famosa delas, o Caixa Mágica (http://www.caixamagica.pt). Temos ainda o Linius 2006 (http://www.linius.pt) que foi criado pelo Ministério da Justiça de Portugal para fins próprios mas que está disponível para uso por usuários domésticos. Existem ainda o Alinex (http://www.alinex.org), o Paipix e o OpenXange (http://sourceforge.net/projects/xange/). Não sabemos até quando ou se as distribuições estarão ativas no momento da leitura desse artigo, no entanto colaborações com outras versões conhecidas por aí podem nos ser de grande ajuda.

Flávia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) é gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietárias. Atualmente é editora-chefe das revistas Linux Magazine e Admin Magazine.

Canivete suíco

Existe um verdadeiro arsenal em ferramentas úteis para garantir o bom funcionamento da sua rede e seus sistemas. Torne-os seus aliados!


Por Flávia Jobstraibizer


É muito raro, nos dias de hoje, não encontrar alguma ferramenta para determinada finalidade. Há justamente o oposto nesta situação: muitas, variadas e diversas ferramentas que muitas vezes executam as mesmas tarefas, muitas vezes apenas de uma forma diferente.


Este tão vasto arsenal faz com que o administrador de redes e sistemas fique tranquilo quanto à integridade de seu ambiente. Assim como o analista de segurança não corre o risco de ter a cabeça cortada em uma pane qualquer do ambiente corporativo.


Nesta edição da Linux Magazine, você vai conhecer diversas ferramentas para realização de cópias e backups de segurança, assim como formas das mais variadas para a recuperação destes dados, afinal de contas é sempre bom lembrar quea recuperação perfeita dos dados é tão ou mais importante do que as cópias criadas. Imagine ter backups e não conseguir restaurá-los por problemas de integridade ou outros?


Aproveitando esta edição tão importante para todos os profissionais de TI, trazemos também um interessante tutorial sobre como utilizar dados e coordenadas GPS em seus sistemas. Conheça ainda o QubeOS, um novo sistema operacional seguro que promete ser tão ou mais seguro do que o OpenBSD.


E como nunca podemos deixar de fora o convívio amigável com sistemas diversos, aprenda como emular o Windows 8 em seu ambiente Linux com VMWare e VirtualBox.


Boa leitura!

Flávia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) é gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietárias. Atualmente é editora-chefe das revistas Linux Magazine e Admin Magazine.

Preview


Por Flávia Jobstraibizer


Na Linux Magazine 120...


WLAN Segura


Na próxima edição da Linux Magazine, conheça formas dinâmicas e modernas de analisar e verificar sua WLAN para torná-la mais segura! Conheça ainda formas de monitorar o SQL de sua rede em busca de injeções SQL. Conheça o SelekTor, uma ferramenta alternativa para navegação anônima e que utiliza a rede Tor para garantir a camada de segurança. Esses e outros artigos tornam a próxima edição imperdível!


Não perca!

Flávia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) é gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietárias. Atualmente é editora-chefe das revistas Linux Magazine e Admin Magazine.

Vida londa ao Raspberry Pi

O futuro do Raspberri Pi e as novas tecnologias similares que chegam ao mercado.


Por Augusto Campos


Lembra de quando o Raspberry Pi foi anunciado, e o preço dele, de US$ 25, parecia inacreditável? Parece que foi na década passada, mas foi há 3 anos, em 2012. Desde então vários modelos se sucederam, mas os preços originais (duas faixas: US$ 25 e US$ 35) foram mantidos.

Uma parte do encanto do Pi é que ele pode ser comprado com facilidade – mesmo com o escorchante Custo Brasil, permanece barato – e oferece para muita gente a oportunidade de trabalhar com hardware da categoria 'embarcados', porque tem capacidade e compatibilidade suficientes para permitir a instalação de um desktop tradicional com Linux – fora a possibilidade de instalar várias distribuições dedicadas a transformá-lo numa central multimídia, um videogame retrô, um servidor dos mais variados protocolos, ou mesmo um nó de supercomputação.

Mais de 5 milhões já foram vendidos, e é de se considerar que uma parte considerável deles contribuiu para o propósito original do projeto, que é oferecer uma plataforma acessível e estimulante para o aprendizado da programação, fazendo uso de uma variedade de tecnologias open source, em especial o Linux e o Python.

O Pi não parou ainda, e recentemente anunciou e colocou à venda uma nova geração, mantendo o mesmo preço mas revolucionando a sua capacidade de processamento, a ponto de até mesmo ser cedo demais para tentar antecipar que projetos fantásticos veremos com ele nos próximos meses e anos.

Mas esse tipo de iniciativa vem em ondas, e no momento em que escrevo estamos vivendo mais um dos grandes sucessos do financiamento coletivo do Kickstarter: o projeto CHIP, que pediu US$ 50.000 para se viabilizar, já arrecadou um milhão e meio de dólares, e ainda não chegou na metade das 4 semanas de duração da campanha.

O CHIP tem muitas similaridades com o Rasberry Pi: é um computador em forma de placa, que pode ser usado como desktop bastando conectar a ele um teclado e mouse, e um monitor. Seu processador de 1GHz também tem capacidade suficiente para rodar aplicativos como o LibreOffice, VLC, Gimp ou o navegador Chromium, ou jogos, mas ele é fisicamente menor que o Raspberry Pi.

Devido à classe de hardware escolhida, o CHIP já vem nativamente com 2 recursos que o Pi recebe por meio de expansões via USB: o suporte a WiFi e a Bluetooth. A saída de vídeo nativa é de vídeo composto (conector coaxial amarelo), mas tanto VGA quanto HDMI são suportados por meio de adaptadores simples.

Ele já nasce com um acessório opcional interessante (cuja praticidade ainda precisa ser demonstrada): um periférico com tela, teclado e bateria, que lembra muito o antigo Palm Treo, no qual você pode plugar o CHIP e transformá-lo em uma estação de trabalho de bolso.

Mas a praticidade do CHIP para o pessoal do movimento Maker não precisa de comprovação adicional: ele pode operar por horas com uma pequena bateria, tem acesso pleno a pinos de GPIO, e já nasce com conectividade e capacidade de processamento.

Em outras palavras: o Raspberry Pi continua lindo, mas já começa a ter candidatos a sucedê-lo tanto na esfera da capacidade, quanto na do preço. Longa vida a ambos!

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.

Raspberry Pi destrava Playstation 4


Por


Usuários ignoram riscos de ameaças móveis, diz pesquisa


Por


Lei de Acesso à Informação não ‘pegou’ no Brasil


Por


As armadilhas da nuvem: cuidado com a sua escolha


Por


Terceirização: Presidente do TST diz que do jeito que está, juízes terão ‘m


Por


Quase 30% dos usuários sabem nada sobre malware móvel


Por


Notícias gerais


Por Flávia Jobstraibizer


Twitter lança primeiro programa de estágios no Brasil


Com dois escritórios no país, em São Paulo e no Rio de Janeiro, o Twitter abre agora o seu primeiro programa de estágios no Brasil. As vagas serão divididas entre ambos escritórios. As inscrições podem ser feitas até o dia 5 de junho, e para participar é preciso estar no penúltimo ou último ano dos seguintes cursos: Administração, Relações Internacionais, Relações Públicas, Jornalismo, Marketing, Publicidade e Propaganda, Economia, Ciências Contábeis, Direito, Psicologia e Engenharias. Ter inglês fluente também é um pré-requisito. A bolsa auxílio é de R$ 1.800,00. Os benefícios incluem ainda vale refeição, vale transporte e academia.

"O Twitter é uma empresa que valoriza a livre troca de ideias e onde tudo acontece em tempo real. A essência da plataforma é aplicada também no dia a dia da empresa, e estamos em busca de jovens que sejam comprometidos com estes valores", comenta Francine Graci, gerente de aquisição de talentos do Twitter Brasil. O Twitter possui cerca de 3.900 funcionários em escritórios espalhados ao redor do mundo e mais de 302 milhões de usuários ativos mensais. Por dia, são enviados mais de 500 milhões de Tweets no mundo todo.

Com um escritório em São Paulo para apoiar diretamente parceiros locais e usuários, o Twitter lançou suas operações no Brasil em 2012. Em julho do ano passado, a empresa também abriu um escritório no Rio de Janeiro, dedicado à área de parcerias de mídia. São 62 funcionários entre os escritórios de São Paulo e Rio de Janeiro. Para mais informações, acesse www.ciadeestagios.com.br/twitter.


Inglês trava a contratação de desenvolvedores para apps no Brasil


O domínio de um segundo idioma e de amplo conhecimento técnico são dois tipos de habilidades profissionais cada vez mais raras no mercado de trabalho. Segundo um levantamento realizado pela empresas de recrutamento Page Personnel, encontrar profissionais com esse tipo de qualificação tem se tornado um desafio permanente para as empresas.

Para o gerente executivo da Page Personnel, Ricardo Ribas, profissionais que aliem amplo conhecimento técnico e bom nível comportamental são mais difíceis de serem encontrados no mercado. “É comum termos candidatos com bom domínio técnico ou de características comportamentais adequadas, mas com esse perfil completo já é um pouco mais raro”.

“Quem hoje domina um segundo idioma, preferencialmente o inglês, e ainda tem algumas competências que o mercado exige, como pro atividade, ambição na carreira, comprometimento e entender do negócio que atua, larga na frente por uma vaga.São pessoas com essas qualidades que as empresas sempre estão de olho”, explica. Na área de TI, o analista de desenvolvimento móvel é o que aparece na lista. Os salários variam entre R$ 6 mil e R$ 7 mil, mas faltam profissionais capacitados para as vagas abertas.


Sem regulamento, o conselho aos provedores Internet: guardem seus logs


Como proceder ao receber uma notificação da justiça para o fornecimento de dados é uma das preocupações que está afligindo aos provedores de internet do Brasil. Ainda há muitas dúvidas sobre quais registros devem ser fonrecidos e, principalmente, quais as circunstâncias para libera-los. Isto porque os artigos do Marco Civil da Internet sobre a guarda de logs citam o regulamento ao dar instruções sobre como agir.


“Há um terreno muito incerto. O cenário está confuso, por isto, é tão importante sair o regulamento”, afirmou Tais Gasparian, sócia na Rodrigues Barbosa, Mac Dowell de Figueiredo, Gasparian Advogados, em sua palestra durante a 1ª Conferência Abranet, que ocorreu dias 13 e 14 de maio em São Paulo. De qualquer maneira, a recomendação da advogada foi clara: guardem os registros.


O Marco Civil da Internet diz que cabe ao administrador do sistema autônomo o dever de manter, sob sigilo, em ambiente controlado e de segurança, os registros de conexão pelo prazo de um ano. Já o prazo para o provedor de aplicações para manter os registros de acesso a aplicações de Internet é de seis meses, também nos termos do regulamento.


A advogada lembrou que ainda não há jurisprudência ou decisões que consolidaram os entendimentos sobre o Marco Civil da Internet, uma vez que a lei tem apenas um ano e o judiciário é lento. O pedido de fornecimento de registros pode vir por meio de uma ordem judicial, requerimento policial ou requerimento administrativo.


“Precisa-se fazer distinção clara de quem está pedindo os dados, ou seja, prestar atenção de quem veio a ordem, quem fez o pedido e também tem de saber para quê é a ordem: fornecimento de dados cadastrais ou de dados sensíveis”, advertiu.


EMC cria projeto de código aberto e oferece downloads gratuitos


A EMC Corporation anuncia o lançamento do Projeto CoprHD (“copperhead”), uma versão de código aberto do EMC ViPR Controller englobando desenvolvimento aberto e um download gratuito “sem restrições” para uso não comercial do software ScaleIO. A EMC também deu uma visão prévia dos aprimoramentos no ScaleIO.


O mundo está passando por uma mudança sem precedentes que vem abalando as empresas – até mesmo as nascidas na era da Internet e dos negócios eletrônicos. Isso tem grande efeito nas expectativas dos consumidores, que contam com experiências digitais mais personalizadas e mais rápidas e com acesso ininterrupto em todos os dispositivos.


O software de código aberto da EMC está cada vez mais se tornando uma estratégia focal para que as organizações empresariais mantenham o controle de seus negócios e inovem com rapidez para responder às demandas dinâmicas do mercado.


As práticas de software de código aberto e de desenvolvimento aberto capacitam as organizações a evitar limitações de plataforma, a participar de projetos e a modificar software para atender às suas necessidades, desfrutando ao mesmo tempo dos benefícios e do acesso a uma comunidade de desenvolvedores com ideias afins. Os desenvolvedores de software comercial podem se beneficiar utilizando uma rede de parceiros de desenvolvimento para estimular a inovação voltada para a comunidade em suas plataformas atuais.


Terceirização: Presidente do TST diz que do jeito que está, juízes terão 'muita dor de cabeça'


O presidente do Tribunal Superior do Trabalho (TST), Antônio José de Barros Levenhagen, sustentou nesta segunda-feira, 18/05, que, se convertido em lei na forma como foi aprovado pela Câmara dos Deputados, o projeto que propõe novas regras para a terceirização aumentará o número de ações trabalhistas e, ao contrário do que tem sido dito por alguns de seus defensores, “não dará segurança jurídica às empresas”. Segundo ele, tudo indica que os juízes trabalhistas terão “muita dor de cabeça” com as lacunas abertas e com a falta de parâmetros e de detalhamentos do documento.

“Da forma como saiu da Câmara, [esse projeto de lei] tem muitas normas em branco. Não há parâmetro, por exemplo, sobre se poderá terceirizar na atividade-fim cerca de 30% [do quadro], ou se o empregado terceirizado não poderá receber salários inferiores a 80% do empregado efetivo. Como não trata desses aspectos de forma explícita, e como não há referências padrão, poderá eventualmente redundar em várias ações para questionar se, na atividade-fim, pode-se pensar em terceirizar 99% [do pessoal]. Convenhamos: isso seria um absurdo porque pode gerar uma insegurança jurídica maior do que a que temos hoje”, disse Levenhagen à Agência Brasil.

De acordo com o ministro, como não há parâmetros bem definidos, caberá ao magistrado decidir qual seria esse percentual. “Talvez um entenda que só possa terceirizar 40% do quadro; outro, 50%; outro, 90%. Outros entenderão que não pode haver uma discrepância de salário significativa. Há uma miríade [quantidade indeterminada] de possibilidades de discussões em ações judiciais. Por isso, nossa expectativa é que, aprovado o projeto na forma como foi aprovado na Câmara, tenhamos como resultado o incremento de demandas trabalhistas.”

Ao dar sua opinião pessoal sobre o assunto – deixando claro que, em parte, as explicações não representam a posição oficial do TST –, Levenhagen disse acreditar que, além de aumentar o número de ações trabalhistas, a regulamentação, da forma como está, tornará os processos mais lentos, uma vez que, em algumas situações, haverá mais etapas para a definição da responsabilidade pelo trabalhador. É o caso, por exemplo, da chamada quarteirização, situação em que, em função da necessidade de grande número de contratações, uma empresa terceirizada precise contratar outra empresa para dar conta da demanda. “Não posso me antecipar a alguma decisão, mas certamente veremos situações como essa, na medida em que as ações forem intentadas”, disse o ministro.

“No texto da Câmara, fala-se primeiro em subsidiariedade e depois em solidariedade. Penso que, como cabe à empresa contratante escolher a empresa contratada a partir dos requisitos da lei, ela já deveria responder solidariamente pelo não pagamento de verbas trabalhistas, seja na terceirização ou na quarteirização. E, depois, entrar com direito de regresso [direito de ser ressarcido de um prejuízo causado por terceiros] contra a empresa contratada, para prestigiar a dignidade do trabalhador”, acrescentou. O ministro afirmou que, caso contrário, será aberta mais uma etapa de discussões, primeiro, para analisar a subsidiariedade, a fim de saber se houve culpa. Só depois será invocado o critério da solidariedade, o que dará margem a um número ainda maior de ações trabalhistas.

Para o ministro, seguindo o critério da solidariedade, essa discussão não seria necessária, bastando apenas a constatação de que o contrato não foi cumprido. “Se culposo ou doloso, não importa: a empresa contratante já é chamada a responder pelo inadimplemento”, disse o magistrado. A Câmara dos Deputados concluiu em abril (22) a votação das emendas e destaques apresentados ao projeto de lei que regulamenta a terceirização na iniciativa privada e estabelece normas e critérios para a terceirização. A emenda manteve no texto-base a possibilidade de terceirizar a atividade-fim. Com a conclusão da votação das emendas e destaques que visavam a modificar o texto apresentado pelo relator, deputado Arthur Oliveira Maia (SDD-BA), e aprovado pelos deputados no início de abril. O projeto seguiu para o Senado.

Flávia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) é gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietárias. Atualmente é editora-chefe das revistas Linux Magazine e Admin Magazine.

Noticias corporate


Por Flávia Jobstraibizer


Roubo de dados assusta, mas executivos mudam o 'olhar' para o uso da nuvem


Estudo realizado pela KPMG Internacional revelou que quase 50% das empresas consultadas opta pela adesão à computação em nuvem principalmente pela diminuição de custos que a plataforma pode oferecer, mas muitos dos executivos já começam a ter um outro olhar para a plataforma. isto porque a maioria acredita que essa ferramenta gera dinamismo entre as relações das diversas interfaces que envolvem o cenário dos negócios.

A adesão à computação em nuvem ainda está fortemente associada à diminuição de custo que a plataforma pode oferecer, mas muitos executivos já começam a ter um outro olhar para a plataforma, revela estudo da KPMG Internacional. O levantamento, realizado com 500 executivos globais, incluindo o Brasil, aponta que quase 50% das empresas foram para a nuvem por conta da redução dos gastos. Mas há executivos que asseguram que adotar cloud também provoca transformações nas organizações.

Dentre as melhorias resultantes do uso da nuvem, 42% dos entrevistados acreditam que há melhoria em termos de flexibilidade e mobilidade para suas equipes de trabalho, e 37% vê uma melhoria no alinhamento e interação com clientes, fornecedores e parceiros comerciais. “Outros importantes fatores afirmam a efetividade da plataforma no que diz respeito à flexibilidade e mobilidade em suas empresas, visto que 54% entendem que houve aumento na produtividade de seus funcionários e 48% afirmam ter maior satisfação e flexibilidade em suas atividades após o início da utilização da nuvem na rotina organizacional”, afirma o diretor de consultoria de risco da KPMG no Brasil, Rodrigo Gonzalez.

Se comparado aos resultados obtidos em 2012, as expectativas dos executivos modificaram-se notavelmente. Na edição passada, apenas 15% via o uso da computação em nuvem como facilitador, no entanto, no último levantamento essa perspectiva triplicou, demonstrando que de fato os colaboradores já enxergam a plataforma como uma forma de propiciar flexibilidade e mobilidade para suas tarefas.

“Paralelamente, o alinhamento e a autonomia nas relações entre os funcionários, clientes, fornecedores e outras partes relacionadas têm ganhado a atenção dentro das organizações. A nuvem, portanto, está sendo utilizada para transformar essas interações à medida que o surgimento de clientes com conhecimento prático do mundo digital exige que as organizações adotem novas abordagens e ferramentas para comunicação com os atuais e potenciais clientes”, ressalta Gonzalez.

Segurança da informação

Na contramão dos inúmeros benefícios gerados pelo uso da nuvem, 53% dos respondentes da pesquisa encaram a perda de dados e os riscos à privacidade como o desafio mais significativo na realização de negócios, e 50% preocupam-se com o risco de roubo de propriedade intelectual. Ainda que com alto percentual, os resultados da atual pesquisa demonstram que o empresariado sente-se menos inseguro que em 2012, quando 83% acreditavam em risco de perdas de dados e de baixa privacidade e 78% preocupavam-se com roubo de propriedade intelectual.

“A segurança continua sendo um desafio complexo a ser enfrentado, mas os que adotaram a nuvem consideram que estão mais bem preparados agora para tornar seus dados seguros, assim como gerenciar violações quando elas ocorrerem. Os dados que nós obtivemos mostram uma clara tendência de que os líderes globais ainda estão dispostos a aderir ao potencial transformador da nuvem”, completa o diretor da KPMG.

A pesquisa coletou dados de um total de 539 respondentes do setor farmacêutico, de serviços financeiros, saúde e mídia. Todos os participantes eram diretores-financeiros, diretores-executivos ou diretores/líderes de TI nas respectivas empresas. Eram originários dos Estados Unidos, Canadá, Austrália, China, Índia, Japão, França, Alemanha, Reino Unido e Brasil. Para ter acesso ao estudo na íntegra acesse: http://www.kpmginfo.com/EnablingBusinessInTheCloud/downloads/7397-CloudSurvey-Rev1-5-15.pdf


 


Setor de TIC pode chegar a 10,7% do PIB em 2022


A participação do setor de tecnologia da informação e comunicações (TIC) no Produto Interno Bruto brasileiro deve saltar de 8,8% do PIB em 2013 para 10,7% em 2022. A expectativa foi apresentada pelo secretário Nacional de Políticas de Informática no Ministério da Ciência, Tecnologia e Inovação, Virgílio A. F. Almeida, durante a 1ª Conferência Abranet — Desafios e Oportunidades para as Empresas de Internet, realizada nesta quarta-feira, 13/05, em São Paulo.

A perspectiva é que, em 2022, as exportações de TIC alcancem R$ 12 bilhões. Com relação a mão de obra, de acordo com números mostrados por ele, em 2022, serão três milhões de empregados trabalhando em TIC, contra 1,5 milhão em 2013. “As tecnologias digitais são elementos-chave das modernas agendas econômicas, industriais e políticas”, ressaltou Almeida. “Em termos do crescimento econômico do País, é importante explorar a economia da Internet.”

Conforme pontuou o secretário, alcançar a soberania tecnológica e digital é fundamental e isto se dá por meio de ações de sociedade digital, competitividade digital, governo como plataforma e ações estruturantes. 


 


Internet rural é oportunidade para ISP, mas falta política pública


O provimento de acesso à Internet na área rural continua sendo um desafio, tanto pelas dificuldades técnicas, quanto econômicas. Além disto, para Eduardo Neger, da NEGER Telecom e diretor da Abranet, o Brasil ainda carece de uma política pública uniforme e que atenda ao País todo.


“Atender a usuários que estão dispersos sempre foi uma tarefa bastante complicada, principalmente, para as operadoras que trabalham com grandes escalas de clientes”, disse Neger, em entrevista, durante a 1ª Conferência Abranet, realizada em São Paulo nos dias 13 e 14 de maio.


Historicamente, a Internet rural ocorre via satélite, que é uma aplicação cara e que tem limites de desempenho; via celular e via rádio, este último que acaba sendo uma opção viável. Neger afirma que o que pode ser um problema para os usuários representa também uma oportunidade para os provedores locais, porque eles têm perfil de clientes que tem uma demanda forte para Internet em uma área onde a competição e a massificação é pequena. “É um nicho muito bom.”


Na entrevista em vídeo, Neger comentou ainda sobre  os desafios de se montar um provedor para atender as áreas rurais e sobre como pessoas têm comprado antenas para montar redes domésticas de telefonia celular a fim de conseguir sinal e obter acesso à Internet.


Mesmo sob "fogo amigo", Mazoni é mantido na presidência do Serpro


Depois de ter sido demitido pelo telefone, numa manobra pouco ortodoxa, mas usual desde o Governo Lula, o presidente do Serpro, Marcos Mazoni, foi mantido no cargo. Porém, não há disputa política que não deixe sequelas e Mazoni sabe disso, já que perdeu o controle absoluto sobre boa parte da diretoria da empresa.


Ele foi comunicado ontem, dia 14/05, de que permaneceria no comando da estatal, após passar uma semana tensa à espera de uma confirmação do seu nome pelo Palácio do Planalto, contra a indisposição do Ministério da Fazenda e a ajuda providencial do Ministério da Previdência, que tinha interesse em renovar a diretoria do Serpro para praticar mudanças profundas na estatal. A recondução, assim como toda a nova diretoria já foi publicada nesta sexta-feira, 15/05, no Diário Oficial da União.


Fogo amigo


O episódio da demissão de Marcos Mazoni e, agora da sua recondução ao cargo de presidente do Serpro, depois de oito anos comandando esta estatal, marcará ainda mais o estilo de convivência do PT com o poder. O chamado "fogo amigo" foi capaz de tudo nos últimos meses para prejudicar um histórico militante da própria legenda e abrir vaga para outro correligionário que não milita na mesma corrente dele.


Em Brasília já virou lenda a forma como o PT se tornou na maior oposição ao governo, pela maneira estabanada como correligionários se atracam publicamente ou nos bastidores pelos cargos federais, enquanto alguns dos setoriais do partido lutam pela convergência e unidade na escolha de nomes.


No caso de Mazoni, não faltaram ilações de todos os gêneros e a fabricação do envolvimento do Serpro em escândalos nacionais, com o objetivos claros de prejudicar um diretor que, pela longevidade no cargo deve estar incomodando demais alguns adversários dentro do PT com interesses não confessados publicamente pelo comando desta empresa.


Mazoni, por exemplo, chegou a ter seu nome lembrado, até na imprensa gaúcha, como suposto envolvido no escândalo da Operação Lava-jato. Simplesmente pelo fato do Serpro ter mantido um contrato com uma empresa de TI de um ex-deputado do PT, este sim, enrolado até o fio de cabelo nas investigações da Polícia Federal, ao ter sido pego supostamente praticando atos ilícitos com a sua empresa na Caixa Econômica Federal.


Não bastasse esse dissabor, o presidente do Serpro também teve de assistir poucos dias antes de ser demitido pelo telefone, o anúncio de uma intervenção no fundo de pensão dos funcionários da estatal, o SERPROS, que no balanço do ano passado apresentou lucro.


As coincidências que levaram Mazoni a ter sido demitido "preventivamente" - segundo a versão contada pelo Ministério da Fazenda no Palácio do Planalto, que quis saber os detalhes da rocambolesca história vazada pelo portal Convergência Digital -  são gritantes.


O fundo de Pensão SERPROS está sob intervenção desde o dia 5 de maio, depois do anúncio oficial no Diário Oficial da União. É evidente que um fundo de pensão sempre sofre auditorias, pois são elas que asseguram a boa gestão da entidade e garantem as aplicações feitas pelos funcionários. Mas uma intervenção é o prenúncio de que ali há má-gestão, desvios de qualquer natureza, que prejudicam em instância final o investidor.


Qual a natureza da intervenção no SERPROS? Até o presente momento ninguém sabe e estranha, já que um fundo superavitário foge aos padrões pelos quais o Ministério da Previdência autoriza a Previc - Superintendência Nacional de Previdência Complementar - a agir. Daí começam as coincidências que levaram à queda de Mazoni, agora aparentemente abortada pelo Palácio do Planalto, depois de concluir que o executivo estava sendo queimado politicamente, uma vez que do ponto de vista administrativo não há óbices à sua permanência.


O SERPROS tem dois planos de previdência complementar: O PS-I e o PS-II. No balanço da empresa, o PS-I apresentou um prejuízo em torno de R$ 58 milhões. A diretoria alega que mudanças feitas pela própria Previc no ano passado no cálculo atuarial acabaram por gerar esse prejuízo. O PS-II, entretanto, gerou lucratividade aos investidores. Se esta era a primeira razão da Previc para intervir, então ela é a responsável pela própria confusão.


Outra coincidência na intervenção do SERPROS: o interventor Walter de Carvalho Parente, nomeado pela Previc para exercer a função de administrador especial com poderes próprios, o que afasta toda a diretoria do fundo, é o mesmo nomeado pela secretaria para atuar na intervenção do fundo de pensão PETROS, dos funcionários da Petrobras, em paralelo às investigações da Operação Lava-Jato.


Aí a situação muda de figura. Então o SERPROS também estaria na Operação Lava-Jato? Até o presente momento não há uma única informação oficial da Polícia Federal à respeito, mas esta coincidência foi o suficiente para a oposição ao nome de Marcos Mazoni deduzir que sim ou deixar transparecer dentro dos bastidores do governo, que seria necessário "demití-lo previamente". 


Curioso em toda esta trapalhada política é que até agora somente a cabeça de Marcos Mazoni foi para o cesto e de lá acabou resgatada. A de quem armou a bagunça permanece firme sobre o corpo, apesar de toda a exposição pública.


O que está em jogo


Para tentar entender o que está em jogo, no meio de toda essa confusão, basta um olhar rápido na composição da nova diretoria e as possíveis mudanças que ocorrerão no comportamento do Serpro no mercado de TI governamental nos próximos anos. Essas mudanças talvez não ocorram na velocidade pretendida inicialmente pelo Ministério da Fazenda, já que não deu para retirar o opositor neste momento. Mas a empresa já não será mais a mesma à médio e longo prazos.


Pelo perfil da nova diretoria, dá para ver nitidamente que vem prosperando a tese de um grupo dentro do governo, de que o Serpro deve abandonar o desenvolvimento e a prestação de serviços ao governo e retornar às suas origens, que significaria: voltar-se exclusivamente para o processamento de dados, ao Ministério da Fazenda, tal com está no próprio nome da empresa. Ainda mais agora que o novo cenário econômico abre o espaço para a terceirização em TI em qualquer atividade (meio ou fim) governamental.


O que estará em disputa daqui para a frente será a questão do poder de alcance do Serpro na TI do governo. Com Mazoni, a estatal teve participação ativa no desenvolvimento e na prestação de serviços aos diversos órgãos de governo. Em princípio, esta seria, no todo ou em parte, a mesma visão do Palácio do Planalto (leia-se Dilma Rousseff), pois foi confiado à ele, por exemplo, a responsabilidade de criar um e-mail seguro para resguardar as comunicações internas de governo, após o escândalo da espionagem norte-americana.


Aliás, foi Mazoni quem salvou a imagem de Dilma neste episódio, depois que o ex-ministro das Comunicacões, Paulo Bernardo, no afã de agradar a "chefa", saiu anunciando uma conversa com a presidenta, que resultou na criação de um e-mail seguro para a população através dos Correios, causando pânico nesta estatal que nunca sequer havia cogitado essa hipótese.


Mal ou bem a implantação do e-mail seguro pelo Serpro - que ainda será testado algum dia pelo mundo hacker - está sendo executada pela estatal, que já ativou 55 mil contas, numa meta de um milhão, e vem gerando troca de dados de mais de 200 terabytes entre alguns ministérios e na Presidência da República. Mas a partir de agora já é dado como certo de que Marcos Mazoni não terá controle absoluto sobre o Serpro, já que a nova diretoria não foi escolhida por ele.


Dependerá da sua capacidade de lidar com o problema, para a empresa não viver aos sobressaltos doravante. Do contrário, outras crises surgirão até que a sua credibilidade perante o Palácio do Planalto se desfaça. Daqui para a frente, o tempo correrá contra a permanência de Mazoni, embora se saiba que ninguém sobrevive oito anos em dois governos sem alguma capacidade para engolir sapos. E estes não são "barbudos", embora alguns venham do mesmo brejo.


A nova diretoria do Serpro assim será composta:


Marcos Mazoni - Diretor-Presidente


Glória Guimarães - Diretora-Superintendente (Ex-diretora de Ti do BB, Ex-Secretaria de Logística e TI, Diretora de TI dos Correios)


Antonio Foschini - Diretoria de Desenvolvimento ( Ex-diretor de Logística do BB, Ex-vice-presidente dos Correios)


Antonio João - Diretoria Administrativa (permaneceu no cargo)


Robinson Margato - Diretoria de Operações (anteriormente atuava na Diretoria de Relacionamento com os Clientes)


André de Cesero - Diretoria de Relacionamento com os Clientes (funcionário do Serpro)


Fernando Garrido - Diretoria de Gestão Empresarial (Secretaria do Tesouro Nacional).

Flávia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) é gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietárias. Atualmente é editora-chefe das revistas Linux Magazine e Admin Magazine.

O futuro do trabalho na economia sob demanda

Crises econômicas forçaram as empresas a repensarem o modelo tradicional de fazer tudo em casa e, com a terceirização e automação, começaram a transferi-los para prestadores externos.


Por Cezar Taurion


A ideia, entranhada em nossa cultura, de que ter um bom trabalho é ser empregado de uma empresa é oriunda dos anos 1880/1890. As indústrias criadas pela Revolução Industrial demandaram exércitos de trabalhadores, destruindo com sua capacidade de produção o cenário então predominante de artesãos e profissionais independentes. A indústria têxtil é o melhor exemplo disso. Estas indústrias introduziram a estabilidade no emprego, uma estrutura organizacional de comando e controle (estrutura hierárquica) e criaram novas funções e carreiras que poderiam ser trilhadas por quem permanecessem nelas. Surgiram sindicatos e as legislações relativas ao trabalho. Surgiu a distinção entre os trabalhadores nas linhas de produção, operários, os administradores, os “colarinhos-brancos” e gestores das atividades. Durante dezenas de anos este modelo predominou.


A organização tradicional que conhecemos segue os princípios de Ronald Coase, economista da Universidade de Chicago e ganhador do prêmio Nobel, que argumentou que geralmente faz sentido que as empresas façam as coisas internamente em vez de externamente, já que os custos de transação para encontrar fornecedores, negociar contratos e garantir que o trabalho seja bem feito são altos. Ele disse: “uma empresa tende a se expandir até que os custos para organizar uma transação adicional dentro dela se tornem iguais aos custos para realizar a mesma transação por meio de uma permuta no mercado aberto ou aos custos de organizar em outra empresa”. Este modelo gerou as grandes corporações e suas hierarquias, com diversos escalões de gerentes, VPs júnior, sênior etc.


A partir dos anos 70 e 80 do século passado, com a queda do Muro de Berlim e a consequente expansão da globalização, os avanços tecnológicos da computação e a Internet começou-se a criar fissuras no modelo. Crises econômicas forçaram as empresas a repensarem o modelo tradicional de fazer tudo em casa e, com a terceirização e automação, começaram a transferi-los para prestadores externos, até mesmo em outros países, como o deslocamento de parte da força de trabalho dos EUA para a Índia e a robotização nas linhas de produção das fábricas. Don Tapscott, em seu livro Wikinomics, escreveu: “a Internet causou uma queda tão grande nos custos de transação que, de fato, tornou-se muito mais útil interpretar a lei de Coase ao contrário: hoje as empresas devem encolher até que o custo para realizar uma transação interna não mais exceda o de realizá-la externamente”.


As mais recentes inovações da era da Internet, como a mobilidade, big data & analytics e social networks estão provocando rupturas na maneira de como as pessoas se comunicam, colaboram e trabalham. Este fenômeno afeta a maneira de como as empresas se organizam, eliminando funções e criando novas. É um desafio e tanto, principalmente na fase de transição quando as novas tecnologias não estão plenamente disseminadas e absorvidas. Uma frase de William Gibson, autor de ficção cientifica e que criou o termo “cyberspace” é emblemática: “the future is here, it´s just not evenly distributed yet”. Talvez seja o momento de debater se as organizações que temos hoje e se as profissões que exercemos serão as mesmas nas próximas décadas. Os avanços tecnológicos e as inovações de ruptura tendem a tornar obsoletas profissões já estabelecidas e podem destruir setores inteiros de indústria, mas também criam novas indústrias, novos modelos de negócio e novas profissões.


Já vemos alguns movimentos de mudança acontecendo em muitos países. Um recente artigo do The Economist aborda a questão de forma bem interessante, “There’s an app for that”. O artigo mostra como o uso das tecnologias de mobilidade, social networks e analytics criam novas oportunidades de negócio e trabalho. A ideia por trás de diversas startups é aproximar, com o uso destas tecnologias, contratante e contratado, sem necessidade de uma empresa tradicional no meio. Modelo que podemos chamar de “services on demand”. É o fenômeno da uberização, pois é inspirado pelo modelo do Uber. Nada nos impede de olharmos para frente e vermos que com outras tecnologias, como a Internet das Coisas e impressoras 3D podemos ampliar o modelo para inclusive criação de produtos. Teremos uma “on demand economy”? Uma economia on demand implica em mudança cultural significativa, como por exemplo, a ideia de emprego de tempo integral na mesma empresa.


Como disse o físico Niels Bohr “É muito difícil fazer previsões, principalmente sobre o futuro”; mas discussões sobre cenários são importantes para que possamos desenhar nossas estratégias. O futurista Ray Kurzweil calcula que nos próximos 100 anos veremos um avanço, equivalente a 20 mil anos do nosso conhecimento atual. Vale a pena ler um pouco sobre sua teoria em “Law of Accelerating Returns”.


Entretanto, a velocidade do avanço tecnológico permite apontar que o trabalho e a organização das empresas como conhecemos hoje será muito impactada nos próximos anos. A velocidade de respostas das empresas terá que ser bem maior do que a que vemos hoje. Na minha opinião, embora continuemos a ver grandes corporações, creio que haverá um espaço cada vez maior para organizações menores e mais ágeis, especializadas, autuando em rede, complementando umas às outras.


Isto vai mudar o conceito de emprego e provavelmente demandará inúmeras outras profissões. Talvez daqui há 25 anos ninguém mais comemore 25 anos de atuação na mesma empresa. E muito provavelmente não permanecerá 25 anos na mesma profissão.


E em TI? Há 50 anos tínhamos 5 tripulantes no cockpit de uma aeronave: comandante, copiloto, engenheiro de voo, navegador e rádio-operador. Os avanços tecnológicos permitiram que as aeronaves voem agora com dois tripulantes. E estes, diante da automação, têm perfil operacional diferente de décadas atrás. Os computadores voam as aeronaves e os pilotos operam os computadores. Em TI, muitas das atuais funções desaparecerão (lembram-se dos digitadores?) e novas serão criadas, com novas competências. Creio que já devemos começar a pensar nisso…


Mais informações


[1]


O autor

Cezar Taurion é profissional e estudioso de Tecnologia da Informação desde fins da década de 70, com educação formal diversificada, em Economia, mestrado em Ciência da Computação e MBA em Marketing de Serviços, além de possuir experiência profissional moldada pela passagem em empresas de porte mundial. É autor de seis livros que abordam assuntos como Software Livre, Grid Computing, Software Embarcado, Cloud Computing e Big data.

Dados na palma da mão

Quase todos os fabricantes de aparelhos GPS usam formatos proprietários para salvar rotas, trajetos e pontos de interesse. Os fornecedores raramente oferecem software Linux para fazer upload e download ou processar dados. Quatro editores GPS, porém, mantêm os usuários Linux no caminho certo.


Por Heike Jurzik


A maioria dos smartphones tem um receptor GPS e dispositivos GPS handheld, relógios esportivos e computadores para bicicleta estão disponíveis hoje a preços acessíveis. Estes dispositivos práticos podem simplificar a navegação, encontrar geocaches e registrar passeios levando em conta a velocidade, distância percorrida, altitude, calorias queimadas e muito mais. Com uma cinta de peito ou de braço, computadores de treino também podem medir o pulso do usuário. Se quiser analisar os dados posteriormente no PC ou exibi-los à família e aos amigos, primeiro é necessário transferir os logs para o computador. Uma ferramenta de software ajuda a avaliar e reformular os dados brutos.


Muitos entusiastas de esportes ao ar livre gostam de planejar suas caminhadas, passeios de bicicleta e rotas de corrida com antecedência. Na web existem muitos portais onde os usuários podem compor passeios online e, em seguida, baixar os resultados. A comunidade também troca dados e muito mais em sites como GPSies [1], GPS-Tour.info [2], BikeNet [3], Outdoor Active [4], ShareMyRoutes [5] e EveryTrail [6]. Uma falha nos recursos oferecidos por vários editores de GPS é exibida na tabela 1.


Building Blocks


Tudo isso seria fácil e conveniente se houvesse um formato comum para armazenamento e troca de dados de GPS. Embora mais e mais dispositivos e programas contem com o GPX baseado em XML, outros formatos exóticos também existem no mercado. O fornecedor de software geralmente não oferece grande ajuda, geralmente por ser executado somente no Windows e raramente no OS X. Felizmente, alguns programas gratuitos agora entregam bons resultados no Linux também. Analisamos quatro deles. No laboratório, o programa GPSBabel C [7] bateu três aplicativos Java: GpsPrune [8], MyTourbook [9] e RouteConverter [10], os quais necessitam de um ambiente de tempo de execução em Java. Na máquina de laboratório do Ubuntu (14.04), todos funcionaram perfeitamente com o OpenJDK Runtime Environment (Iced Tea 2.4.7). A ideia era ver como os programas lidavam com arquivos GPX e TCX a partir de dois dispositivos Garmin (conexão USB) e vários arquivos KML criados usando o Google Maps. Além das opções de exibição, estávamos especialmente interessados nos recursos de edição para trajetos, rotas e pontos de passagem; as capacidades de exportação; e quaisquer recursos adicionais contidos nos editores por padrão.


GPSBabel


O primeiro candidato do teste é um verdadeiro artista na troca rápida de informações. O GPSBabel [7] lê e converte mais de 150 tipos de formatos de arquivo GPS a partir de diferentes fornecedores [11]. A ferramenta, que está licenciada sob a GPLv2, também tem protocolos para leitura e gravação em dispositivos GPS, bem como filtros que são usados para conversão. Por exemplo, eles permitem simplificar rotas, apagar waypoints imprecisos no trajeto e muito mais. O modo especial processa os dados de posicionamento de um dispositivo conectado em tempo real.


Os repositórios sempre oferecem pacotes GPSBabel um pouco antigos. Como a ferramenta está se desenvolvendo rapidamente, no entanto, analisamos a versão mais recente (que era a 1.5.1 no momento do fechamento desta edição) fazendo o download do arquivo tar.gz e construindo a ferramenta a partir do código fonte. Para fazer isso, primeiro instalamos os pacotes libqt4-core e libqt4-dev e suas dependências na máquina Ubuntu de laboratório para que pudessemos experimentar a interface gráfica Qt incluída.


O GPSBabel é uma ferramenta de linha de comando. Uma chamada de programa geralmente segue o seguinte padrão:


gpsbabel ‐i <input format> 
‐f <input file> ‐o <output format>
‐F <output file>

O comando gpsbabel -? lista todos os formatos de entrada e saída. Em vez de um arquivo, os usuários também podem fornecer uma interface para um dispositivo GPS conectado para -f, por exemplo, ‐f usb: ou ‐f /dev/ttyS0. O GPSBabel detecta de forma confiável a maioria dos formatos suportados, independentemente se os dados consistem de rotas, trilhas ou waypoints. Alguns dispositivos Garmin e Magellan precisam de ajuda, no entanto. Os usuários podem, então, trabalhar com os parâmetros (padrão) -w, -r e -t:


gpsbabel ‐w ‐i garmin 
‐f usb: ‐o gpx ‐F waypoints.gpx

Este comando envia os waypoints de um dispositivo Garmin conectado a uma porta USB para o disco rígido e os armazena no arquivo waypoints.gpx. Se você também deseja que o programa baixe as trilhas e rotas, basta adicionar -t -r diretamente após -w. O GPSBabel sempre trabalha com todas as opções da esquerda para a direita. A ferramenta também pode lidar com as necessidades dos usuários mais exigentes. Por exemplo, ele pode ler dados de múltiplos arquivos em uma variedade de formatos, aplicar filtros, ler mais dados e agrupar os resultados em um único arquivo de saída. O manual no site contém explicações detalhadas e exemplos deste e outros cenários.


Bem filtrado


Para editar rotas, trajetos e pontos de interesse, os usuários definim filtros após o parâmetro -x. Neste caso, também, a ordem em que os parâmetros são chamados é importante. Um filtro que é adicionado antes do arquivo de entrada não tem, portanto, qualquer efeito. Em vez disso, podemos inserir filtros várias vezes entre diferentes funções de entrada e saída em um comando. Isso significa que você pode adicionar pontos antes e após as curvas em uma rota ou pontos único conjunto dentro de um polígono, arco ou raio. Os usuários também podem manipular a altitude e as suas listas de faixas; eles podem classificar e remover waypoints, trilhas e rotas ou simplesmente eliminar pontos duplicados com filtros GPSBabel. Para fazer o último, a ferramenta ou examina o nome ou as coordenadas. Para obter mais flexibilidade, um filtro remove um ponto apenas se for dentro de uma determinada distância de outro ponto; os usuários podem definir esta distância em pés ou metros. O capítulo 4 do manual descreve todas as opções de filtro em detalhes e exibe algumas chamadas de exemplo.


As fontes GPSBabel incluem uma interface gráfica simples Tcl chamada guibabel, que os desenvolvedores obviamente não mantém mais. Além disso, é possível usar a interface Qt mencionada anteriormente. Instale-a mudando para o subdiretório gui e digitando qmake, seguido por make. O binário encontra-se disponível na subpasta GPSBabel1.5.1/gpsbabelfe‐bin. Após selecionar os formatos de entrada e saída, a interface gráfica oferece o botão Options (Opções), que permite acessar as opções. Clicar em Filters (Filtros) abre o Converter dialog (figura 1). Caixas de seleção e campos permitem que o usuário edite rotas, trajetos e pontos de interesse, e não há necessidade de pesquisar no manual por todas as opções -x. Depois de pressionar OK para confirmar sua escolha, o comando completo do GPBabel aparece na área na parte inferior. Mais opções permitem aos usuários visualizar trajetos, rotas e pontos no Google Maps. No entanto, a visualização do mapa não suporta edição e só serve como preview.


GpsPrune


O segundo candidato teste é implementado em Java e licenciado sob a GPLv2. O GpsPrune [8] exibe dados de GPS e permite convertê-los e editá-los. Apesar de executar em Linux, a ferramenta também funciona em Windows e Mac OS X. Nós investigamos a versão 16.2. Depois de baixar o arquivo Java, inicie o software, digitando java-jar gpsprune_16.2.jar. Se o programa não avaliar automaticamente as próprias configurações de idioma, é possível definir o idioma do usuário no menu Settings (Configurações), se necessário, e, em seguida, reiniciar o GpsPrune.


O programa só abre arquivos de texto ou XML (GPX, KML), mas pode usar o GPSBabel como um auxiliar para converter outros formatos ou importar dados de um dispositivo GPS. No campo Device Name (Nome do dispositivo), digite o nome da interface do usuário (por exemplo, USB: ou /Dev/ttyS0). Também insira o Format (Formato), tais como garmin, tomtom, magellan e assim por diante [11], bem como um filtro GPSBabel opcional. O caminho é exibido no meio da janela com os dados de altitude, se for o caso, na parte inferior. O mapa está inicialmente oculto. É possível habilitá-lo usando o ícone com o globo ou através do menu View (Visualizar). Com o controle deslizante, é podemos editar a transparência do mapa; o ícone da lupa e a roda do mouse e do teclado permitem que o usuário amplie a imagem.


Por padrão, o GpsPrune usa mapas do OpenStreetMap. Em Settings (Configurações), ou ao clicar no mapa, o usuário pode selecionar os mapas de um fornecedor diferente na lista ou adicionar servidores alternativos, como o OpenPisteMap ou o OpenCycleMap. Opcionalmente, o editor GPS salva o mapa baixado para uso offline. Os usuários ativam esse recurso nas configurações do programa e escolhem um diretório para os tiles, que são armazenados no disco como arquivos PNG. Para marcar um ponto em uma faixa, clique nele ou no mapa ou na visualização de perfil na parte inferior da janela. Use o controle deslizante na parte superior esquerda em Track details ou pressione Ctrl + Seta para esquerda ou Ctrl + Seta para a direita para ir para o item anterior ou seguinte. Agora, uma cruz vermelha que aparece no mapa e na barra lateral direita exibe informações detalhadas, como a latitude e a longitude, altitude, e um timestamp (figura 2). Escolher Point/Edit point modifica um ponto selecionado. Na caixa de diálogo seguinte, podemos digitar os novos dados nos campos individuais e alterar a latitude e longitude, altitude, descrição e nome. O último fornece um waypoint, que aparece então ao lado esquerdo e no mapa.


Para selecionar toda a área de um trajeto, primeiro selecione um ponto de início no menu Range. O GpsPrune, em seguida, marca todos os pontos restantes da faixa e exibe informações adicionais sobre a seção selecionada na barra lateral direita. Para definir um endpoint alternativo, clique no mapa, mantendo pressionada a tecla Shift; Ctrl+A seleciona a faixa toda. Os menus Point e Range permitem excluir itens individuais ou seções inteiras da faixa.


Preparando o caminho


O GpsPrune remove pontos duplicados ou redundantes de uma faixa. Esta função encontra-se no menu Track. Na caixa de diálogo seguinte, podemos verificar as opções desejadas e apagar duplicatas, pontos próximos e discrepantes (isto é, aqueles cujas coordenadas estão longe dos pontos vizinhos por conta da má recepção). A ferramenta também encontra pontos isolados que não estão relacionados com quaisquer outros. Para adicionar novos pontos a uma faixa, selecione primeiro um par de pontos de dados e, em seguida, pressione Range/Interpolate (Faixa/Interpolar) para adicionar qualquer número de pontos. O software organiza os novos pontos em uma linha reta entre dois pontos de referência.


O editor do GPS pode reverter seções ou faixas inteiras, adicionar as diferenças de tempo (para evitar que terceiros descubram os locais em que o usuário esteve), e se conectar seções de uma faixa. Podemos desfazer uma única etapa ou várias usando Ctrl+Z. Os desenvolvedores têm contemplado o software com alguns recursos extras agradáveis. A visualização em 3D abre uma janela com uma visão tridimensional rotativa; essa ação requer a biblioteca Java 3D. A ferramenta irá exportar diretamente para o formato POV-Ray na requisição. O menu Photo (Foto) permite aos usuários adicionar imagens para uma faixa (figura 3). Se as imagens contêm coordenadas, o GpsPrune avalia as informações Exif e adiciona novos pontos. Para uma atribuição manual, selecione as fotos na barra lateral esquerda, selecione um ponto no mapa e, em seguida Photo/Connect to point. Se uma faixa contém informações de hora, o item de menu Correlate photos sincroniza a data e hora das imagens com as dos pontos. Vincular arquivos de áudio funciona da mesma forma no menu Audio.


Na requisição, o GpsPrune pode exportar a faixa, juntamente com as fotos em formato Google Earth (File/Export KML), e armazenar as coordenadas nas informações Exif das imagens (Photo/Save to Exif). Este último exige o programa Perl externo ExifTool. Juntamente com Gnuplot, o programa também gera gráficos de distâncias, perfis de altitude ou velocidades e armazena as estatísticas em formato SVG. O menu Online fornece links para vários serviços de Internet, como a Wikipedia, previsão do tempo e dados de altitude SRTM. O editor GPS salva as trilhas como um arquivo de texto ou em dois formatos XML: KML e GPX. Os recursos de exportação KML também suportam o formato KMZ comprimido. Alternativamente, o GpsPrune – mais uma vez em colaboração com o GPSBabel – pode enviar as trilhas editadas de volta para um dispositivo GPS conectado. Neste caso, o usuário decide se deve enviar somente pontos de passagem, o trajeto completo, ou ambos.


MyTourbook


O terceiro candidato também é liberado sob a GPLv2. MyTourbook [9] não só trabalha com instrumentos de GPS, mas também com computadores de equipamentos de esportes e ergômetros. O fato do programa Java ser destinado principalmente a atletas é revelado ao observarmos a lista de recursos. Ele é o único candidato a analisar a taxa de pulso – além da altitude, comprimento e velocidade – e o faz para vários perfis de usuário. Testamos a versão 14.4.0. Os usuários precisam apenas fazer o download do arquivo ZIP e descompactá-lo. Certifique-se de que o binário seja executável e invoque-o digitando ./mytourbook.


Este programa é multilinguagem e avalia as configurações de idioma do locale. Se o processo falhar, podemos definir o idioma com o parâmetro -nl xx – o usuário pesquisará essa ação em vão nas configurações do programa. Quando iniciado pela primeira vez, o MyTourbook oferece a criação de um perfil. Os usuários podem inserir nome, tamanho, peso e outras propriedades. É possível modificar esses dados a qualquer momento via Tools/Preferences (Ferramentas/Preferências). Uma análise da janela de configuração mostra a versatilidade do programa; no entanto, leva tempo entender todas as opções.


Essa complexidade se reflete no nível de detalhamento da janela principal. No topo estão os filtros para perfis de usuário e de rota, juntamente com ícones para as funções mais utilizadas. Abaixo estão o tour pelo gerenciamento do sistema, calendário, recursos de estatística e uma área para fotos. O canto inferior esquerdo mostra seleções e waypoints por padrão. À direita estão o mapa e as faixas selecionadas, incluindo uma área em que o usuário pode exibir ou ocultar a altitude, taxa de pulso, velocidade, ritmo e desempenho através de pequenos ícones (figura 4). Podemos dimensionar todas as áreas de trabalho e controles deslizantes para cima e para baixo conforme necessário, e arrastar os campos para novos locais com o mouse.


Roadbook


O primeiro passo é importar passeios utilizando a guia correspondente. Os usuários têm a opção de escolher entre sistemas computacionais esportivos conectados, arquivos individuais e diretórios inteiros. O MyTourbook suporta 16 formatos de arquivo, incluindo GPX, FIT, TCX e CSV. O manual no site descreve os formatos e dispositivos disponíveis. Em seguida, o usuário salva os tours e os atribui a um perfil de usuário. Clicar em um item na lista tour abre a faixa na visualização de mapa. Várias cores mostram a altitude, taxa de pulso, velocidade, tempo e inclinação. Clicar nos triângulos acima do mapa permite aos usuários selecionar a visualização preferida.


Como um fornecedor de mapas, o MyTourbook usa o OpenStreetMap por padrão; Alternativamente, pode contactar o servidor SRTM. As configurações do programa permitem ao usuário adicionar outros mapas. Aqui os usuários também podem habilitar o uso offline e criar um diretório para armazenar as partes (tiles) do mapa. Alternativamente, o programa suporta uma visualização em 3D, contando com o Microsoft Bing Maps e o NASA Java SDK [12] para fazê-lo. As funções para editar as faixas são bastante espartanas. Os usuários só podem definir marcas que aparecem no mapa como pequenos sinais. Estes não são waypoints, mas recursos exclusivos do MyTourbook – como as palavras-chave. A guia Tour Editor acima do mapa permite ao usuário alterar o nome e a descrição e inserir informações sobre as condições meteorológicas e outros dados.


Se uma faixa contém waypoints, é possível dividir o tour com precisão. Uma função para edição ou adição de waypoints está em falta. Para mesclar várias faixas, alterne para a tour list, selecione dois ou mais itens e opte por Merge tours no menu de contexto. O MyTourbook importa fotos com dados de GPS. Para fazer isso, siga para a guia Photo Directory e navegue até a pasta que contém as imagens. Agora, selecione as fotos individuais ou todas elas. As fotos, em seguida, aparecem na visualização do mapa (figura 5), ​​e o diagrama exibe as marcações para a localização na seção Tour Chart. Para vincular uma imagem com um tour, clique na seção Photos+Tours, clique com o botão direito em uma entrada, e selecione Save photos in the tour. A visualização Tour Photos contém miniaturas das fotos e exibe as imagens no mapa nas localizações originais. Para exportar um tour, clique com o botão direito do mouse, escolha Export Tour e, em seguida, escolha entre GPX e TCX. Não há opção para enviar dados para um dispositivo GPS conectado. Em vez disso, a opção do menu Print Tour cria um PDF com os dados mais importantes – mas sem um mapa.


RouteConverter


O candidato final também é liberado sob a GPLv2. É possível baixar o arquivo Java a partir do site do projeto. RouteConverter [10] está disponível para Linux, Windows e OS X nas versões 32 bits e 64 bits. Baseie essa decisão pela versão Java utilizada – não importa se o sistema operacional é de 32 bits ou 64 bits. Investigamos a versão 2.12. Para executar a ferramenta, digite:


java ‐jar RouteConverterLinux64.jar 

ou


java ‐jar RouteConverterLinux.jar

Mais uma vez, o programa avalia as configurações de idioma local; alternativamente, é possível definir o idioma preferido em Tools/Options (Ferramentas/Opções). Como o RouteConverter conta com o GPS-Babel em segundo plano para a conversão de dados, ele irá detectar apenas muitos formatos [11], incluindo a GPX comumente utilizada e formatos de arquivos KML. Para este fim, não observe apenas a extensão do arquivo, mas também o conteúdo do arquivo. Ele exibe as conclusões na guia Convert (Converter) na metade direita da janela. Lá, ele diz mais sobre formato e conteúdo, número de posições, bem como comprimento, duração e total de subida e descida.


O editor do GPS computa as duas últimas entradas e o comprimento da rota em linha reta de ponto a ponto. No menu dropdown, o editor do GPS exibe uma lista de locais (ou seja, todos os pontos que encontra) opcionalmente, como uma faixa, uma rota ou uma lista de waypoints. A diferença é prontamente aparente no mapa do painel à esquerda. O programa, no entanto, não importa a partir de um dispositivo GPS conectado. Os usuários transferem os dados para o disco rígido através do gerenciador de arquivos ou com uma ferramenta do tipo GPSBabel. O mesmo é verdadeiro para o envio de trilhas, rotas e waypoints para o dispositivo. O RouteConverter também carece de uma opção de exportação; os usuários primeiro salvam os arquivos e, em seguida, os transferem. Estes são passos desnecessários; os outros candidatos resolvem melhor o problema.


Na parte inferior, o RouteConverter mostra a altitude ou a velocidade do perfil – o menu View (Exibir) alterna para frente e para trás. Por padrão, o mapa colhe os dados do OpenStreetMap, mas opcionalmente também funciona com o Google Maps e os diferentes aspectos que ele suporta, como mapa e satélite (figura 6). Clicar com o botão direito do mouse sobre o mapa abre um menu de contexto no qual podemos selecionar ou excluir a posição mais próxima, adicionar uma nova, o centro do mapa, e escala dentro ou para fora. O usuário também pode adicionar novos pontos pressionando Ctrl e clicando com o botão esquerdo sob o mapa.


De A para B


O RouteConverter é o único candidato do teste que ajuda a planejar suas rotas próprias; ele conta com o Google Maps para fazer isso. Nas configurações do programa, o usuário seleciona se está viajando de carro, bicicleta ou à pé. Opcionalmente, é possível excluir auto-estradas e estradas pedagiadas. Para planejar um novo tour, primeiro defina várias posições no mapa. Position/Find Location (Posição/Encontrar localização) permite buscar por nomes de locais, endereços ou coordenadas. Em seguida, arraste o mouse para corrigir quaisquer posições incorretas. Em seguida, selecione Route entry (Entrada de rota) no menu dropdown no painel da direita, e o RouteConverter traça a rota no mapa (figura 7). Assim como o Google Maps, podemos modificar a rota arrastando o mouse.


O RouteConverter converte faixas em rotas e reduz o número de pontos ao fazê-lo. Depois de usar o menu dropdown para alterar a visualização para Route, é possível diluir o número de waypoints selecionando Position list/Convert Track to Route. O programa usa o algoritmo Ramer-Douglas-Peucker [13] para a suavização da curva; o limite é de 100 metros. Para um pouco mais de controle, use a opção do menu Position/Delete Duplicate Positions. A caixa de diálogo que se segue oferece três opções para excluir pontos: seleciona todas as posições dentro de uma distância especificada, todos, exceto cada posição nth, ou todas as posições redundantes dado um determinado valor limite. Os desenvolvedores surgiram com um recurso interessante na guia Browse (Navegar). Quando os usuários abrem a pasta Internet, eles podem acessar numerosas rotas e trilhas que outros usuários não carregaram. Os submenus tentam adicionar um pouco de ordem à coleção, e dividem os dados em atividades, países, estados, regiões, e assim por diante. Até certo ponto, no entanto, esse recurso é bastante confuso, pois não há nenhuma opção para classificação ou limpeza. Se quiser compartilhar algo com a comunidade, primeiro siga para a categoria correta, clique em Add file (Adicionar arquivo) e selecione uma faixa do seu próprio disco. File/Save (Arquivo/Salvar) leva a um diálogo que armazena os dados em um formato específico. Para converter, o RouteConverter novamente usa GPSBabel, e o menu pop-up Filter (Filtro) oferece vários tipos de arquivos para escolher.


Conclusão


O GPSBabel contempla um extraordinário número de formatos e protocolos; ele está constantemente aprendendo novos e, portanto, é ideal como um utilitário de linha de comando para o processamento de arquivos em lote e para uso em scripts próprios. O manual pesa cerca de 180 páginas. Se quiser entender a ferramenta e suas opções corretamente, não dispense um período de treinamento completo. A guia de interface do usuário que vem com o pacote torna mais fácil trabalhar com trajetos, rotas e waypoints, e é ótima para experimentar com os filtros. Como a GUI exibe a linha de comando GPSBabel completa com todos os parâmetros, é possível usá-la para copiar os comandos shell e adicioná-los aos próprios scripts quando necessário. No entanto, a visualização de mapa embutida na GUI oferece uma pré-visualização simples no Google Maps.


Embora o RouteConverter conte com o GPSBabel em segundo plano e, na verdade, utilize-o para converter os dados do GPS, os desenvolvedores decidiram não utilizar a ferramenta para importar dados. O programa não dispõe de opção para acessar dispositivos GPS conectados, o que é uma pena; o programa rival, GpsPrune, oferece precisamente esse recurso. O que realmente gostamos a respeito do RouteConverter é que o programa não só cria as próprias rotas, como também fornece acesso a dados publicados por outros usuários. Muitos usuários já fizeram uso do recurso de upload, e a ferramenta, portanto, oferece arquivos para muitas atividades ao ar livre em todo o mundo.


O MyTourbook é destinado principalmente a atletas e contém funções para analisar o progresso do treino. Como o programa funciona sem auxiliares, como é o caso do GPSBabel para importação e exportação, precisamos primeiro converter formatos mais exóticos com outra ferramenta. No entanto, ele perde pontos nas funções de editor. É impossível limpar trajetos ou editar waypoints, logo, a ferramenta é mais adequada para visualização de trajetos. Infelizmente, o MyTourbook apresentou erros de acesso à memória com uma certa frequência no laboratório. Isso aconteceu especialmente com a exibição da visualização em 3D. Segundo o site, o problema é conhecido. Os usuários MyTourbook devem, pois, salvar suas rotas com frequência e regularidade. O GpsPrune não pode ler nativamente vários formatos, mas pode, opcionalmente, utilizar o GPSBabel para importar e converter. Além da visualização flexível, gostamos particularmente da maneira como o programa coopera com o POV-ray e o Gnuplot. A capacidade de acessar vários serviços online também é algo prático. Como os recursos de processamento de rotas, trajetos e pontos de interesse são fáceis de usar e não deixam a desejar, este candidato é o vencedor.


Mais informações


[1] GPSies: http://​­www.​­gpsies.​­com [2] GPS-Tour.info: http://​­www.​­gps‐tour.​­info [3] Bikenet: http://​­www.​­bikemap.​­net [4] Outdoor Active: http://www.outdooractive.com/en/ [5] ShareMyRoutes: http://www.sharemyroutes.com [6] EveryTrail: http://www.everytrail.com [7] GPSBabel: http://​­www.​­gpsbabel.​­org [8] GpsPrune: http://​­activityworkshop.​net/​­software/​­gpsprune [9] MyTourbook: http://​­mytourbook.​­sourceforge.​­net [10] RouteConverter: http://​­www.​routeconverter.​­de/​­home/​­en [11] Formatos GPSBabel: http://​­www.​gpsbabel.​­org/​­capabilities.​­html [12] NASA World Wind: http://​­worldwind.​­arc.​­nasa.​­gov/​­java/ [13] Algoritmo Ramer-Douglas-Peucker: http://​­en.​­wikipedia.​­org/​­wiki/​Ramer‐Douglas‐Peucker_algorithm


Figura 1 Usuários ativam a interface gráfica GPSBabel digitando gpsbabelfe. Ele oferece acesso conveniente para as opções e filtros. Figura 2 A cruz vermelha marca um ponto no trajeto; a barra lateral direita mostra informações detalhadas, como coordenadas, altitude e tempo. Figura 3 O GpsPrune adiciona fotos para rastrear pontos. O planejador de rota analisa as informações Exif existentes e utiliza as coordenadas. Figura 4 O MyTourbook divide a janela do programa em muitas seções pequenas. As guias fornecem aos usuários acesso a uma variedade de informações diferentes sobre um trajeto. Figura 5 O MyTourbook importa fotos com coordenadas e as exibe na visualização do mapa. Os usuários podem adicionar imagens individuais ou todo um diretório com snapshots.


Na


Figura 6 requisição, o RouteConverter também carregará seus mapas dos servidores do Google; ele também mostra as faixas e rotas na imagem de satélite. Figura 7 A função de planejador de rotas do RouteConverter faz uso do Google Maps, para que o usuário possa arrastar o mouse para corrigir a rota.


 


Tabela 1: Recursos de edição do GPS


O autor

Heike Jurzik estudou alemão, Ciência da Computação e inglês na Universidade de Colônia, Alemanha. Ela descobriu o Linux em 1996 e é fascinada com o escopo da linha de comando do Linux desde então. 

Dormir ao volante

Quando este humilde escrevinhador era criança ­­­– o que já faz tempo, mas não conte a ninguém –, acompanhava com horror as histórias tenebrosas dos adultos que passavam de carro por uma carreta tombada em uma vala junto à estrada: “Com certeza, o motorista dormiu ao volante!”


Por Rafael Peregrino da Silva


Quando este humilde escrevinhador era criança ­­­– o que já faz tempo, mas não conte a ninguém –, acompanhava com horror as histórias tenebrosas dos adultos que passavam de carro por uma carreta tombada em uma vala junto à estrada: “Com certeza, o motorista dormiu ao volante!”. Tal comentário era inequivocamente acompanhado por conversas que exaltavam os perigos que assolam a área de logística e transportes do país, o fato de que há milhares de caminhoneiros que dirigem por 16 ou 18 horas seguidas sem descanso, no intuito de poder ganhar mais etc. Em outras ocasiões, quando carros de passeio acabavam por ter destino similar às carretas, tombando em ribanceiras ou valas­­­ – especialmente quando isso ocorria em finais de semana, mormente aos domingos –­­­, as observações tecidas pelos adultos invariavelmente se resumiam a: “Bebeu demais e dormiu ao volante!” ou “Devia ter parado para descansar, mas resolveu continuar dirigindo e acabou dormindo ao volante!”.


Pode ser, entretanto, que estejam para acabar os dias em que dormir ao volante represente um perigo. Se ­­–­ e considere­se seriamente aqui um “Se”, com tudo o que a seriedade aplicada a essa conjunção pode oferecer –­­­ os lobbies da indústria automobilística mundial não conseguirem impedir, carros totalmente autônomos estarão disponíveis para o público em 2020, segundo previsões do Google e da Tesla Motor (isso nos EUA, entenda-­se). Segundo Elon Musk, fundador da Tesla, ainda em 2015, veículos da empresa serão capazes de circular sem o auxílio de um motorista em 90% do tempo. A Cadillac, marca que pertence à GM, planeja que, em 2017, seus carros sejam capazes de circular sem auxílio humano em estradas até a velocidade de 110 km/h ou em congestionamentos (o famoso tráfego “anda-­e-­para”). Em meados de 2014, o projeto de carro autônomo criado pelo Google ­­­– com veículos equipados com o Ubuntu –­­­ já contava com mais 1,1 milhão de quilômetros rodados. A Continental, fornecedor de autopeças alemão, também já rodou milhares de quilômetros com um VW Passat equipado com um sistema autônomo próprio chamado Continental Intelligent Transportation System, baseado em Linux. E, considerando o


histórico pró-­Open Source de Elon Musk, que em junho de 2014 abriu todas as patentes da Tesla para uso indiscriminado (inclusive por seus competidores), não há dúvida a respeito do uso de Software Livre em toda a pilha de programas que equiparão os carros autônomos da companhia. O mesmo pode-­se dizer da BMW, que não somente planeja usar Linux como base de seus carros autônomos, mas também deverá abrir o código de todo o sistema de controle do veículo. E a Uber, empresa americana do setor tecnológico, que oferece um serviço semelhante ao táxi usando um aplicativo móvel de mesmo nome, pretende substituir todos os seus motoristas por carros autônomos, conforme declarações de seu presidente, Travis Kalanick. Para entender o impacto que isso pode gerar na sociedade, com uma frota de apenas 9.000 carros autônomos, o Uber poderia substituir todos os táxis da cidade de Nova Iorque, segundo um estudo da Universidade de Columbia. Se não bastasse isso, passageiros teriam que esperar em média apenas 36s por um desses carros de aluguel, cuja corrida custaria a mixaria de R$ 1,00/km (a título de comparação, a bandeira 1 na cidade de São Paulo custa atualmente R$ 2,50/km), no que se configuraria uma "nuvem de transporte”, na qual a propriedade do automóvel passaria a ser irrelevante. Isso deve


mudar radicalmente o mercado de transportes mundial. E o Linux e o Software Livre estão encrustados no coração dessa disrupção!


Assim: bons sonhos! Seu carro te acorda quando você chegar ao seu destino.


 

Rafael Antonio Guido Peregrino da Silva foi chefe de pesquisa e desenvolvimento da Cyclades Europa. É um dos fundadores da Linux Magazine Brasil e atualmente atua, entre várias outras funções, como seu editor-chefe.

Crônicas do kernel

Acompanhe as discussões, dilemas e acontecimentos da lista de discussão oficial do Linux.


Por Zack Brown


Novas técnicas de economia de energia


Alejandra Morales anunciou o Cryogenic [1], um módulo do kernel que tenta reduzir o consumo de energia de um sistema através da programação de operações não urgente de entrada/saída nos momentos em que os dispositivos de entrada/saída no sistema já estivessem em uso. Ao agendar este tipo de atividade sob demanda, o Cryogenic cria uma situação que mantém os dispositivos em um estado de baixo consumo por longos períodos de tempo. Alejandra acrescentou: "Cryogenic é o resultado de minha dissertação de mestrado, concluído na Universidade Técnica de Munique, sob a supervisão de Christian Grothoff."


H. Peter Anvin respondeu, dizendo que a interface do programador do Cryogenic foi feita de forma muito desajeitada e que um projeto tão ambicioso era suscetível de receber uma grande quantidade de feedback técnico e que isso tornaria a ferramenta possível de ser incluída no kernel. Mas, Peter disse: "Este não é um ponto negativo, mas sim uma indicação de que o trabalho é valioso o suficiente para ser integrado no kernel. O mais provável, na minha opinião, tornar o Cryogenic um driver autônomo pode ser um piloto de testes, mas nós queremos integrá-lo oficialmente no núcleo de I/O".


Pavel Machek também viu valor no Cryogenic, particularmente para dispositivos como telefones, que normalmente executam operações de entrada/saída sobre a rede que estiver disponível no momento, com qualquer sinal ou qualidade disponível.


Pavel sentiu que o Cryogenic poderia programar essas operações para ter um consumo mínimo de bateria do dispositivo. Pavel também pediu alguns números que mostram o quanto de energia seria de fato economizada utilizando a ferramenta. Christian Grothoff respondeu: "isso depende do dispositivo, mas temos demonstrado economia de energia em dois tipos diferentes de dispositivos usando duas configurações diferentes de medição realizadas por dois grupos independentes de testadores. Algumas das medições estão disponíveis no site, o segundo conjunto deve tornar-se disponível "em breve" (mas já podemos dizer que, para o cenário que montamos, as economias estão no mesmo nível, assim como antes)".


Christian acrescentou que o uso do telefone sugerido por Pavel foi um dos pontos principais para uso do Cryogenic. Pavel olhou para os dados e observou que a economia de energia parecia ser inferior a 10%. Christian respondeu, "note que são permitidos o adiamento de envio de apenas 50% dos pacotes transmitidos. Se ocorrer o aumento do atraso de envio de pacotes permitido ou permitir uma fração maior de pacotes a serem adiads, deve ocorrer maior economia".


David Lang reiterou a declaração de Pedro de que o código de Alejandra provavelmente iria para o núcleo do kernel, em vez de ser apenas um módulo independente. Como David disse, "este tipo de capacidade é algo que é muito desejável; há muitas pessoas que fazem tentativas de fornecer esse tipo de consolidação, sem sucesso. Então, acho que é _muito_ seguro dizer que, se esta ferramenta for aceita no kernel, será uma mudança para o núcleo todo e não apenas um módulo carregável".


Ele encorajou Alejandra seguir o conselho de Pedro sobre quais partes do código devem ser melhoradas e como alterar a interface para tornar-se melhor para o núcleo do kernel. Ele também apontou que os desenvolvedores do kernel precisariam ver algumas métricas de desempenho do kernel já com as correções incluídas para ver como ele iria afetar o desempenho de tarefas que não precisam exatamente de sua característica particular.


Assim, parece existir um forte apoio universal para o trabalho de Alejandra e sua ferramenta. Parece ser uma daquelas coisas que ninguém pensou em fazer até que alguém apareceu com ela, e então parece óbvio sua necessidade para todos.


Uma abundância de backporting


Luis R. Rodriguez apontou um problema crescente na forma como eram recebidos os backports de novos controladores. Ele disse: "Hoje nós adaptamos um downgrade de cada novo driver para os últimos 30 kernels, de 2.6.24 até 3.14, e enquanto isso é gerenciável agora espero que o número de drivers e recursos suportados continue a aumentar (eu parei a contagem). Estou ciente das razões pelas quais apoiamos uma série de kernels antigos, mas também acho que é nossa culpa por não educar o suficiente os usuários sobre a importância do upgrade".


Ele forneceu um link [2] para um argumento longo, escrito em favor da automatização do processo de portar drivers de volta usando Coccinelle [3]. Para começar, Luis perguntou, qual foi o kernel mais antigo que realmente ainda precisava ser suportado? Era realmente o kernel 2.6.25, ou poderia ser a partir do 3.0 sem que ninguém tenha problemas?


Felix Fietkau do OpenWrt (uma distribuição Linux embarcada) respondeu que o projeto OpenWrt possuía um único kernels com suporte antigo e este era o kernel 3.3, assim, limitar o suporte ao kernel Linux da versão 3.0 em diante não iria afetá-lo. Arend van Spriel também respondeu a Luis, dizendo: "Um monte de equipes de testes da equipe de WLAN da Broadcom ainda está usando o Fedora 15 executando sobre um kernel 2.6.38. Estamos tentando atualizá-los para o Fedora 19 ", que, como Luis apontou, executa o kernel 3.13.


Para Felix, Luis destacou que a versão 3.3 do kernel do OpenWrt realmente não foi listada no kernel.org como sendo suportada. Luis disse: "Estou feliz em levar as novidades para aqueles que utilizam kenel novo agora, mas em última análise, também seria bom se nós não precisássemos sequer testar os ports entre as versões do kernel antigas ou não listadas." Ele acrescentou: "Contudo isso levanta a questão de quantas vezes um kernel aparece em uma lista de kernels suportados eventualmente. Greg, Jiri, vocês por acaso sabem me dizer?"


Greg Kroah-Hartman respondeu: "Eu não sei de nada, nunca quis ser pego dizendo que uma versão era suportada depois dizer que não iria mais ser suportada. "Luis perguntou:" Quanto tempo depois de um lançamento você mencionou se ele seria ou não suportado?" Greg respondeu: "Eu só mencionei isso na época em que a versão já estava normalmente em seu ciclo de fim de vida.


"Por exemplo, a versão 3,13 acabou de ser lançada e foi uma versão "de longo prazo", só digo alguma coisa depois do tempo normal onde a versão já não seria suportada, coisa de 3 semanas. "Então, para a versão 3.14, não vou dizer nada até que a versão 3.16-rc1 seja lançada, mais ou menos duas semanas ou três depois."


Luis também perguntou: "Você está ciente de que qualquer distribuição não irá escolher um kernel sem suporte em sua próxima escolha de ambiente?" Ao que Greg disse: "Claro, muitos já fazem isso, como eles alinham-se com os ciclos de lançamento (eu só escolheria um kernel do longo prazo para manter a cada ano). Olhe para os lançamentos do Ubuntu como exemplos disso. Também temos o openSUSE e o Fedora (embora o Fedora faça revisões de seu kernel com bastante regularidade) não costumam alinhar suas versões. As distribuições "comerciais" são diferentes, mas, mesmo assim, elas nem sempre se alinham".


Luis respondeu, "dado que algumas distribuições podem escolher um kernel intermediário e tem também boa parte de seu histórico baseado nos backports, foi criada uma tentativa de orientar as pessoas sobre o kernel 2.6.32 (http://www.Kroah.com/log/linux/2.6.32stable.html) que agora está a um pouco antigo, e vou manter o suporte aos backports apenas para as versões 3.0 em diante, mas vamos incluir todas as séries do kernel 3.0 até a versão mais recente. Isso deve reduzir o tempo de compilação/teste/suporte dos backports pela metade".


Mas, Greg pensou que a versão 3.0 pareceu uma escolha arbitrária, porque, como ele disse: "Isso não é suportado por mais nenhum dos 'novos hardwares'." Ele sugeriu colocar o limite inferior do kernel 3.2, que foi utilizado na versão estável do Debian.


Johannes Berg objetou que sua organização, a Soluções SIP, tinha a necessidade de utilizar o kernel 3.0 para "um projeto em andamento." Takashi Iwai também apontou que o SUSE Linux Enterprise Server 11 também precisava do kernel 3.0. Luis respondeu: "Essas são duas partes interessadas na versão 3.0 – mas ninguém reportou precisar de mais nada em relação ao kernel antigo. Hoje vou rasgar os kernels mais antigos e deixá-los no esquecimento. Obrigado por todo o feedback!".


Mas, Arend van Spriel lembrou Luis que ele já tinha manifestado a necessidade de uso do kernel 2.6.38. Luis respondeu que isso era pelo menos melhor do que a versão 2.6.25. A discussão desviou-se nesse ponto, mas parece que haverá novas restrições quanto aos kernels antigos receber backports, sempre em relação ao interesse da escalonabilidade e da adequação de atualizar os pacotes para acompanhar as novas versões do kernel.


Dando o boot em mais do que apenas Windows


Por qualquer motivo, o Windows ainda parece fazer certas coisas melhor do que o Linux – como a obtenção de testes pelos fornecedores de hardware. Steven Rostedt informou recentemente que um de seus sistemas de teste estava falhando para reiniciar quando era suposto. Ele rastreou o problema e criou um patch que mudou a lógica que envolve os métodos de reinicialização EFI e CF9. O EFI (Extensible Firmware Interface) é uma substituição do antigo BIOS desenvolvido pela Intel. O CF9 refere-se à porta 0xCF9 que pode ser usada para desencadear uma incialização forçada.


Aubrey Li, Matthew Garrett, e H. Peter Anvin tentaram trazer o problema a tona. Em um ponto, Matthew observou, "um hardware de produção nunca deveria exigir CF9" para reiniciar sistemas, sendo que hardwares em produção são enviados para os clientes, ao contrário dos hardwares da pré-produção que ainda estão sendo testads e refinados antes das vendas reais.


Pedro disse a Matthew: "Há um monte de coisas que não deveriam ser enviadas para os clientes finais sem exaustivos testes, no entanto, isso é feito mesmo assim." E ainda arrematou: "O Windows não bate com a política do CF9, seu hardware de produção é sempre testado com Windows, então, acrescentar o CF9 pode fazer as coisas funcionarem em algumas situações, mas devem parar de funcionar corretamente em outras – seria melhor gastar o nosso tempo tentando descobrir por que os sistemas que parecem precisar de CF9 não funcionam bem de outra forma".


Linus Torvalds também respondeu à observação de Matthew dizendo que hardware produção nunca deve exigir a reinicialização via 0xCF9. Ele disse: Isso é burrice total. O fato é que, podemos até estar fazendo algo errado, mas a ACPI falha em um monte de sistemas. Uma enorme faixa de máquinas Dell, em particular, por algum motivo (laptops, desktops etc.) falham quase sempre. E a EFI não é a mesma coisa nessa corrida. O controlador do teclado é, infelizmente, não confiável também, embora eu realmente não entenda o porquê. Mesmo quando existe um controlador de teclado legado (que não é tão universal como você pensa, mesmo que o hardware esteja praticamente garantido para estar lá no chipset, ele pode ser desativado), parece haver máquinas onde o linha de reset não está ligada. Não me pergunte por quê.


O mesmo vale para o caso de uma falha falha tripla de hardware. Resultado final: há um monte de máquinas que parecem querer o PCI legacy BIOS ou reinicialização para funcionar. E tem absolutamente zero coisas a fazer sobre isso mesmo quando o hardware é um "hardware de produção." Seria interessante se alguém pudesse descobrir exatamente o que o Windows faz neste sentido, porque o fato de que um monte de máquinas Dell consegue satisfazer seus caprichos com Windows quase certamente significa que somos nós que estamos fazendo algo errado. A Dell não costuma fazer muitas coisas estranhas nem extravagantes. Eu praticamente posso garantir que é porque nós fizemos algo de estranho que o Windows não faz.


De qualquer forma, alegando que não deve ser necessário o método PCI é viver algum tipo de sonho na terra. O fato é que todos os outros métodos são igualmente problemáticos, ou ainda mais.


Matthew disse que o uso de 0xCF9 pode de fato resolver certas questões como a falha ACPI, mas ele disse, "a correção real é descobrir como o firmware é feito e corrigi-lo. Caso contrário, vamos passar o resto de nossas vidas mantendo uma lista DMI gigante que ainda vai estar faltando entradas". Matthew apontou ainda que falhas ACPI provavelmente tinham a ver com "outros métodos de reinicialização deixando determinado hardware em um estado diferente do que o Windows faz".


Quanto à pergunta do Linus sobre o que o Windows realmente fez nestes casos, Matthew disse, "O Windows atinge o controlador do teclado e, em seguida, tenta atualizar a ACPI. Em seguida, ele dorme por um período curto, em seguida, tenta novamente acessar o controlador do teclado e o vetor ACPI novamente. Isto significa que os sistemas que colocam o CF9 no vector ACPI tendem a trabalhar por causa da segunda gravação, o que obviamente não é o que a especificação previa, mas aqui estamos. A única vez que ela atinge o CF9 é quando as tabelas ACPI lhe dizem para fazer isso".


Linus discordou de toda essa linha de raciocínio. Em particular, ele disse: "Não estão jogando jogos com os outros métodos de reinicialização". Ele disse que o ACPI foi o método padrão que foi julgado em primeiro lugar e continuou: "O boot ACPI falha em toneladas de máquinas. Não deveria falhar mas está. Estamos fazendo algo suficientemente diferente do Windows onde o ACPI não funciona direito. Em algum momento houve alguma conversa sobre habilitar VT-d na inicialização, mas não desativá-lo antes da reinicialização, mas isso é apenas uma teoria. E dado este fato, sua negação de que "a reinicialização via PCI nunca deve ser usada" é contrafatual. Pode ser verdade teoricamente e é assim que o mundo deveria trabalhar, mas no mundo real é apenas uma porcaria".


Linus acrescentou que já tinha se oferecido para testar correções na última vez que a questão tinha surgido, porque ele tinha acesso a uma das máquinas afetadas, mas que ninguém o havia enviado qualquer caso de teste.


Matthew reconheceu que o kernel tentou inicialização ACPI antes de outras tentativas, e esclareceu: "Nós tentamos usar ACPI. Isso às vezes funciona, mas com pouca freqüência. Nós então utilizamos o controlador do teclado. Isso geralmente funciona. Em seguida, tente novamente o ACPI, que normalmente funciona porque muitas vezes é a segunda opção de gravação do CF9. Em seguida, tente utilizar o controlador de teclado novamente, porque isso é o que o Windows faz."


Ele prosseguiu: "Mas qualquer desses acessos poderia ter gerado um SMI. Todos nós sabemos que o firmware está executando enormes quantidades de códigos em resposta a qualquer daqueles registros de acessos. Não sabemos o que os outros hardwares exigem de código. Não sabemos quais são as expectativas que o hardware tem. Não sabemos se o código foi escrito por seres humanos ou escrito por algum tipo de mecanismo de reconhecimento simulado que finalmente entrou em colapso em um estado onde o Windows teria reiniciado e, em seguida, enviado (ou mesmo código de seres humanos se comportando de forma estranha a partir de um mecanismo de reconhecimento simulado)".


Em relação ao 0xCF9, Matthew também disse: "Sabemos que o CF9 corrige o problema de algumas máquinas. Sabemos que ele quebra também algumas máquinas. Nós não sabemos quantas máquinas são corrigidas ou quantas máquinas quebram. Não sabemos quantas máquinas acabam aparecendo em estado de trabalho quebrado sempre que a ordem ou a introdução de novas heurísticas acontece. Não sabemos quantas vão voltar do estado quebrado para o estado de funcionamento. A única maneira que nós podemos estar razoavelmente certos de que o hardware vai trabalhar é duplicar exatamente o que o Windows faz, porque isso é tudo o que a maioria dos desenvolvedores nunca testam. Embora possamos saber exatamente o que o Windows faz em termos de acionamento da reinicialização, não sabemos tudo o mais que é feito no caminho do desligamento e isso é diferente para coisas como instrumentos controladores incorporados acessados via emulador qemu.


Linus respondeu que se livrar de 0xCF9 não era uma opção – ele simplesmente é necessário para inicializar determinados sistemas, incluindo hardware de produção. No entanto, ele disse que queria identificar o que foi que o Windows fez que o Linux não está fazendo para corrigir esse código. Ele reiterou seu pedido de correções e casos de teste.


A discussão se esgotou em torno disso; mas, é interessante ver Linus dizendo que o Windows fez algo melhor do que o Linux. É verdade que há razões práticas por trás disso, como a idéia de que os fornecedores de hardware podem concentrar seus esforços de garantia de qualidade no Windows e garantir mais suporte ao Linux. Ainda assim, é bom ver que não há uma afirmação dogmática entre o pessoal de Linux sobre tudo o que é Linux é superior a tudo que é Windows. É bom ver a utilidade e valor do reconhecimento da qualidade de determinado produto, independentemente de quaisquer outros detalhes da situação.


Mais informações


[1]


O autor

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.

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Forte defesa

A maioria dos sistemas operacionais afirma ser segura; no entanto, a maioria não terrivelmente não é. O iniciante QubesOS tenta uma abordagem diferente, contando com um microkernel e com virtualização generalizada.


Por Tobias Eggendorfer


Será que o mundo realmente precisa de outro sistema operacional que afirma ser totalmente seguro? Já temos o OpenBSD, que relatou apenas duas vulnerabilidades remotas nos últimos 16 anos – e os outros que podem apenas sonhar que tenham este tipo de segurança.


O OpenBSD também faz tudo certo em termos de concepção: garante a segurança através da gestão de alta qualidade, incluindo revisões de código, padrões de codificação e testes automatizados. Segundo a maioria dos especialistas, verificando o código é essencial para qualquer sistema seguro, porque a maioria de todos os problemas de segurança graves são atribuíveis a erros de programação bem conhecidos. Quebras podem ocorrer devido a estouros de buffer, vulnerabilidades de formato de seqüência de caracteres, erros off-by-one, e às vezes também por causa da inicialização incorreta dos geradores de números aleatórios.


Além destas medidas [1], o OpenBSD incorpora uma série de obstáculos adicionais [2], que complicam de forma significativa os ataques caso um bug relacionado com a segurança seja encontrado.


Até a Microsoft copiou esta parte da estratégia para o Windows. Como regra básica, a prevenção é melhor do que o remédio. Todos os recursos de segurança adaptados, como o espaço de endereço Layout Randomization, são reativos, o que significa que eles não resolvem o erro de programação subjacente.


Mesmo as abordagens bem-sucedidas que têm sido tomadas pelo OpenBSD ainda não vão longe o suficiente, de acordo com a polaca Joanna Rutkowska, pesquisadora de segurança. Ela também considera as melhorias artificiais, tais como SELinux, que é ineficaz. Rutkowska é mais conhecida por seu trabalho com o BluePill [3], que é um rootkit que ataca o sistema convidado de dentro do hypervisor. Rutkowska está atualmente trabalhando no QubesOS [4], que está disponível sob a licença GPLv2.


Separação da interface de usuário


Uma das principais críticas de Rutkowska sobre as soluções de segurança existentes é a falta de segurança no X11: por causa da idade bíblica do sistema de janelas X, os aplicativos não estão suficientemente isolados uns dos outros. Como uma demonstração simples, ela propôs um pequeno teste com a ferramenta xinput padrão e duas janelas de terminal. Depois de entrar o comando xinput sem parâmetros, você verá uma lista dos dispositivos de entrada disponíveis. Eu segui esta sugestão em nosso laboratório, como você pode ver na figura 1, digitando:


xinput test 8

onde 8 é o local do teclado que estou usando. Desse momento em diante, todas as teclas aparecem como códigos de varredura (figura 2), mesmo que a pessoa digitando usa o segundo terminal – ou esteja trabalhando com privilégios de root. No exemplo, eu inicialmente entrei o comando su -, que produziu os primeiros oito scancodes. Então continuei com Enter até a raiz do Kali VM – você pode verificar que o X11 é muito inseguro. No lado positivo, este ataque sniffing não funciona para o encaminhamento X11 via SSH – assim os invasores, pelo menos, não podem farejar os comandos inseridos por uma pessoa que trabalha em um computador remoto.


A entrada de dados local para o sistema remoto pode ser gravada. Tecnicamente, seria possível impedir o acesso sob a esfera do outro usuário ativo depois de entrar o comando su -, mas isso seria só um paliativo, porque nenhum aplicativo deve receber dados de qualquer outro.


Separação da camada de aplicativos


Em vez de executar aplicativos lado a lado, o QubesOS define níveis de segurança adequados para determinados grupos de aplicativos. Estes grupos são executados em separado no Xen VMs, que isola os aplicativos muito mais eficazmente do que um sistema operacional normal faria. Este encapsulamento vai mais longe do que em um ambiente chroot, em que os sistemas compartilham recursos de hardware, tais como placas de rede. Você pode argumentar que esse tipo de medida de segurança não exige a criação de uma nova distribuição do sistema operacional. Ferramentas de virtualização, como o Parallels, VirtualBox ou VMware são capazes de fornecer um nível semelhante de isolamento; no entanto, uma solução VM é tão segura quanto o sistema operacional host. O QubesOS opta por uma série mínima, que prevê apenas a interface gráfica de usuário: opcionalmente, KDE ou Xfce. Todo o resto, que inclui hardware, como a placa de rede ou disco, são executadas em VMs separadas (figura 3). Porque o sistema anfitrião não tem acesso à rede, apenas alguns componentes precisam de atualizações, que o administrador instala na linha de comando [5].


Enganação rede


A terceirização da conexão de rede oferece outra vantagem: se você precisa de um túnel para o seu escritório através de uma VPN, poderá criar uma máquina virtual de rede que estabelece a conexão VPN e, em seguida, usa o adaptador de rede que fornece com outras VMs. Em outras palavras, vários ambientes de segurança podem compartilhar um túnel VPN que é completamente transparente para o indivíduo VM, que também não vê nada de sua própria rede. Em seu blog, Rutkowska propõe instalar o proxy Tor [6] sobre uma placa de rede VM. O aplicativo VM não percebe que a placa de rede está fazendo mais do que o habitual – em particular, não se pode contornar o proxy Tor. Como consequência: todo o tráfego de rede é anônimo. Esta abordagem impede que os ataques habituais sobre anonimização por, digamos, plugins do Flash.


Pequeno é mais bonito


Além de boa abstração de hardware e encapsulamento, uma outra característica positiva do QubesOS é sua arquitetura microkernel: Programas classificados como seguros devem ter menos de 0,5 erros por 1.000 linhas de código; a média para programas típicos tem de três a cinco erros [7]. Nem todos os erros são relativos à segurança; muitos são simplesmente irritantes. No entanto, a maioria das vulnerabilidades exploradas atualmente são causadas por erros de programação típicos. À medida que o número total de erros diminui, o mesmo acontece com o número de bugs relacionados à segurança. Já que um micronúcleo tem menos linhas de código, obviamente tem menos erros e, assim, menos vulnerabilidades. Vulnerabilidades no kernel são especialmente perigosas, então caso seja possível evitá-las, isso será especialmente interessante.


Independente de plataforma


Graças ao seu modelo orientado à VMs, o QubesOS é bastante fácil de configurar; uma nova máquina virtual é definida rapidamente. O modelo padrão no Qubes R2 Beta 2 é baseado no Fedora 18 (64-bit); Inicialmente, o usuário pode escolher entre três códigos de cores para aplicativos das VMs – trabalho, pessoais e aleatórios. As muitas dicas sobre o site também ajudam os usuários a começar.


Usuários do Qubes OS não estão restritos a um sistema operacional por causa do hypervisor Xen subjacente e sua tecnologia de virtualização. Diferentes sistemas podem ser executados em diferentes VMs. O wiki para trocar informações com os colegas na Internet poderia ser baseado em OpenBSD, por exemplo, por razões de segurança. Arquivos do MS Office já não precisam de um aplicativo: é possível lê-los nativamente na VM Windows. Esta concepção cria um elevado grau de flexibilidade e segurança.


Teste de overhead substancial


Se você quiser experimentar rapidamente o QubesOS R2, terá que ultrapassar um grande obstáculo: a lista de compatibilidade de hardware [8] é muito curta. Os ambientes de virtualização (Parallels, VirtualBox, VMware Fusion) no sistema de teste, utilizamos inicialmente OS X 10.7.5 porque este sistema estava disposto a cooperar com o Qubes.


Os problemas com a virtualização são sublinhados por uma nota encantadora no site do Qubes, pedindo aos usuários que se abstenha de publicar novos pedidos para a equipe de desenvolvedores, relativos à execução de Qubes em ambiente virtual – porque isso simplesmente não funciona. Relatórios individuais sobre vários sites [9] supostamente tem sucesso na execução de Qubes OS em um ambiente de virtualização aninhado.


Em última análise, me virei para um velho laptop e iniciamos outro teste; o Qubes foi baixado [10] e gravado em um DVD da maneira antiga. Depois de uma quase três horas de duração da instalação, a equipe de teste, pelo menos, conseguiu adicionar um novo dispositivo à lista de compatibilidade: um Macbook Pro a partir de 2007.


Conclusão


Embora o conceito por trás do Qubes OS não seja revolucionário –- processos de separação de aplicativos levaram algum tempo – a utilização diária do sistema e sua excelente flexibilidade, em combinação com o design e a abstração do dispositivo a ser considerado, fazem do QubesOS um sistema bastante singular.


Dito isto, no entanto, o sistema ainda não é adequado para todos os tipos de usuários, e fornece uma compatibilidade de hardware limitada. Também – como é de se esperar de uma versão beta – alguns erros precisam ser corrigidos [11]. Mas, tenha certeza de que você pode estar a frente de um sistema bem concebido e, acima de tudo, de um sistema de seguro.


Mais informações


[1] Predictable RNG: http://www.debian.org/security/2008/dsa-1571 [2] Secure OpenBSD: http://​­www.​openbsd.​­org/​­security.​­html [3] “Blue Pill” rootkit: http://​­theinvisiblethings.​­blogspot.​­de/​2006/​­06/​­introducing‐blue‐pill.​­html [4] Qubes OS: http://​­qubes‐os.​­org [5] Dom0 updates: http://​­qubes‐os.​­org/​trac/​­wiki/​­SoftwareUpdateDom0 [6] Networking with Qubes: http://​­theinvisiblethings.​­blogspot.​­de/​2011/​­09/​­playing‐with‐qubes‐networking‐for‐fun.​­html [7] Bug rates in software: http://​­www.​sei.​­cmu.​­edu/​­library/​­abstracts/​news‐at‐sei/​­wattsnew20041.​­cfm [8] List of compatible hardware: http://​­qubes‐os.​­org/​­trac/​­wiki/​­HCL [9] Qubes on a VM: http://​­www.​extremetech.​­com/​­computing/​­84168‐nearbulletproof‐qubes‐os‐goes‐beta [10] Beta 2 of Qubes R2: http://​­qubes‐os.​org/​­trac/​­wiki/​­QubesDownloads [11] Bugs in Qubes OS: http://​­qubes‐os.​­org/​­trac/​­report/​­3


Figura 1 A ferramenta de linha de comando xinput mostram dispositivos de entrada.


Os


Figura 2 códigos de digitalização do xinput para meu teclado – neste caso, antes entrei com o comando su - seguido pela senha do root. Figura 3 A arquitetura do QubesOS: dependendo de seus requisitos de segurança, os pedidos são designados pelos aplicativos das VMs.


 


O autor

Tobias Eggendorfer é consultor e professor freelancer de TI, baseado em Munique. Ele não aprecia reconfigurar seu próprio hardware, e espera que novos recursos de segurança suportem a integração fácil e transparente. Apesar de a bridge com Squid ter como objetivo proteger sistemas Windows®, que Tobias normalmente não usa, ele não pretende baixar e testar programas malévolos para ver se rodam no Qemu.

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Dualidade virtual

Para os utilizadores ocasionais do Windows, uma máquina virtual é a solução ideal. mas será o Windows 8.1 trabalho no VirtualBox e VMware?


Por Thomas Leichtenstern


A vida sem o Windows simplesmente não funciona para muitos usuários. Algumas ferramentas simplesmente não têm uma equivalente em Linux, e outras situações requerem o Windows para compatibilidade com colegas de trabalho ou clientes. Uma solução fácil é executar aplicativos do Windows diretamente no Linux usando a API do Wine. No entanto, o Wine não suporta todas as versões de todos os programas. Outra alternativa é o dual-boot, mas uma configuração dual-boot requer que você reinicie seu computador sempre que quiser mudar de sistema.


A alternativa mais popular nas redes de hoje é executar o Windows em uma máquina virtual em um host Linux. A tecnologia VM é tão madura que, em utilização normal, é difícil dizer a diferença entre o Windows de uma máquina virtual e de um sistema físico (uma exceção são os jogos, que tendem a funcionar melhor sem virtualização).


Os maiores players do mercado para virtualização de desktop do Windows no Linux são VirtualBox [1] e VMware Workstation [2]. Vamos ver como essas alternativas de virtualização líderes de mercado trabalham com as mais recentes versões do Windows.


VMware


Em setembro de 2013, a VMware publicou o décimo lançamento de seu software comercial VMware para estação de trabalho. O preço de uma nova licença é de EUR 225, ao passo que um upgrade de uma versão anterior custa EUR 110. Como uma grande inovação, a empresa anuncia suporte para o Windows 8,1; no entanto, o perfil do dispositivo de correspondência ainda está ausente.


Neste teste, usei o perfil para a versão 8.1 de seu antecessor, o Windows 8 64-bits (figura 1). A posterior instalação do Windows foi concluída sem quaisquer problemas em nosso laboratório. Em uma nota positiva, o Windows 8.1 vem com suporte rudimentar VMware: O mouse e teclado sem problemas passar para a máquina virtual, assim que o ponteiro do mouse toca painel do Windows.


Extensões


Para aproveitar todo o potencial do sistema na máquina virtual, você ainda precisa instalar as extensões de convidados. Após a inicialização do sistema, selecione VM | Install VMware Tools.


Isso informa ao software para montar uma imagem ISO contendo as extensões de convidados a partir da unidade de DVD da máquina virtual. Para iniciar a instalação, basta clicar em Configurar. Na caixa de diálogo que se segue, é possível definir quais os controladores e as características que você deseja instalar (figura 2). O software inclui drivers especialmente adaptados para mais ou menos todas as áreas do sistema que não só melhorar significativamente a manipulação, mas também prometem um aumento de desempenho substancial, incluindo o redimensionamento dinâmico do convidado para o formato da janela predefinido. Para ativar esse recurso, selecione Exibir | Autosize | Autofit Guest.


Se você quiser trabalhar diretamente com os aplicativos do Windows, pode fazê-lo no modo Unity, clicando no botão com o nome do programa na barra de menu. Ela isola os programas em execução a partir do desktop Windows (figura 3) e torna os aplicativos disponíveis no Linux. Para que você possa acessar qualquer programa no Windows, a VMware criou seu próprio inicializador de aplicativos, que aparece no menu superior direito quando é habilitado o Unity. No entanto, este modo só funciona no modo de exibição desktop. Ao executá-lo no modo de exibição Tiles, ele ocupa a tela inteira. Unidades não funcionam perfeitamente no modo desktop, ou; por exemplo, se você clicar em uma imagem no Explorer, um aplicativo de tela cheia aparece e mostra a imagem. Para fechá-lo, primeiro você deve voltar para as telas e só depois voltar para o desktop.


Arrastar e soltar arquivos de e para o sistema convidado funciona perfeitamente. As transferências de dados na direção oposta, no entanto, não funcionam corretamente no openSUSE 12.3 e no Windows 8.1 se comportou bem em cooperação com a área de transferência compartilhada. O VMware Workstation transferiu facilmente arquivos individuais e pastas inteiras do diretório host para o convidado e também o contrário. Texto ou URLs são trocados desta maneira, copiando e colando entre as máquinas virtuais e reais.


O mundo lá fora


Integrar pastas compartilhadas no sistema convidado também funcionou perfeitamente. Você vai encontrar esta função nas configurações para a máquina virtual abaixo de Opções | pastas compartilhadas. Quando especificar o nome, a pasta desejada será exibida no directório dos clientes.


No entanto, o VMware não é montado como uma unidade diretamente, mas como um cliente VMware na rede. Para atribuir uma letra de unidade, clique com o botão direito e selecione Conectar unidade de rede a partir do menu de contexto. Para uma abordagem ainda mais fácil, permita o mapeamento da unidade de rede em clientes Windows na configuração descrita acima. Neste caso, a própria VMware atribui uma letra de unidade para o compartilhamento e o monta diretamente.


Outro ponto importante para máquinas virtuais é o envio de softwares através da interface USB física para o hóspede virtual. O VMware Workstation funciona quase perfeitamente aqui. O sistema convidado é detectado imediatamente mesmo que sejam dispositivos exóticos, como smartphones e é permitido o acesso a eles, assim como aconteceria com um PC físico (figura 4).


Dos cinco pendrives USB testados, o VMware detectou imediatamente todos eles e os montou no sistema. A webcam conectada estava pronta para uso em poucos segundos.


Apenas um dispositivo DVB-T Pinnacle se recusou a cooperar, por falta de um driver apropriado. O VMware também suporta uma interface USB 3.0. Se um dispositivo USB conectado não estiver diretamente disponível na máquina virtual – por exemplo, porque está em uso pelo host – clique em VM | Dispositivos removíveis. Na metade inferior deste menu drop-down existe uma lista de opções onde estão listados todos os dispositivos USB identificados. Para ativar um deles, clique no dispositivo e em seguida, selecione Conectar (Desconectar do host) a partir do submenu.


O VMware atualmente não oferece suporte de vídeo 3D para o Windows 8.1, e o suporte para impressora integrada supostamente permite imprimir em impressoras de rede, por exemplo, o que também não é muito brilhante. Após habilitar o recurso, o Windows lista todas as impressoras na rede (figura 5) e permite que você imprima qualquer documento. No entanto, a saída em nosso laboratório foi de texto simples e inutilizável pelo Postscript.


VirtualBox


Mesmo software de virtualização da Oracle VirtualBox livre para uso doméstico foi atualizado para incluir o suporte do Windows 8.1 na versão mais recente, e os desenvolvedores têm contribuído um perfil correspondente. Em nosso laboratório, novamente a instalação do Windows 8.1 com o convidado (Figura 6). A troca de dados foi possível através desta interface mas comparativamente complicado.


Número errado?


Ao contrário do VMware, o VirtualBox não mostra uma marcação que aponte para o novo dispositivo pedindo que você clique para confirmar quando o dispositivo é conectado via USB. Depois de ligar o dispositivo USB no VirtualBox, clique com o botão direito no ícone USB na barra inferior para exibir o menu de contexto e, em seguida, selecione o dispositivo desejado.


Embora a versão anterior ainda tenha problemas significativos com a integração de dispositivos USB, a versão atual se comportou bem. Se dispositivos USB ou smartphones que utilizam MTP (Media Transfer Protocol) forem conectados, o VirtualBox irá identificar todos os dispositivos corretamente e também montar corretamente no sistema de arquivos (o MTP é usado para transferir arquivos via USB para um PC ou impressora; em contraste com seu antecessor, o PTP (Picture Transfer Protocol), que requer drivers específicos do dispositivo).


A reprodução de som na máquina virtual foi problemática, pois exigia que fosse clicado constantemente no botão de som. Alternar a infraestrutura de áudio de PulseAudio para ALSA corrigiu este problema. Embora o ruído não tenha desaparecido completamente, os cliques eram muito menos freqüentes do que antes. A utilização do cartão de som virtual ICH sob AC97 removeu esse fenômeno inteiramente na versão anterior, mas isso se deve ao fato de o Windows 8.1 não suportar este dispositivo, ou seja, você terá que conviver com alguns barulhos e estalos na reprodução de som.


Conclusão


O VMware e o Windows 8.1 interagem de forma confiável um com o outro em sua maior parte, ultrapassando as fronteiras entre o convidado e o host. A reprodução do som não confiável, a impressão é inutilizável, e o recurso de arastar e soltar a partir do host para o convidado mancha os resultados que de outra forma seriam satisfatórios.


Com o VirtualBox a história é diferente. Muitos recursos funcionam mal ou não funcionam inteiramente bem, desde os estalos e crepitação na saída de som até o recurso de arrastar e soltar completamente sem função. Claro que deve-se levar em conta que a Oracle, seu forneceder, oferece este software gratuitamente para usuários domésticos.


Assim, se você prefere um sistema com menos problemas, aconselhamos a pagar o preço de EUR 225 para comprar a licença do VMware. Dito isto, é importante frisar que, se você pode viver com alguns inconvenientes, poderá ser muito mais bem servido com a versão gratuita do VirtualBox.


Mais informações


[1] VirtualBox: http://​­www.​­virtualbox.​­org [2] VMware: http://​­www.​­vmware.​­com/​products/​­workstation/


Figura 1 Versão 10 do ambiente de trabalho VMware só vem com um perfil para o Windows 8, mas funcionou bem com o Windows 8.1 em nosso laboratório. Figura 2 O VMware solicita a instalação de extensões para convidados, que oferecem uma gama de controladores adicionais especialmente concebidos para a cooperação entre o Windows 8.1 e a máquina virtual.


Se


Figura 3 você prefere ver seu desktop Linux enquanto estiver usando ferramentas do Windows, o recurso de unidades irá proporcionar isso. Além disso, este modo oferece um lançador de aplicativos que o Windows 8.1 agora não tem. Figura 4 O VMware facilmente manipula conexões USB ainda comparativamente complicadas via MTP


As


Figura 5 aparências enganam: embora a extensão permita imprimir a partir da máquina virtual, ela não mantém a formatação original do documento. As impressões eram de texto simples com código Postscript.


Assim


Figura 6 como o VMware, pontos de montagem compartilhados no VirtualBox tornam-se compartilhamentos de rede no Windows.


 


O autor

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Grafitado

O Graphite converte confusas colunas de dados de séries temporais em diagramas úteis, exibindo as tendências do sistema operacional e as métricas de aplicativos em um piscar de olhos.


Por Jens-Christoph Brendel


O Graphite [1] é um sistema de gráficos em tempo real estruturado hierarquicamente (figura 1). Um cliente coleta os dados a partir da fonte, e um daemon Graphite (Carbon [2]) na porta TCP 2003 recebe os dados e os armazena em um banco de dados chamado Whisper. Um aplicativo web, então, colhe os dados desse banco de dados e cria os gráficos. O cliente pode ser programado pelo usuário ou pode vir como um daemon preparado (por exemplo, collectd [3]). Se o cliente desejar mensurar os próprios aplicativos, pode enviar os dados de desempenho para um cliente como o statsd [4].


Instalação


A maneira mais fácil de instalar o Graphite é a partir do repositório de pacotes da distribuição. O programa está disponível em algumas das mais recentes distribuições, como Fedora 20 ou Ubuntu 14.04 LTS. O usuário também pode encontrar imagens prontas para uma solução de virtualização como Docker. Uma busca simples exibe uma série de imagens Graphite. Claro, também é possível instalar o programa a partir das fontes do Git [5]. Neste caso, no entanto, considere que nem todas as versões das bibliotecas necessárias trabalharão bem em conjunto, ao passo que os mantenedores de pacotes assumiram a tarefa de classificar isso para o usuário.


Todos os pacotes vêm com arquivos de configuração preparados. Eles contêm padrões razoáveis, de forma que o usuário não terá muito a editar. O Fedora contempla os arquivos de inicialização necessários, mas eles não são ativados para iniciar automaticamente em um determinado nível de execução.


Cliente exemplo


As fontes Git contêm um cliente de exemplo escrito em Python que está faltando no pacote Ubuntu. No entanto, isso não é o fim do mundo, porque é bastante fácil escrever um cliente em uma linguagem de escolha do usuário: usamos Perl para um exemplo neste artigo (listagem 1). A única coisa que o cliente tem a fazer é enviar uma string de texto no formato


<metric_name> <metric_value> 
<metric_timestamp>

para a porta 2003 no servidor Graphite. O timestamp é um valor inteiro em tempo Unix (ou seja, o POSIX time ou Epoch time), que é o número de segundos de 00:00:00 de quinta-feira 1 de janeiro de 1970 no Coordinated Universal Time (UTC). O cliente exemplo na listagem 1 envia os valores médios de carga dos últimos 1, 5 e 15 minutos (linhas 22-24), que podem ser encontrados na guia de interface de usuário web sob o nó do sistema. Pontos no nome criam pastas na hierarquia; para criar um gráfico, basta clicar em um dos valores no aplicativo web.


Collectd


Uma alternativa para um cliente auto-gravável é o collectd. Este daemon, que está disponível na maioria das distribuições do sistema de gerenciamento de pacotes, pode entregar uma variedade de dados de desempenho ao Graphite. O arquivo de configuração collectd, /etc/collectd/collectd.conf, precisará de algumas alterações. Temos que remover os caracteres de comentário antes da entrada do plugin write_graphite, adaptar a linha Host, e definir o protocolo para tcp.


O plugin rrdtool não é mais necessário e deve ser comentado. Além disso, devemos definir AutoLoadPlugin para true. Em seguida, ative os plugins desejados listados no arquivo de configuração; em seguida, reinicie o daemon com:


/etc/init.d/ collectd restart 

para enviar os valores dos plugins collectd ativados para o Graphite. Se o daemon está recebendo valores, o usuário verá a linha:


14/07/2014 12:38.21 :: 
MetricLineReceiver connection with
192.168.56.1:52981 established

no logfile /var/log/carbon/listener.log. Se não, uma mensagem de erro pode apontar uma linha mal formada. Se tiver problema com a conexão, analise o syslog do host collectd. Se tudo correr bem, uma entrada collectd aparece na exibição em árvore do host Graphite com todos os valores para os plugins collectd ativados (figura 2).


statsd


Se o usuário não estiver interessado em operar as métricas do sistema, mas no desempenho dos próprios aplicativos, o statsd será um grande aliado. Este daemon pode contar eventos, medir a duração deles, e fazer o buffer e a transmissão dos valores resultantes periodicamente para um backend como o Graphite. Bibliotecas para uma série de linguagens de programação podem incrementar os contadores, iniciar temporizadores, e enviar os resultados para statsd. Para iniciar statsd de /opt/statsd através do servidor Node.js do JavaScript, digite o comando:


/usr/bin/node ./stats.js ./localConfig.js 

Antes de fazer isso, no entanto, precisamos gerar ou editar o arquivo de configuração localConfig.js, que deve conter, pelo menos, as seguintes linhas (será preciso ajustar o endereço IP):


{ 
graphitePort: 2003,
graphiteHost: "192.168.56.102",
port: 8125
}

Neste exemplo, usamos o pacote Perl Net::Statsd para operar uma referência (listagem 2). Este script trivial primeiro cria uma string de 4KB de cada uma das letras a, b e c; em seguida, ele coloca o último caractere da string de caracteres na primeira posição até que a string atinja seu estado inicial. O script também mede a duração de cada passe e envia o valor através da UDP para statsd. O statsd, posteriormente, encaminha o valor para Graphite. Ao iniciar o script com um cronjob uma vez por minuto, é possível criar um gráfico como na figura 3.


Guia de interface do usuário web


A guia de interface do usuário web contém a exibição da árvore de todas as métricas configuradas no quadro à esquerda e mostra um gráfico resultante no quadro à direita. Se várias métricas têm uma faixa semelhante de valores, o usuário pode sobrepor gráficos. Em todos os outros casos, use o botão do painel, que leva a uma área em que é possível organizar uma série de gráficos na mesma janela, escolhendo métricas a partir da exibição de árvore à esquerda ou a partir de um menu em um quadro superior (figura 4). Cada métrica que o usuário escolher levará a um gráfico próprio. Se arrastar um gráfico para cima de outro, os gráficos serão combinados (figura 5). É possível salvar dashboards e recarregá-los mais tarde, e uma função de pesquisa permite procurar dashboards salvos. Tamanhos de gráfico, períodos de tempo exibido e intervalos de atualização automáticos podem ser personalizados.


Conclusão


O Graphite é liberado sob a licença Apache 2.0. Ele foi escrito por Chris Davis e é mantido e desenvolvido ativamente por Orbitz.com para “...visualizar uma variedade de dados de operações críticas, incluindo métricas de aplicações, banco de dados, métricas de vendas etc.”, e “... lidar com aproximadamente 160 mil métricas distintas por minuto em execução em dois servidores Sun niagra-2 em uma SAN muito rápida”[6]. O Graphite é, assim, melhor usado em ambientes que precisam monitorar milhares de métricas regularmente atualizadas em tempo real.


Mais informações


[1] Graphite: [http://​­graphite.​­wikidot.​­com] [2] Carbon: [http://​­graphite.​­wikidot.​­com/​­carbon] [3] collectd: [http://​­collectd.​­org] [4] statsd: [https://​­github.​­com/​­etsy/​­statsd/] [5] Graphite in Git: [https://​­github.​­com/​­graphite‐project] [6] Graphite capacity: [http://​­graphite.​­wikidot.​­com/​­faq#​­toc4]


Figura 1 O Graphite é estruturado hierarquicamente; vários componentes devem funcionar juntos.


Detalhe


Figura 2 da visualização da árvore Graphite das fontes de dados collectd.


Valores


Figura 3 passados a partir do índice de referência, instrumentado para statsd, e, em seguida, para o Graphite.


Escolha


Figura 4 as métricas para o painel.


Painel


Figura 5 com gráficos sobrepostos.


 


Listagem 1: Exemplo de cliente Perl


01 #!/usr/bin/perl 02 03 use strict; 04 use warnings; 05 use IO::Socket; 06 use Sys::CpuLoad; 07 08 my $remote_host = '192.168.56.102'; 09 my $remote_port = 2003; 10 11 # create Socket 12 my $socket = IO::Socket::INET ‐> new(PeerAddr => $remote_host, 13 PeerPort => $remote_port, 14 Proto => "tcp", 15 Type => SOCK_STREAM) 16 or die "Couldn't connect to $remote_host:$remote_port: $@ \n"; 17 18 19 while() { 20 my @lavg = Sys::CpuLoad::load(); 21 my $ts=time(); 22 print $socket "system.loadavg_1min $lavg[0] $ts\n"; 23 print $socket "system.loadavg_5min $lavg[1] $ts\n"; 24 print $socket "system.loadavg_15min $lavg[2] $ts\n"; 25 sleep(60); 26 } 27 28 close($socket);


Listagem 2: Instrumentação com Perl


#!/usr/bin/perl


use Time::HiRes qw(gettimeofday tv_interval); use Net::Statsd;


$Net::Statsd::HOST = 'localhost'; # Default $Net::Statsd::PORT = 8125; # Default


my $t0 = [gettimeofday];


my($one, $two, $three) = map { $_ x 4096 } 'a'..'c';


$s .= $one; $s .= $two; $s .= $three;


my $temp; for (my $i=0; $i<12288; $i++) { $temp=substr($s,length($s)‐1,1); $s=$temp.$s; $s = substr($s,0,12288); }


$elapsed = tv_interval ( $t0, [gettimeofday]); $elapsed = int($elapsed * 1000 * 1000);


Net::Statsd::timing('charbench', $elapsed);


O autor

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Direto para as nuvens

Criptografar o backup é muito fácil com o MCrypt e o utilitário S3cmd, da Amazon Web Services.


Por Chris Binnie


Uma das primeiras coisas que um professor de computação diz para seus alunos é: “lembre-se de fazer backup dos seus arquivos”. Isso já foi uma dor de cabeça no passado, mas não no presente. A nuvem tornou o backup mais fácil do que nunca. A configuração não é mais tão difícil como era antes, e não se faz mais necessário mexer aqui e ali com CDs, SSDs, fitas de backup ou outros meios físicos. Vários serviços baseados em nuvem especializaram-se em backup de nuvem, mas se o usuário estiver integrando seu sistema de backup com scripts padrão e práticas existentes, pode desejar um pouco mais de controle sobre como gerenciar o sistema de backup em nuvem. Neste artigo, descrevemos como criptografar uma coleção de arquivos ou arquivo usando MCrypt e fazer o upload do arquivo criptografado para a nuvem Amazon S3. Para ajudá-lo a entender melhor o processo de criptografia e examinar alguns recursos adicionais, vamos primeiro analisar duas ferramentas de criptografia simples.


MCrypt


O MCrypt [1] é uma ferramenta de encriptação simples, muito adequada para cenários de encriptação de backup. No Debian e no Ubuntu, instale-o usando simplesmente:


# apt‐get install mcrypt 

Este comando também disponibiliza o pacote libmcrypt4 em seu sistema. O MCrypt, que é uma versão mais moderna do crypt, leva uma senha e um salt (são dados aleatórios usados como input adicional para o processo de criptografia). Note que é possível aumentar a segurança através da compressão dos arquivos antes (não depois) executando MCrypt para aumentar a segurança do arquivo criptografado. Criptografar um arquivo é tão simples quanto digitar:


# mcrypt secret_doc.odt 

Em seguida, o usuário receberá as seguintes instruções:


Enter the passphrase (maximum of 512 characters) 
Please use a combination of upper and lower case letters and numbers.
Enter passphrase:

Observe que o MCrypt solicita repetir a senha duas vezes, e o usuário verá o arquivo secret_doc.odt.nc ao lado do documento original. A extensão de arquivo “.nc” provavelmente se refere às letras da palavra “criptografado” (“eNCrypted”, em inglês).


Mais opções


Se tiver o gzip instalado no seu sistema, comprima automaticamente o arquivo usando gzip com o parâmetro ‐z:


# mcrypt ‐z zipitbuddy.sh 

O nome do arquivo de saída será zipitbuddy.gz.sh. Usar uma flag -u significa que podemos desvincular o link do arquivo original. Use essa opção com cuidado: depois que o arquivo criptografado for criado, ele apaga o arquivo original, então não há como voltar atrás se a senha estiver incorreta. Este modo é muito útil para amarrar scripts rapidamente. Para usá-lo, insira:


# mcrypt ‐z ‐u mymiddlenameisdanger.cfg 

e para desempacotar seu presente empacotado de forma segura, digite:


# mcrypt ‐d ‐z mymiddlenameisdanger.cfg.gz.nc 

Claramente, a opção -d significa descriptografar. Observe a opção -z, que agora possui a tarefa de descompactar em oposição à compressão, para que o usuário não tenha que executá-lo através do gzip manualmente depois. O arquivo resultante não é mais comprimido, e o usuário é contemplado com o original: mymiddlenameisdanger.cfg.


Se o usuário abrir um arquivo criptografado com MCrypt em um visualizador de texto, como o less, verá uma expressão complexa em torno do algoritmo de criptografia padrão de 128 bits oferecido pela MCrypt:


^@m^C@rijndael‐128^@ ^@cbc
^@mcrypt‐sha1^@^U\<BD>^X<C4

A figura 1 exibe os algoritmos de encriptação disponíveis.


Editando o hash


Para alterar um algoritmo hash, use o parâmetro ‐h da seguinte forma:


# mcrypt ‐h tiger grrrr.doc 

O papel do algoritmo hash é criar um resumo simples, que é adicionado ao arquivo encriptado e usado para fornecer um checksum para detectar qualquer corrupção de arquivo de forma confiável. Usamos o algoritmo hash e o alteramos para tiger, que é uma das opções mostradas na figura 2:


# mcrypt ‐h tiger grrrr.doc 

Se analisarmos detalhadamente de um editor de texto, podemos detectar o tiger logo à direita, entre a expressão:


^@m^C@rijndael‐128^@ 
^@cbc^@mcrypt‐sha1^@
4Y<D8>`tiger^@?<98>a^S<A8>

Podemos alterar o algoritmo com a opção -a (todas são vulneráveis a um ataque ou outro). As seguintes alterações de comando para o famoso algoritmo DES – Data Encryption Standard – criado pela IBM na década de 1970, que ajudou a melhorar a criptografia de forma significativa ao longo dos anos:


# mcrypt ‐a des mond.sh 

O cabeçalho de arquivo, conforme visualizado no text viewer, exibe o que foi alterado (procure por des):


^@m^C@des^@^H^@cbc^@mcrypt‐sha1 
^@^U<92><92><AF>

Uma vez que os arquivos forem encriptados, estarão prontos para irem para a nuvem. Se o MCrypt não se adequar às suas necessidades, verifique o quadro 1 para outras alternativas.


Amazon S3


O utilitário S3cmd baseado em Python [3] permite usar o gigante que é a Amazon S3 para armazenar arquivos de forma ultraconfiável. O usuário pode se surpreender que o S3cmd e outros utilitários que permitam usar a Amazon S3 quase como se fosse um sistema de arquivos local montado no desktop. Embora seja necessário expor as credenciais de login da Amazon Web Services, existem maneiras de entrar com a senha somente quando necessário. Um script simples pode ajudar a automatizar um pouco o processo. Como alternativa, a automatização completa pode usar um arquivo de senha criptografada de propriedade do root para deixar o token de segurança no arquivo .s3cfg principal, para que seja possível executar backups periodicamente com um cron job.


É possível usar uma ferramenta de terceiros para limitar a largura de banda que o utilitário S3cmd usa, o que permite que executar uma volumosa e demorada transferência de arquivos, como um processo de fundo. Para usar o S3cmd, é preciso uma conta AWS, que não é um desafio tão grande (apenas livre-se de todos seus detalhes privados, incluindo cartão de crédito, e está tudo pronto). No Debian ou Ubuntu, instale o arquivo minúsculo arquivo abaixo:


# apt‐get install s3cmd

Este comando fornecerá os pacotes python-support e s3cmd no sistema. No passado, tivemos alguns problemas com versões mais antigas nos repositórios do Debian. Não há problema se o recurso desejado não estiver disponível; basta fazer o download da fonte e seguir as instruções no arquivo INSTALL. A versão mais recente do S3cmd suporta a capacidade de ajudar com uma opção --configure no momento da instalação. O usuário deve ser cuidadoso de onde deverá expor detalhes da conta se estiver copiando e colando o login e senha equivalentes da AWS, porque ambos são extremamente sensíveis. Não tente digitá-los porque os erros de digitação são muito comuns; certifique-se de que possa recortar e colar.


Turbinando


Para configurar o S3cmd, use a opção ‐‐configure:


# s3cmd ‐‐configure 

A saída do comando é mostrada na listagem 1. Como você pode ver na listagem 1, S3cmd mesmo pergunta se você gostaria de criptografar os arquivos com GPG [4], uma outra ferramenta de criptografia excelente e sofisticada. Além disso, você vai ver que eu selecionei o método de transporte HTTPS para evitar sniffing rede. Você pode ativar a criptografia com GPG usando a opção -e. No entanto, se o usuário estiver absolutamente convicto de que isso não é o que deseja (porque deseja usar um método diferente de criptografia, por exemplo, o excelente bcrypt), especifique ‐‐no‐encrypt.


Regex


Uma característica muito atraente do S3cmd é sua capacidade de usar expressões regulares. Este recurso significa que o usuário pode excluir certos arquivos de comandos de upload ou download. Tente usar ‐‐rexclude=​.*\.log se quiser pegar todos os arquivos com a extensão .log. Este recurso oferece várias outras possibilidades, especialmente dentro de scripts. É possível efetivamente executar tarefas agendadas e pinçar precisamente os arquivos desejados (seja para upload ou download) sem o medo de adicionar acidentalmente 10GB extra de dados ao payload.


Examinando as vísceras


Um diretório é chamado de bucket no ambiente AWS. Para criar um bucket com mb, onde linux‐is‐the‐best é o nome do bucket, use:


# s3cmd mb s3://linux‐is‐the‐best 

Use rb para deletar um bucket. Liste os conteúdos do seu sistema de arquivos remoto da seguinte forma:


# s3cmd ls s3://linux‐is‐the‐best/chris‐says 

Este comando lista os conteúdos do subdiretório chris‐says. Podemos também usar s3cmd la para exibir todos os arquivos em todos os buckets.


Coloque aqui


O usuário pode se surpreender com o quão absurdamente simples é fazer upload e download com o S3cmd. Para fazer o upload para o Amazon S3, use o comando put:


# s3cmd put chrisbinnie.tar.gz.nc 
s3://linux‐is‐the‐best

E, se ainda não adivinhou, pode usar get para fazer o download:


# s3cmd get chris_backup_14411441.nc 
s3://only‐use‐linux

Uma opção básica é deletar um único arquivo usando del:


# s3cmd del rubbish.nc s3://temp‐bucket 

Outra função muito útil é o du; para aqueles não familiarizados, du é uma ferramenta de linha de comando de uso no disco em sistemas tipo Unix que lista o espaço em disco usado por cada bucket. O resultado desse comando é bem adequado para scripts para anular o apetite voraz de certos sistemas de arquivos. Podemos usá-lo da seguinte forma:


# s3cmd du 

Além disso, o usuário pode adicionar um caminho de arquivo ao final desse comando. Algumas opções úteis permitem mover arquivos dentro do sistema de arquivos Amazon S3 sem fazer o upload ou download do arquivo. Como no Unix, podemos mover arquivos (usando mv) ou duplicá-los (usando cp). As funções move e copy são as seguintes:


# s3cmd mv s3://linux_bucket/ 
chris.png s3://older_linux_bucket
# s3cmd cp s3://linux_bucket/
binnie.jpg s3://older_linux_bucket

Observe que também é possível alterar o nome de um arquivo em um movimento rápido com uma manobra elegante adicionando algo como /newer_chrisbinnie.jpg como um nome de objeto fundido ao destino s3://older_linux_bucket.


Pague pelo que usar


Como abrimos mão das credenciais de acesso sagradas da AWS, também temos a capacidade de controlar outros serviços da AWS e, no caso do S3cmd, isso inclui o excelente serviço “pague pelo que usar” chamado CloudFront [5]. Se não estiver familiarizado com Content Delivery Networks (CDNs), o CloudFront é, inegavelmente, poderoso e acessível. É possível usar o S3cmd para consultar, criar e modificar várias das funções do CloudFront. Faremos uma breve análise da integração CDN amplamente usada na AWS com S3cmd. Cada instância de uma configuração CDN atribuída à conta é referida como uma “distribuição” (provavelmente porque distribui os dados de forma eficiente em todo o mundo). Exiba uma lista das distribuições configuradas com o comando:


# s3cmd cflist 

Se desejar mais detalhes sobre os parâmetros configurados para todas as distribuições, use:


# s3cmd cfinfo 

Também é possível fazer a query de uma distribuição específica e seus parâmetros fazendo referência a seu ID de distribuição da seguinte forma (adicionando o ID correspondente):


# s3cmd cfinfo cf://<distributionID> 

Podemos também usar cfcreate, cfdelete e cfmodify para criar, deletar e mudar uma distribuição sem interferir nas interfaces web.


Mais opções


A lista de recursos S3cmd é realmente abrangente para um utilitário tão pequeno. A lista inclui uma opção de sobrescrita ‐‐force, que deve ser usada com muito cuidado, e uma flag --dry-run muito útil, que permite exibir os arquivos que serão exportados e importados – sem que isso esteja realmente acontecendo. Se o usuário está sempre preocupado por quebrar horrivelmente as coisas, obtendo uma entrada regex incorreta, irá apreciar o recurso --dry-run. A opção útil --continue só funciona com downloads, mas deve, pelo menos em teoria, retomar um arquivo parcialmente baixado para que o usuário não tenha que se preocupar em iniciar um grande download novamente do zero. É justo dizer que os HTTP resumes já existem há tempos e esse recurso não é novo, mas ainda é algo agradável e muito necessário. Já mencionamos o parâmetro -r (também conhecido como --recursive), que funciona em uploads, downloads e supressões se quiser afetar os subdiretórios. Use isso com cuidado se quiser evitar incorrer em taxas de transferência de dados em massa ou exclusões acidentais.


Se estiver armazenando grandes quantidades de dados, o usuário pode se preocupar em minimizar as despesas. Aparentemente (e por favor lembre que especificações, configurações e procedimentos mudam frequentemente com tecnologias emergentes, portanto, não tome isso como evangelho), o repositório padrão para um arquivo exportado da Amazon S3 abrange três centros de dados. Em outras palavras, o arquivo é copiado três vezes em três localizações geográficas díspares. Se usar apenas dois centros de dados, opte pela “Reduced Redundancy” e a AWS irá reduzir suas taxas de armazenamento. A teoria é de que esses arquivos não serão tão críticos para o usuário; portanto, é possível tolerar a perda de um ou dois. Talvez o usuário tenha backups locais disponíveis ou talvez os arquivos tenham uma vida útil limitada. Ter o -rr ou ‐‐reduced‐redundancy à mão permite instruir o inteligente S3cmd que é preciso cuidar dos custos e só usar dois centros de dados para armazenamento.


Uma ferramenta chamada Trickle [6] permite segregar sua preciosa largura de banda e interromper o S3cmd caso ele esteja monopolizando a conexão com a Internet. Para assumir o controle da largura de banda, instale o pacote com:


# apt‐get install trickle 

Este utilitário é uma excelente ferramenta para largura de banda e que pode se conectar a muitos aplicativos. Aparentemente, o excelente Trickle não pode afetar todos os serviços de banda larga, mas, em vez disso, apenas os programas que falam à rede e que usam bibliotecas dinâmicas (graças à glibc), e ele não funciona bem com pacotes vinculados estaticamente. Não se preocupe, porque é possível verificar as dependências de bibliotecas compartilhadas de um pedaço de software usando o comando ldd como segue. Se receber quaisquer resultados exibidos ao executar esse comando, será uma boa notícia, e o Trickle deve funcionar com o binário. O primeiro exemplo deste comando mostra uma resposta positiva, e o segundo mostra que falta de sorte:


# ldd /usr/bin/ssh | grep libc.so 
libc.so.6 => /lib/x86_64‐linux‐gnu/
libc.so.6 (0x00007f69228de000)
# ldd /usr/bin/apport‐bug | grep libc.so
#

Se o usuário estiver curioso (e, prefencialmente, não logado como root, porque está tendo cuidado), tente a dica de linha de comando abaixo. Este comando fornece um olhar rápido para o caminho /usr/bin para verificar os programas que o Trickle suporta:


# cd /usr/bin 
# for filelist in *; do ldd $filelist |
grep libc.so; echo $filelist; done

Devemos mencionar neste ponto que a v1.0.0 do S3cmd, que “magicamente” apareceu em nosso laptop a partir de repositórios do Ubuntu, não compila automaticamente com bibliotecas dinâmicas. Também instalamos a biblioteca lib-event conforme sugerido. Os fabricantes do fantástico utilitário dizem, no entanto, que isso deve funcionar, e vale a pena tentar uma versão mais recente (v1.5.0 no momento do fechamento desta edição) e compilar a partir da fonte. Para limitar para metade de um megabit (Mb) de capacidade de download suas atividades no Amazon S3, use o switch -d:


# trickle ‐d 512 s3cmd 
get chrisfile.tar.gz.nc
s3://aws‐bucket‐name

Por outro lado, podemos suprimir a capacidade de upload com -u:


# trickle ‐u 512 s3cmd 
put binnie_linux.doc.nc
s3://aws‐bucket‐name

Tivemos um erro quando tentamos executar o Trickle da primeira vez. A correção foi para resultar em um modo autônomo. Para fazer isso, basta adicionar -s ao comando:


# trickle ‐s ‐u 512 s3cmd 
put cb_linux.doc.nc
s3://aws‐bucket‐name

Se tudo isso falhar, as outras opções para limitar a largura de banda incluem o utilitário Throttle [7], bem como o tc ou o iptables.


Conclusão


Apesar da mistura um pouco inebriante de métodos de encriptação disponíveis em sistemas do tipo Unix, a ampla e variada seleção oferece opções suficientes para que o usuário possa encontrar a ferramenta mais eficaz para cada trabalho. Procuramos neste artigo demonstrar que, para alguns cenários, o usuário pode optar por um sistema embarcado de criptografia pela facilidade de uso (por exemplo, S3cmd suporta GPG), e pode querer acessar arquivos apagados automaticamente e diligentemente por padrão. Por razões de compatibilidade, por outro lado, usamos algo da velha guarda como o MCrypt, que funciona de todas as formas e é comumente adotado pelo PHP. O serviço de armazenamento AWS assegura que o usuário não sentirá uma profunda angústia da próxima vez que perder um arquivo de configuração que passou toda a manhã fazendo funcionar. Esperamos que este artigo encoraje o usuário a forjar uma solução criativa que atenda às suas próprias necessidades de backup de arquivos.


Mais informações


[1] MCrypt: http://​­mcrypt.​­sourceforge.​­net/ [2] Bcrypt: http://​­bcrypt.​­sourceforge.​­net/ [3] S3cmd: http://​­s3tools.​­org/​­s3cmd [4] GPG: https://​­www.​­gnupg.​­org/ [5] CloudFront: http://​­aws.​­amazon.​­com/​­cloudfront/ [6] Trickle: http://​­monkey.​­org/​­~marius/​pages/​­?​­page=trickle [7] Throttle utility: http://​­linux.​­die.​­net/​­man/​­1/​­throttle


Figura 1 O poderoso MCrypt oferece muitos algoritmos e diferentes tamanhos de chave para atender às necessidades do usuário.


Lista


Figura 2 dos hashes disponíveis no MCrypt.


 


Quadro 1: bcrypt


O “b” em bcrypt [2] significa Blowfish, que é um algoritmo de criptografia de rede mais amigável desenvolvido por Bruce Schneier. Usamos bcrypt em grande parte em clientes SSH. O bcrypt pode acelerar sessões criptografadas sobre conectividade limitada porque é incrivelmente leve. Para usar o bcrypt, execute o pacote em uma caixa baseada no Debian executando o comando:


# apt‐get install bcrypt

Arquivos criptografados terão a extensão de arquivo .bfe. Ao contrário do MCrypt, o bcrypt comprime os arquivos automaticamente antes de executar a criptografia. Além disso, remove quaisquer arquivos de origem após o uso. Adicionar -c informa ao bcrypt para não compactar os arquivos antes de empacotá-los, ao passo que -r exclui os arquivos de origem. O switch -o:


# bcrypt -o linux_binnie.cfg 

fornece os dados criptografados diretamente para o console e o arquivo original não será alterado. O comando:


# bcrykpt -s100 chris_password.asc 

passa pelo arquivo original do disco 100 vezes após encriptá-lo.


Nossa extensão favorita para bcrypt está associada a operações mais clandestinas. É possível manter algum segredo pela “lavagem” de quaisquer arquivos apagados repetidamente para evitar que o disco rígido a partir de deixar qualquer vestígio deles. Para substituir os arquivos de origem originais cinco vezes com dados aleatórios, especifique o parâmetro -s5. A opção padrão é de três substituições se esta flag não estiver configurada. Alternativamente, se o disco I/O for precioso demais, o usuário pode desativar as substituições com -s0.


Listagem 1: Configuração S3cmd


Enter new values or accept defaults in brackets with Enter. Refer to user manual for detailed description of all options.


Access key and Secret key are your identifiers for Amazon S3 Access Key: chris binnie Secret Key: linux


Encryption password is used to protect your files from reading by unauthorized persons while in transfer to S3 Encryption password: abc Path to GPG program [/usr/bin/gpg]: /usr/bin/gpg


When using secure HTTPS protocol all communication with Amazon S3 servers is protected from 3rd party eavesdropping. This method is slower than plain HTTP and can't be used if you're behind a proxy Use HTTPS protocol [No]: Yes


O autor

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Pergunte ao Klaus!


Por Klaus Knopper


Compilação cruzada de programas 64 bits no Knoppix 32 bits


Oi Klaus, comecei a usar o Knoppix 7.3 regularmente em março deste ano. Acho que é muito conveniente para testar o código em diferentes máquinas com hardware diferente. No entanto, descobri recentemente que, mesmo quando faço o boot do Knoppix em modo 64-bit, o CCG ainda assume a compilação padrão de 32-bits. Na verdade, se tentar compilar para 64 bit com -m64, ele falha. Como posso compilar o código de 64 bits com o GCC no Knoppix? Seria possível incorporá-lo a uma versão futura do Knoppix?


Chad


Resposta


O Knoppix foi programado para executar em tantos computadores diferentes quanto for possível, com o mesmo formato binário, para que os aplicativos estejam em formato binário de 32 bits, enquanto o kernel pode ser selecionado entre 32 bits e 64 bits. O kernel de 32 bits ainda será executado em plataformas de 64 bits no modo de compatibilidade, mas apenas o kernel de 64 bits permite atribuir mais de 4GB de RAM. O compilador C permite a criação de binários de 32 bits, bem como binários de 64 bits; no entanto, ele está predefinido para criar objetos de 32 bits no sistema de espaço de usuário instalado de 32 bits. Podemos alterar o comportamento usando a opção -m64.


No entanto, mesmo a compilação de um simples programa “Hello World” irá falhar, se o usuário não possuir uma biblioteca libc de 64 bits instalada (listagem 1). Observe que compilação cruzada para 64 bit com gcc -m64 -c hello.c ainda funciona; o usuário recebe um arquivo de objeto de 64 bits (ainda não executável), hello.o, como esperado. Apenas a parte onde o vinculador precisa unir-se ao código de inicialização de 64 bits e às chamadas da Biblioteca C para 64 bits não funciona. Para corrigir isso – isto é, para compilar programas de 64 bits na plataforma de 32 bits – você precisa instalar o desenvolvimento de 64 bits e as bibliotecas de tempo de execução paralelas às de 32 bits. O Debian GNU/Linux permite esta instalação da biblioteca por diretórios separados (/lib64, /usr/lib64) para as bibliotecas de 64 bits.


$ sudo apt‐get install
‐‐no‐install‐recommends gcc‐multilib
libc6‐amd64 libc6‐dev‐amd64

Uso ‐‐no‐install‐recommends aqui para evitar puxar mais pacotes do que são necessários apenas para compilar este simples exemplo (listagem 2). Com a instalação do gcc-multilib, libc6-amd64 e libc6-dev-amd64, é possível compilar e executar programas baseados em texto/console para 64 bits. No entanto, se o seu programa também precisa das bibliotecas de toolkit gráfico como Qt ou Gtk, teremos que ativar as instalações multiarch, abordadas na próxima pergunta. Mesmo com o habitual 10GB de espaço no sistema de arquivos comprimido do Knoppix, não poderia ajustar cada biblioteca lá duas vezes – em 32 bits e 64 bits. Mas, instalar apenas as bibliotecas libc6 de 64 bits e gcc libs não custa muito espaço adicional. Vou considerar esta opção para a próxima versão.


Pergunta


Aplicativos de 32 bits e 64 bits no mesmo sistema


Quero instalar um aplicativo de 64 bits em um sistema de 64 bits (hardware), executando um kernel de 64 bits e 32 bits de userspace Debian. Isso é possível, ou tenho que criar um ambiente “chroot” para isso?


Resposta


Pelo menos no Debian, é possível, mas é difícil manter o controle de versões de bibliotecas em duas arquiteturas. Precisamos configurar um ambiente “multiarch” e adicionar os repositórios amd64 para o gerenciador de pacotes dpkg.


$ sudo dpkg ‐‐add‐architecture amd64

Este comando permite que o dpkg instale a partir dos ramos de 64 bits do Debian também. Por favor observe que o Debian usa “amd64” como uma abreviatura para todas as CPUs de 64 bits compatíveis com Intel/AMD, ao passo que “x86_64” é a abreviatura usual para arquiteturas de 64 bits em Makefiles.


Agora, execute:


$ sudo apt‐get update

e o banco de dados do pacote é atualizado. Depois disso, você pode instalar um aplicativo de 64 bits com dependências usando apt-get ou aptitude; a extensão do nome do pacote é :amd64 dos repositórios de 64 bits:


$ sudo aptitude ‐‐without‐recommends
install blender:amd64

Este comando irá instalar o framework Blender 3D na variante de 64 bits, e aptitude buscará resolver erros de dependência, fazendo várias recomendações sobre como resolver o problema. A flag ‐‐without‐recommends declara ao aptitude que este não deve instalar pacotes que não sejam realmente necessários para a instalação do aplicativo principal.


O último e provavelmente menos intrusivo método de execução de aplicativos de 64 bits nativamente no topo de um sistema de 32 bits (ainda com CPU de 64 bits e kernel) é um ambiente chroot, onde o usuário instala um sistema Debian pequeno de 64 bits, mas completo, dentro de um diretório. Eu uso uma partição separada para essa tarefa, montada em /64 no sistema de arquivos root.


sudo debootstrap ‐‐arch=amd64
‐‐variant=minbase unstable
/64 http://ftp.us.debian.org/debian

Depois que o debootstrapping for concluído, você pode copiar as configurações do sistema para criar um ambiente semelhante e um ponto de mount das pastas necessárias para o sistema Linux executar corretamente, antes de fazer o chroot atual e começar a trabalhar dentro do ambiente de 64 bits. Aqui, mesmo o diretório home fica montado (bind-mounted), para que o usuário possa clonar os repositórios SVN ou Git para trabalhar no interior do segundo sistema (listagem 3).


A opção ‐‐userspec=`id ‐u` do chroot permite alternar para um usuário com o mesmo ID da conta de trabalho no sistema de host, para que permissões de arquivo para os arquivos no diretório home bind-mounted sejam correspondentes. Se configurar:


export DISPLAY=:0
export HOME=/home/your_user_directory

no ambiente chroot, você ainda será capaz de usar o ambiente gráfico porque o cookie X de sessão localizado em seu diretório home, bem como o X11 socket em /tmp, estão ambos no lugar certo no bind-mounted. Uma vez que você instale mais programas dentro do diretório chroot, dificilmente irá notar uma diferença entre o host e seu sistema chroot. Você pode querer alterar o prompt de forma a refletir que esteja trabalhando atualmente na configuração de 64 bits:


PS1='\u@\h‐64bit\w\$ '

Depois de ter concluído o trabalho no ambiente de 64 bits, digite exit para sair do chroot Shell.


Mais informações


Listagem 1: Falha ao compilar


$ echo 'in t main(int a, char **b) { write(1,"Hello, World!\n",14); return 0; }' >> hello.c $ gcc ‐o hello hello.c $ file hello hello: E LF 32‐bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, not stripped $ gcc ‐m64 ‐o hello hello.c /usr/bin/ld: cannot find crt1.o: No such file or directory /usr/bin/ld: cannot find crti.o: No such file or directory /usr/bin/ld: s kipping incompatible /usr/lib/gcc/i486‐linux‐gnu/4.7/libgcc.a when searching for ‐lgcc /usr/bin/ld: cannot find ‐lgcc /usr/bin/ld: s kipping incompatible /usr/lib/gcc/i486‐linux‐gnu/4.7/libgcc_s.so when searching for ‐lgcc_s /usr/bin/ld: cannot find ‐lgcc_s /usr/bin/ld: cannot find ‐lc /usr/bin/ld: s kipping incompatible /usr/lib/gcc/i486‐linux‐gnu/4.7/libgcc.a when searching for ‐lgcc /usr/bin/ld: cannot find ‐lgcc /usr/bin/ld: s kipping incompatible /usr/lib/gcc/i486‐linux‐gnu/4.7/libgcc_s.so when searching for ‐lgcc_s /usr/bin/ld: cannot find ‐lgcc_s /usr/bin/ld: cannot find crtn.o: No such file


Listagem 2: Hello, World!


$ gcc ‐m64 ‐o hello hello.c $ file hello hello: ELF 64‐bit LSB executable, x86‐64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, not stripped $ ./hello Hello, World!


Listagem 3: Cópia e bind mount


sudo cp ‐a /etc/hostname /64/etc/hostname sudo cp ‐a /etc/environment /64/etc/environment sudo cp ‐a /etc/sudoers /64/etc/sudoers sudo cp ‐a /etc/localtime /64/etc/localtime sudo cp ‐a /etc/locale.gen /64/etc/locale.gen sudo cp ‐a /etc/timezone /64/etc/timezone sudo cp ‐a /etc/resolv.conf /64/etc/resolv.conf sudo cp ‐a /etc/apt/sources.list /64/etc/apt/sources.list # Check for similar UID/GID settings before doing these, # or just create a user with the same UID as your account # on the host # sudo cp ‐a /etc/passwd /64/etc/passwd sudo cp ‐a /etc/group /64/etc/group # Bind‐mount system dirs into chroot BINDDIRS="/sys /proc /dev /home /tmp /var/tmp /usr/src /lib/modules" for i in $BINDDIRS; do sudo mount ‐‐bind "$i" "/64$i"; done # Now do the actual chroot sudo chroot ‐‐userspec=`id ‐u` /64


O autor

Klaus Knopper é o criador do Knoppix . Atualmente trabalha como professor, programador e consultor. Envie suas perguntas em inglês para: klaus@linux-magazine.com

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Férias trabalhadas

Um bar na praia com WiFi é útil, mas usa um proxy forçado, que considera que a porta SSH bloqueia a conexão. É hora de criar um túnel.


Por Charly Kühnast


A ferramenta certa para o tunelamento SSH através de um proxy como Squid, Gauntlet, CacheFlow, Junkbuster ou Apache mod_proxy é Corkscrew. Por quê? Porque o nome corkscrew é bem escolhido, e porque o autor do programa apresenta-se assim: “Meu nome é Pat Padgett. Eu sou um idiota”. Na minha experiência, pessoas lacônicas como essas são grandes programadores.


A maioria das distribuições possuem um Corkscrew guardado em algum lugar; se não, o usuário pode adquiri-lo online [1]. O daemon SSH deve ser executado na porta 443 no servidor de destino, porque muitos proxies se recusam a se conectar à porta 22. Aliás, ligar o daemon SSH a duas ou mais portas ao mesmo tempo não é um problema. Para fazer isso, basta adicionar uma outra linha de porta ao sshd_config:


[...]
Port 22
Port 443

Se o usuário já executa o HTTPS na porta 443, pode configurar o SSLH no servidor como um último recurso. Trata-se de um multiplexer SSH/SSL que torna possível operar SSH e HTTPS simultaneamente na porta 443. Se o proxy pede credenciais de login, precisamos armazená-las em um arquivo. Seu nome não importa; eu usaria, digamos, /home/charly/.proxy-auth. Então, podemos popular o arquivo com dados da seguinte forma: <Username>:<Password>.


Iniciando o Cork


Agora precisamos incluir o cliente SSH para usar o Corkscrew. Edite o arquivo .ssh/config em seu diretório pessoal para fazer isso (se ele não existir, basta criá-lo). Adicione duas linhas:


Host *
ProxyCommand corkscrew
<myproxy.example.net>
<3128>%h %p /home/<charly>/.proxy‐auth

É claro que precisamos alterar <myproxy.example.net> e o número da porta para atender a uma situação local. As variáveis %h e %p passam os parâmetros da chamada SSH para Corkscrew. Se usarmos um servidor sem autenticação, deixamos de fora o caminho para o arquivo username/​password.


Agora é hora de fazer a brincadeira valer. O servidor de destino que uso é um Raspberry Pi, cujo sshd escuta na porta 443. O proxy é um Squid padrão. Como podemos ver na figura 1, o login funciona bem – não há nada que sugira que Corkscrew participa da brincadeira, a não ser que alguém tenha acesso aos logs de proxy. Se examinássemos, encontraríamos a seguinte entrada:


"CONNECT 10.0.0.5:443 HTTP/1.0"
200 <[...]>

Mas, quem se preocupa com os logs enquanto está relaxando em um bar da praia? Ah, eles têm WiFi.


Mais informações


[1] Corkscrew: http://​­www.​­agroman.​­net/​­corkscrew/


 


Tudo


Figura 1 pronto com o Corkscrew: login remoto perfeito no Raspberry Pi de Charly.


 


O autor

Charly Kühnast é administrador de sistemas Unix no data center de Moers, Alemanha. Suas tarefas incluem segurança e disponibilidade de firewalls e DMZ. Ele divide seu tempo livre nos setores quente, molhado e oriental, nos quais se diverte com culinária, aquários de água doce e aprendizado de japonês, respectivamente.

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Restauração tranquila

O Relax and Recover (ReaR) gera uma imagem de recuperação de um sistema em execução e também opera como ferramenta de migração.


Por Thomas Drilling


Um sistema de recuperação profissional é muito mais que uma simples ferramenta de backup. Administradores experientes sabem que precisam controlar e testar todo o workflow para antecipar o processo de recuperação, para terem a certeza de todas as peças irão se encaixar em caso de emergência. A substituição versátil de hardware deve estar prontamente disponível, e o usuário pode não ter o luxo de usar um sistema de substituição que corresponda exatamente ao original. O layout da partição ou a configuração de um sistema RAID devem corresponder. Se o nível de patches do sistema danificado não estiver atualizado, ou se o sistema continha uma abundância de software instalados manualmente, os problemas são passíveis de ocorrer com os drivers, configurações e outros problemas de compatibilidade.


Relax and Recover (ReaR) [1] é uma verdadeira solução para recuperação de desastres que cria uma mídia de recuperação a partir de um sistema Linux em execução. Se um componente de hardware falhar, um administrador pode fazer o boot do sistema em modo de espera com a mídia de resgate ReaR e colocar o sistema de volta ao estado anterior. O ReaR preserva o particionamento e a formatação do disco rígido, a restauração de todos os dados, e a configuração do carregador de boot. O programa também é bem adequado como ferramenta de migração, pois a restauração não tem que ter lugar no mesmo hardware que o original. O ReaR constrói o meio de recuperação com todos os drivers existentes, e o sistema restaurado ajusta-se automaticamente ao hardware modificado.


O ReaR até detecta cartões de rede alterados, bem como cenários de armazenamento diferentes, com seus respectivos drivers (que migram de IDE para SATA ou de SATA para CCISS) e layouts de disco modificados. A documentação do ReaR oferece uma série de arquivos de mapeamento e exemplos. Um backup inicial completo do sistema protegido é a fundação. O ReaR trabalha em colaboração com muitas soluções de backup, incluindo Bacula/Bareos SEP SESAM, Tivoli Storage Manager, HP Data Protector, Symantec NetBackup, CommVault Galaxy, e EMC Legato/Networker. Veja a tabela 1 para mais detalhes sobre as ferramentas de backup suportadas. Se nenhuma solução de backup estiver disponível, o ReaR usará tar ou Rsync (por exemplo, em um dispositivo USB ou compartilhamento NFS). O ReaR não se intimida com configurações complexas com ligação de rede, software RAID, esquemas de partição LVM e sistemas de arquivos exóticos. O servidor restaurado faz o boot como se nada tivesse acontecido.


Primeiros passos


O projeto ReaR oferece pacotes binários para a maioria das principais principais distribuições Linux. Fedora, por exemplo, oferece a versão mais antiga 1.12 no repositório, bem como a versão atual 1.15 nas atualizações do sistema. Usuários CentOS podem encontrar o ReaR no repositório EPEL. O SUSE Linux Enterprise inclui pacotes ReaR, mas apenas em uma versão mais antiga. (A versão 1.14 também está disponível para openSUSE [3], no entanto, tive problemas na instalação durante o teste). O SUSE até mesmo construiu um módulo YaST [4] para ReaR. Na primeira configuração de teste, usamos um sistema Fedora 19 comprovado (figura 1). Se a recuperação de desastres for realizada a partir de um meio físico, um administrador de sistemas pode preparar a mídia de backup desejada, fornecer o pendrive com correspondência ext2/3/4 - ou partição Btrfs, e fazer o boot pelo pendrive. Formate o pendrive usando ReaR:


/usr/sbin/rear format /dev/sdX

O ReaR apenas aguarda a confirmação de que pode substituir totalmente o meio em questão. Configurações específicas do sistema aparecem em /etc/rear/local.conf. Além disso, o administrador do sistema pode visualizar o arquivo de exemplo /usr/share/rear/conf/default.conf totalmente comentado. A página principal do ReaR fornece informações de configuração, e a comunidade ReaR fornece uma boa documentação, bem como um manual de instruções detalhado [5].


Configuração


A configuração do ReaR envolve dois parâmetros principais: OUTPUT=, que define o método de boot preferido, e BACKUP=, que define a estratégia de backup. Com OUTPUT=USB, por exemplo, o administrador do sistema garante que ReaR escreva para o dispositivo USB especificado e irá configurar o carregador de boot dessa forma. Alternativas para outros cenários incluem: OUTPUT=ISO, OUTPUT=PXE ou OUTPUT=RAMDISK. Com OUTPUT=RAMDISK, o ReaR só informa o kernel e o initramfs. O administrador cuida de um processamento maior. Na configuração padrão, o ReaR especifica a imagem ISO em um arquivo em /var/lib/rear/output; também podemos especificar um local para o arquivo de saída usando a configuração OUTPUT_URL=file://.


Dependendo da estratégia de backup do usuário, o ReaR geralmente tenta armazenar a imagem de boot no backup. Podemos usar o parâmetro BACKUP_URL para especificar o destino do backup (por exemplo, um compartilhamento NFS) e a imagem ISO também termina automaticamente lá (figura 2). A estratégia de backup é definida por BACKUP= parameter. O ReaR usa o Tar automaticamente com BACKUP=NETFS. O parâmetro BACKUP_PROG_CRYPT_ENABLED=1 especifica a criptografia. Uma alternativa para tar (sem a necessidade de um programa de backup externo) é BACKUP= RSYNC. BACKUP=EXTERNAL, que define uma ferramenta de backup externo. E BACKUP=REQUESTRESTORE especifica que ReaR pergunte ao usuário antes de iniciar o backup.


Backup no NFS ou CIFS


Se o processo de backup estiver definido no NETFS, BACKUP_URL= fornece a destinação de backup desejada:


BACKUP_URL=nfs://NFS‐Server/Path ... 

ReaR cria um arquivo, que inclui o nome do cliente, em NFS‐Server/Path .... Também podemos especificar um dispositivo de fita ou servidor de arquivo Samba:


BACKUP_URL=tape:///dev/nst0, ... 
BACKUP_URL=cifs://Samba‐Server/Path …

Se ReaR autenticar de acordo com CIFS/​Samba, o administrador especifica uma credencial de arquivo correspondente:


BACKUP_OPTIONS= "cred=/etc/rear/.cifs_credentials" 

Combinar OUTPUT=USB com BACKUP_URL=usb:// ... permite escrever tanto a imagem de backup e resgate no mesmo dispositivo USB, o que é bem útil, pois o usuário consegue um meio de recuperação bootável com todos os arquivos de backup inclusos (desde que o usuário tenha espaço sufiente: o ReaR faz um backup completo por padrão.


Altertivamente, podemos usar as opções EXCLUDE... para restringir o escopo do backup desejado. Por exemplo:


AUTOEXCLUDE_PATH=( /media ) 

Diretórios montados e direcionados, como compartilhamentos de rede de partições externas montadas, são excluídos do backup. Em contraste,


AUTOEXCLUDE_DISKS=y 

inclui todos os discos e partições do backup que não foram trabalhados do sistema de arquivos montado. Usar:


AUTOEXCLUDE_AUTOFS=.. 

exclui qualquer caminho de automontagem. Para criar e testar a imagem de recuperação, inicie o ReaR com rear mkrescue. É possível iniciar facilmente o backup usando rear mkbackuponly. Geralmente, um administrador cria a imagem de recuperação e faz o backup em uma sessão.


Silencioso


Como o ReaR é otimizado para cronjobs, ele não produz muitas saídas em casos normais. O rear ‐v ativa o modo detalhado. O modo de simulação (rear ‐s) mostra os scripts incluídos com a configuração. As personalizações são fáceis de adicionar. Um usuário só tem que criar um script shell e soltá-lo no caminho desejado (figura 3). Opções adicionais são listadas na página inicial do ReaR.


O ReaR pode fazer muito mais do que apenas as funções padrão. Por exemplo, o administrador pode enviar os arquivos de resultados via email, invocando assim um canal de comunicação em sentido único altamente seguro para obter a imagem de recuperação de um sistema comprometido para um que esteja protegido. A imagem de recuperação vem com senhas, chaves privadas e assim por diante – com algumas surpresas. Uma possível exceção é a autenticação para clientes de backup comerciais, que podemos desabilitar em IBM Tivoli Storage Manager. A imagem de recuperação não precisa ser especialmente protegida, mas adicionar autenticação faz aumentar a integridade. O ReaR é muito fácil de estender graças ao seu design modular. E o programa lida bem com (U) EFI, além de apoiar sistemas Itanium e PowerPC.


Embora o ReaR tenha sido desenvolvido em 2006, essa extraordinária ferramenta de recuperação ainda é desconhecida para muitos administradores. O fato de ReaR ser implementado usando scripts Bash pode fazê-lo parecer cru, mas, no entanto, o ReaR é altamente profissional. O pequeno tamanho dos scripts Bash, que normalmente não são mais longos que uma página de tela, também contribui para o uso fácil do programa. A maior parte da configuração ocorre em poucos arquivos de configuração (tabela 2). Graças aos padrões bem escolhidos, a configuração é muito simples e contempla alto grau de automação para projetos menores ou servidores individuais. De fato, o ReaR suporta cenários complexos e a inclusão de detalhes altamente personalizados. O projeto modular do ReaR o torna facilmente expansível e fácil de usar. Até mesmo o SEP escolheu o ReaR como substituto para a sua própria ferramenta de recuperação de desastres e fornece o suporte SESAM necessário. Detalhes referentes à documentação oficial estão disponíveis em SEP SESAM [6].


Mais informações


[1] ReaR Project Page: http://​­relax‐and‐recover.​­org [2] ReaR on Github: https://​­github.​­com/​­rear/​rear/​­commits/​­master [3] ReaR in OpenSuse: http://​­software.​opensuse.​­org/​­package/​­rear [4] YaST Module for Suse: http://​­software.​opensuse.​­org/​­package/​­yast2‐rear [5] ReaR User Guide: https://​­github.​­com/​­rear/​­rear/​­blob/​­master/doc/​­user‐guide/​­03‐configuration.​­txt [6] SEP-SESAM Support: http://​­wiki.​­sep.​­de/​­wiki/​­index.​­php/​Disaster_Recovery_for_Linux_3.​­0_en [7] ReaR1.15 Release Notes: http://​­relax‐and‐recover.​­org/​documentation/​­release‐notes‐1‐15


Figura 1 O Fedora 19 vem com a versão 1.15 do ReaR.


Sob


Figura 2 circunstâncias normais, a imagem ISO termina no backup. Figure 3 Modo de simulação do ReaR.


 


Tabela 1: Ferramentas de backup


Tabela 2: Dados


O autor

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Circuito seguro

Redo Backup faz o backup completo de hard drives localmente ou sobre a rede. O foco é na operação simples e na alta confiabilidade para diversos cenários de implementação


Por Thomas Zeller


O Redo Backup and Recovery faz o backup de todos os dados em um computador, incluindo o gerenciador de boot e o sistema operacional. Em caso de emergência ele pode ser muito útil para restaurar completamente o estado anteriorda máquina e o usuário pode voltar ao trabalho imediatamente.


O que é o Redo Backup?


O Redo Backup [1] é um aplicativo baseado em um CD Live do Ubuntu para facilitar o backup e restauração de um disco rígido inteiro, incluindo todas as partições e o Master Boot Record (MBR). A versão que utilizamos é a 1.0.4. Ela é baseada no Ubuntu 12.04.1 (LTS), mas usa Openbox como gerenciador de janelas na área de trabalho e fornece apenas os aplicativos necessários para uso como um sistema de backup ou de restauração de dados.


O programa estará imediatamente pronto para uso após a gravação do arquivo de imagem de 250 MB em um CD. Para o fazer o backup de máquinas virtuais, o usuário também pode integrá-lo diretamente como uma unidade de CD virtual. A máquina virtual que faz o boot a partir da imagem do CD permite que o usuário verifique o sistema de backup em um sistema em execução.


O que o Redo Backup pode fazer...


O Redo Backup combina as vantagens de um sistema operacional confiável com amplo suporte de hardware em um Live CD com as vantagens da ferramenta de partição Partclone [2]. Para este último, o Redo Backup fornece uma interface gráfica bastante simplificada (figura 1). O principal caso de uso para o Redo Backup é, fazer o back up ou restaurar os seguintes tipos de mídia (figura 2):


» Mídia local, discos rígidos e SSDs
» Meio de armazenamento conectado via USB
» Compartilhamentos SMB/​CIFS
» Compartilhamentos FTP


O Redo Backup só faz o backup das áreas do disco que realmente contêm dados e também economiza espaço por compressão. O destino do backup pode, portanto, ser menor do que o disco de backup, contanto que proporcione espaço suficiente para os dados. Como o Redo Backup faz o boot de um meio live e vem com algumas ferramentas adicionais, também é adequado para trabalhos de reparação no sistema de arquivos. A caixa de ferramentas contém um gerenciador de arquivos, um visualizador de imagens, um terminal, um editor de texto e um navegador, bem como o Red Hat Disk Utility. Este último faz a montagem, exclusão, criação e verificação de sistemas de arquivos, além de criar benchmarks. O Redo também vem com o Baobab, uma ferramenta para visualizar o uso do disco; PhotoRec e TestDisk são responsáveis por restaurar arquivos apagados acidentalmente.


O Drive Reset exclui o disco completamente se necessário e restaura as configurações de fábrica. O GParted permite criar, apagar, formatar e alterar o tamanho das partições. O verdadeiro propósito do Redo Backup é restaurar sistemas por completo – por exemplo, após uma falha de disco, vírus ou ataque de malware, ou algum outro desastre. No entanto, além das vantagens do CD live com as ferramentas de resgate acima mencionadas, existem ao menos duas outras possibilidades atrativas: a virtualização de sistemas físicos, incluindo operações físicas para virtuais (P2V), bem como a transferência de máquinas virtuais para o hardware físico (V2P) (figura 3).


... e o que não pode fazer


Como o principal foco do Redo Backup é tornar o mais fácil possível o processo de de backup e recuperação de dados, outros recursos de administração são omitidos. A maior limitação do Redo Backup é que ele só faz o backup de discos completos – e não de partições individuais. Ele também carece da capacidade de criar backups incrementais ou diferenciais ou ainda de restaurar arquivos individuais. O objetivo da restauração também não pode ser menor do que o conjunto de dados de backup. Infelizmente, o Redo Backup não cria backups criptografados nem usa SSH. Outra limitação refere-se a sistemas com UEFI Secure Boot: como a versão atual do Redo Backup Live CD é baseada no Ubuntu 12.04.1 LTS, o usuário deve desligar o Secure Boot no BIOS para usá-lo. A próxima atualização do Redo Backup deve resolver esse problema, já que o Ubuntu é compatível com o Secure Boot desde a versão 12.04.2 [3]. Se o usuário não quiser aguardar tanto tempo para criar seu próprio Redo Live CD, consulte o quadro 1.


Primeiros passos com o Redo Backup


O Redo Backup também fornece suporte para outras tarefas administrativas. A interface de usuário fornece uma visão geral para situações estressantes e também é útil para fornecer suporte por telefone a não especialistas incapazes de visualizar a tela remota.


Se o boot do CD Live levar muito tempo para o seu gosto, o usuário pode transferir a imagem do Redo Backup para um pendrive. Os desenvolvedores recomendam o Unetbootin [4] para isso, mas o Live CD também vem com o Ubuntu Startup Disk Creator, outra ferramenta útil para este fim.


Uma vez que o computador passar pelo boot a partir do Live CD ou mídia USB, Redo Backup inicia automaticamente a guia de interface gráfica do usuário (GUI) para permitir que o usuário faça o backup ou restaure o meio de dados embarcado. A GUI não permite alternar o layout do teclado. Isso pode ser doloroso para usuários que trabalham com teclados que não são padrão – em particular, por conta do uso frequente de caracteres como / nos caminhos. No entanto, se o usuário não utilizar um layout de teclado norte-americano, pode alternar para outro layout com o comando setxkbmap XX.


Se o usuário quiser acompanhar a saída do Redo Backup em detalhes, inicie o programa de backup em uma janela do terminal com redobackup. Os passos são auto-explicativos: o Backup faz precisamente isso para todo o disco, operando o dump de todas as partições e o MBR em um disco rígido USB conectado localmente, uma unidade de rede, ou um servidor de FTP. A restauração faz precisamente isso com um backup criado anteriormente em uma dessas fontes. Este processo é fácil e confiável através da GUI; no entanto, dependendo do tamanho do backup, tanto um backup como uma restauração podem levar várias horas. No entanto, uma instalação padrão típica do Windows 7 com o Office, mas sem dados extensos, pode passar pelo backup e ser recuperada em apenas alguns minutos.


Conclusão


O Redo Backup fornece uma interface de usuário para atender necessidades “bare-metal” a usuários menos experientes. Ele sacrifica algumas características, tais como o backup de arquivos individuais em favor do manuseamento preciso e confiável de sua principal tarefa: recuperação de desastres. Para mais informações, consulte o quadro 2.


Mais informações


[1] Download do Redo Backup: http://​­sourceforge.​­net/​­projects/​redobackup/​­files/​­latest/​­download/
[2] Partclone: http://​­partclone.​­org/
[3] UEFI no Ubuntu: https://​­help.​­ubuntu.​­com/​­community/​­UEFI
[4] Unetbootin: http://​­unetbootin.​­sourceforge.​­net/
[5] Wiki do Redo Backup: http://​­sourceforge.​­net/​p/​­redobackup/​­wiki/​­Home/
[6] Nomes dos releases Ubuntu: https://​­wiki.​ubuntu.​­com/​­DevelopmentCodeNames


Quadro 1: CD Live Redo Backup


Os desenvolvedores do Redo Backup fornecem instruções detalhadas passo a passo para criar CD live próprio [5]. A base para a abordagem descrita aqui é Ubuntu 12.04 (Precise Pangolin) com ADeskBar versão 0.4.3. O último é o lançador de aplicativos baseado em Python/Gtk para Openbox, onde reside o menu iniciar simplificado do Redo Backup. De acordo com os desenvolvedores, as novas versões do Ubuntu são adequadas como base para o seu próprio CD live também, mas isso aumentaria o tamanho do arquivo de imagem. Para criar um, substitua o nome de versão (precise) indicado no manual pelo da nova versão do Ubuntu. A wiki do Ubuntu oferece uma lista completa [6].


Quadro 2: Alternativas ao Redo Backup


Administradores que necessitam de formas mais flexíveis de fazer o backup ou restauração dos dados podem se interessar nas seguintes ferramentas de backup de imagens:


Livre e em código aberto


Clonezilla: baseado no Debian Live CD com um menu de navegação baseada em texto. Clona, faz backup e restaura as partições individuais ou discos inteiros.
G4L: Cria uma cópia (ghost) em ambientes Linux, faz o backup de discos inteiros, diretórios ou arquivos individuais. O sistema de menu baseado em texto; e também faz o backup de SSHFS.
Partimage: faz backup de dados de mídia ou partições via SSL através da rede com o seu próprio servidor e cliente. Não há suporte para ext4 e Btrfs. Também restaura arquivos individuais a partir da imagem.
Mondo Rescue: solução de recuperação de desastres que cria backups completos em discos e os distribui através de CDs ou DVDs. Um CD de boot pode restaurar um computador inteiro com essas mídias de backup.
partclone [2]: ferramenta de linha de comando para backup e restauração de partição com blocos usados.
Trinity Rescue Kit (TRK): Live CD e sistema de recuperação com um menu baseado em texto, particularmente útil para a recuperação de sistemas Windows, incluindo recuperação de senha e um scanner de vírus.
SystemRescueCd: LiveCD com inúmeras ferramentas de recuperação de dados. Use o partimage para fazer backup de discos e partições.


Sistemas Comerciais


PartedMagic: Tornou-se uma ferramenta comercial em agosto de 2013; Live CD com ferramentas gráficas para particionamento, clonagem, recuperação e supressão de dados.
Acronis True Image: imagem de disco para servidores Windows e Linux com backup de dados opcional na nuvem.
Symantec Ghost Solution Suite: modelo ClientServer com um console central para gerenciamento de imagem.
Paragon Hard Disk Manager Premium: imagem de disco para servidores Windows com o ambiente de recuperação WinPE.
StorageCraft ShadowProtect: ferramenta de imagem de disco abrangente; apenas para sistemas Windows.


O autor

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Dia de mudança

Migrar os dados de um conjunto de dispositivos de armazenamento para outro parece tarefa fácil, mas será que é mesmo? Neste artigo analisaremos algumas ferramentas que podem ajudar.


Por Jeff Layton


Quase todo mundo que ler este artigo teve, em algum momento da vida, que se mudar de um lugar para outro. Este processo envolve embalar todos os seus pertences, colocando-os em algum tipo de transporte, para levá-los ao novo local, descarregá-los, e, finalmente, desembalar tudo. Quem já fez isso várias vezes poderá afirmar que não se trata de uma diversão, tampouco de uma atividade agradável. Claro que, para quem detesta fazer mudanças, há sempre a possibilidade de vender ou doar tudo e comprar coisas novas para a nova casa. Ao mesmo tempo, é sempre interessante ver as coisas que temos acumulado ao longo dos anos e, talvez mais interessante ainda, poder mantê-las.


E o mesmo é verdadeiro para o armazenamento de dados. Em algum momento teremos que mover os dados da solução de armazenamento existente para outra, por um sem número de razões: talvez sua solução de armazenamento atual se torne obsoleta e saia da garantia, ou talvez o usuário necessite de capacidade adicional e não pode expandir o armazenamento atual. Claro, outra opção é apenas apagar (queimar) todos os dados de uma solução de armazenamento existente.


Abordagem


Na conferência do Lustre User Group [1], Marc Stearman, do Lawrence Livermore National Laboratory, palestrou sobre “Sequoia Data Migration Experiences[2]. Sequoia é um grande sistema com 55 PB de armazenamento em execução no Lustre sobre ZFS [3], atingindo acima de 850GBps. Marc falou sobre a movimentação de dados de sistemas mais antigos para o Sequoia e algumas das questões que a equipe enfrentou (e que não foram fáceis). Sua palestra inspira a examinar as ferramentas que podem ser usadas ​​para migrar dados. Uma das muitas maneiras de migrar dados é uma abordagem baseada em blocos, em que copiamos um conjunto de blocos usando algo como um snapshot, ou até mesmo um sistema de arquivos Copy-on-Write (COW) que grava os dados em uma nova solução de armazenamento. A abordagem baseada em blocos precisa ser planejada com muito cuidado porque estamos usando um conjunto de blocos em vez de arquivos individuais; no entanto, é possível simplificar o processo, especialmente na preservação de metadados, embora este seja dependente do hardware para o velho e novo armazenamento.


A outra abordagem, e a que usaremos neste artigo, é baseada em arquivos. Neste método, os arquivos são migrados fazendo uso de diversas ferramentas e técnicas. A migração baseada em arquivo prevalece porque é mais fácil de controlar o que é migrado. Por outro lado, pode ser mais difícil de usar já que cada arquivo é trabalhado individualmente. Conversamos com muitas pessoas em vários centros HPC sobre migração de dados e encontramos duas abordagens gerais para a migração de dados através de arquivos. A primeira abordagem é bastante simples, e consiste nos usuários a operarem sozinha. A segunda maneira é operá-la para os usuários. Com a primeira opção, os usuários podem decidir quais dados são importantes o suficiente para serem migrados. O administrador deve fornecer a eles ferramentas testadas, mas o ponto é que os usuários irão mover os dados que considerarem importantes. A regra geral é que os usuários manterão todos os dados para sempre, mas um site em particular, nos informou que eles descobriram que os usuários não necessariamente migram todos os dados. Com a segunda abordagem – fazer a migração para os usuários – a migração de dados leva um pouco mais de planejamento e até mesmo um pouco de hardware. A primeira coisa que o usuário precisa entender é o “estado” dos dados em seu armazenamento atual. O quanto está mudando e quais diretórios do usuário são utilizados ativamente? Também devemos examinar os arquivos de dados para permissões, propriedade intelectual, time stamps e xattr (atributos estendidos). Para facilitar a vida, podemos também montar os dados mais antigos como somente leitura para que possamos copiá-los sem medo de alterações (Stearman executou esse problema). Em última análise, o que queremos é uma lista de arquivos (caminho completo) que podem ser migrados de forma segura, juntamente com os atributos que precisam ser preservados. Certifique-se de fazer alguns testes antes de migrar os dados, para que não perca nenhum atributo ou mesmo quaisquer dados.


A migração de dados pode ser bem sucedida em muitas configurações de hardware possíveis; a figura 1 mostra uma configuração um tanto genérica. À direita está a configuração de armazenamento antiga, que possui um ou mais servidores de dados conectados a um switch (caixa vermelha). O novo armazenamento está do lado esquerdo, com um ou mais novos servidores de dados ligados a um switch. Entre os dois switches está um data mover único. A função do data mover é agir como o elo entre as soluções de armazenamento antigas e novas e efetivamente "mover dados". O usuário pode possuir muitos deles, como deseja ou precisa. A maneira mais simples de mover dados é fazer com que o data mover movimente um cliente do sistema de armazenamento antigo e um cliente do novo sistema de armazenamento. Isso pode não ser possível por conta do conflito de requisitos de software, mas o usuário pode utilizar uma rede TCP/IP e um servidor para que o NFS exporte o armazenamento para o data mover. Em seguida, basta copiar os dados entre os pontos de montagem. Por exemplo:


$ cp ‐a ‐‐preserve=all 
‐r /old_storage/data /new_storage/data

Esteja avisado de que, se usar o NFS, perderá todas as informações xattr porque nenhum protocolo NFS pode transferi-lo. Neste caso, o usuário pode ter que utilizar algo mais. Este exemplo simples tem muitas variações. Por exemplo, podemos pular o data mover e apenas exportar pelo NFS o armazenamento de um servidor antigo e montá-lo em um servidor de dados sobre o novo armazenamento, mas o conceito básico é que, de alguma forma, temos que mover os dados de um sistema de armazenamento para outro.


Opções de software


Uma série de ferramentas podem ser usadas para migrar dados, que vão desde ferramentas comuns ou aquelas que são um pouco mais complexas, até ferramentas que podem não ser capazes de transferir os atributos de arquivo. Algumas são mais fáceis de usar do que outras, mas todas podem ser potencialmente usadas para migrar dados, dependendo das necessidades do usuário. Para começar, examinaremos a primeira e provavelmente mais óbvia delas: a ferramenta cp.


1. ``cp@2 No layout simples mostrado na figura 1, a forma mais óbvia de migrar dados é usar o data mover para montar as duas soluções de armazenamento. Em seguida, podemos simplesmente usar o cp entre os pontos de montagem, como demonstrado no comando cp mostrado anteriormente. É tudo muito simples, mas o usuário precisa perceber algumas sutilezas.


Como mencionamos anteriormente, se qualquer uma das soluções de armazenamento é montada pelo NFS no data mover, o usuário perderá todos os dados xattr. Existe uma maneira de contornar este problema, mas não é fácil e envolve codificar um script. O script lê os dados xattr do arquivo no armazenamento antigo e os armazena em algum tipo de arquivo ou banco de dados. O comando cp copia então o arquivo do armazenamento antigo para o novo. No novo armazenamento, o usuário precisa dar um “replay” nos dados xattr do arquivo ou do banco de dados para o arquivo, e terá efetivamente copiado o xattr. Se optar por essa abordagem, não se esqueça de testar o script antes de aplicá-lo aos dados do usuário. Note também que usamos a opção -a com o comando cp [4]. Essa opção significa "arquivo", e fará o seguinte:


» Copiar links simbólicos como links simbólicos.


» Preservar todos os atributos (modo, propriedade, timestamps, links, contexto, xattr) porque usamos a opção ‐‐preserve=all. Se não usar essa opção, será padrão apenas para modo, propriedade e timestamps.


» Copiar recursivamente todos os arquivos e diretórios em sub-árvores. Também especificamos isso com a opção -r, mas a opção de arquivo, -a, invoca a opção de cópia recursiva também. Usamos essa opção porque ela preserva todos os atributos, incluindo os usos do SELinux.


Se usar o comando cp, observe que é um aplicativo de thread única. Por conseguinte, não é susceptível saturar a rede, o que seria um desperdício de recursos e tomaria um tempo muito longo. Se o usuário possui um bom servidor data mover, provavelmente terá vários cores que não estão fazendo nada, então por que não aproveitá-los? A maneira mais fácil de tirar proveito dos cores é executar diversos comandos cp ao mesmo tempo, seja em arquivos específicos ou em sub-árvores específicas (comece pelo ramo mais baixo e vá subindo como root). Não é muito difícil criar o script, se o usuário tiver uma lista de arquivos que precisam ser migrados: basta iniciar um comando cp no data mover para cada core.


Sendo um bom administrador HPC, o usuário também sabe usar o comando numactl para o pin do processo no core, para que você não tenha processos debulhando em todo o lugar. Basta escrever o script de modo que quando um comando cp é emitido em um núcleo particular, ele pega o próximo arquivo que precisa ser migrado (apenas dividir a lista de arquivos entre os núcleos). Uma segunda maneira de aproveitar os cores extras é usar uma ferramenta de cópia de arquivos distribuídos.


2. dcp Se o usuário é uma pessoa HPC, está acostumada com o poder de muitos cores e muitos nós, então por que não usar esses cores para copiar dados? Há um projeto para fazer exatamente isso: o DCP [5] é um código simples que usa MPI [6] e uma biblioteca chamada libcircle [7] para copiar um arquivo. Isso soa exatamente igual ao que um administrador HPC faria, certo? O DCP usa um determinado tamanho de bloco ao fazer a cópia. Para arquivos maiores, o usuário realmente precisa mudar o tamanho do bloco no arquivo dcp.h e reconstruir o código, mas poderia facilmente construir o código com vários tamanhos de blocos diferentes e nomear o executável de forma diferente (por exemplo, dcp_1KB, dcp_10KB, dcp_1MB, dcp_10MB, dcp_1GB). Então, em um script, verificamos o tamanho do arquivo e usamos uma versão do DCP que permite dividir o arquivo em um bom número de partes.


Por exemplo, não use uma versão DCP de 1MB para copiar um arquivo de 1MB. Se fizer isso, então apenas um processo copiará o arquivo. Em vez disso, divida o arquivo pelo número de processos MPI e depois divida esse valor pelo número 10 ou mais (número de blocos transferidos por cada processo). Isso deve acarretar um desempenho razoável. Além disso, observe que, ao utilizar o dcp, o usuário não tem que usar fluxo cp paralelo. O script pode ser apenas serial. O dcp é baseado em MPI, para que possamos tirar proveito das redes IB e obter maior desempenho. Por outro lado, o dcp não transfere todos os atributos. Na documentação, ele diz que preserva a propriedade, permissões e timestamps, mas, na palestra de Marc Stearman, ele observou que esses atributos ainda não foram implementados. No entanto, pode ser interessante testar o DCP para ver se atende às suas necessidades. O usuário também pode contribuir com algo para o projeto, talvez adicionando atributos de arquivo.


3. tar Outra ferramenta que o usuário pode não ter pensado muito a respeito é o tar. Embora não seja apenas uma ferramenta de cópia de dados, podemos usá-la para recolher lotes de pequenos arquivos em um único arquivo (.tar), copiá-lo para o novo sistema de armazenamento e, em seguida, descompactar o arquivo tar. Isso pode tornar a migração de dados muito mais fácil, mas ainda é preciso prestar atenção aos detalhes (veja o tópico Recomendações). Se quiser preservar todos os atributos de arquivo usando o tar, atente às opções [8] usadas. As opções que o usuário pode querer considerar são mostradas na tabela 1. Muitas das opções podem ser usadas com tar.


Recomendamos fortemente experimentá-los para certificar-se de que façam tudo que o usuário desejar, especialmente as opções que afetam dados xattr. Uma nota de cautela: se executar o comando tar no antigo armazenamento, certifique-se de que tenha espaço suficiente para armazenar o arquivo .tar. Também é recomendável não executar o tar em todo o conteúdo de armazenamento antigo, pois o usuário pode ficar sem espaço. Se tiver o tar funcionando do jeito que espera, simplesmente copie o arquivo .tar do armazenamento antigo para o novo armazenamento usando cp ou algo similar. Além disso, podemos tornar o tar parte de um script em que usamos o tar em uma parte menor da árvore de diretórios geral, copiamos para o novo armazenamento, descompactamos e depois somamos os novos arquivos. Depois, o usuário pode repetir o processo. Note que este é um processo em série e pode não oferecer o desempenho desejado, embora seja possível executar diversos comandos tar ao mesmo tempo em um script. No entanto, este processo pode não ser tudo que o usuário espera.


4. Mutil Uma ideia adicional que algumas pessoas têm buscado é a cp multithread. Isso pode ser feito com o patch das ferramentas padrão do Linux (GNU coreutils) [9], e o projeto Multi [10] faz exatamente isso – ele modifica o cp e o md-5sum de modo que sejam multithread. Nas palavras dos autores do Mutil, ele se destina ao uso para cópias locais. Isso se encaixa com o modelo da figura 1, em que um data mover tem dois sistemas de arquivos montados de forma que qualquer tipo de cópia de dados entre pontos de montagem é, essencialmente, uma cópia local. A versão atual do Mutil, 1.76.6, é construída contra a coreutils versão 7.6. No entanto, as distribuições Linux mais recentes, como o RHEL 6.x, usam uma versão mais recente do coreutils, por isso pode não ser fácil de usar uma versão mais antiga no data mover.


5. Rsync Uma ferramenta que não mencionamos é o rsync [11]. Trata-se de uma ferramenta para sincronização de arquivos, por isso, em muitos casos, as pessoas o utilizam automaticamente para migração de dados. Assim como acontece com o tar, o rsync possui uma infinidade de opções (tabela 2) [12]. Muitas dessas opções têm implicações, por isso é recomendável experimentar um pouco antes de prosseguir com qualquer migração de dados. Certifique-se de prestar atenção aos atributos e como eles são ressincronizados para o novo armazenamento. A palestra de Marc Stearman, mencionada no início deste artigo, contempla algumas boas observações sobre o uso do rsync para migrar dados de um sistema de armazenamento para outro. Ele e sua equipe descobriram que o Rsync é muito “verborrágico” (chatty), bem como metadata intensive (lembre-se que eles estão migrando dados de uma solução de armazenamento para outra, por isso não se trata da sincronização de arquivos entre dois locais).


Em sua migração, eles também descobriram que, quando o Rsync migra arquivos, ele primeiro verifica se o arquivo existe no sistema de arquivos de destino, ao abri-lo (uma operação de metadados). Em seguida, cria um arquivo temporário, copia os dados, e move o arquivo temporário para o local correto do arquivo de destino. Todos estes passos geram metadados intensivamente. A opção --inplace pula a etapa de arquivos temporários e grava os dados para o arquivo no local correto no armazenamento de destino. Dependendo do número de arquivos a serem migrados, esta abordagem pode economizar tempo, porque reduz o efeito nas operações de metadados.


Note que, com o Rsync, não precisamos necessariamente de um data mover entre o velho e o novo armazenamento. Só precisamos de pelo menos um servidor de dados associados com o armazenamento antigo e pelo menos um servidor de dados associado ao novo armazenamento e que estão em rede e capazes de "ver" o outro. Em seguida, podemos usar o Rsync para copiar os dados para o novo armazenamento. Dependendo dos sistemas de armazenamento, pode ser uma boa ideia que os servidores de armazenamento sejam clientes de armazenamento e não parte da solução de armazenamento. Um exemplo disso é o Lustre [13], onde os servidores de dados são clientes Lustre, em vez de um servidor de OSS (Object Storage Server). Até onde sabemos, o Rsync não possui versão paralela formal, mas muitas pessoas querem algo assim. Os artigos a seguir


» Rsync paralelo de uma enorme árvore de diretório [14] » Paralelismo de processos RSYNC [15] » Como paralelizar com o Rsync [16]


podem ajudar a usar o Rsync de forma paralela.


6. BitTorrent O BitTorrent [17] não é apenas uma ferramenta para download de cópias ilegais de mídia digital. É, na verdade, um protocolo de compartilhamento peer-to-peer com algumas ferramentas associadas que utilizam vários streams de dados para copiar um único arquivo. Usar vários streams pode maximizar a largura de banda da rede, mesmo se os streams forem relativamente lentos individualmente. Ele também suporta hashing paralelo, enquanto a integridade de cada peça pode ser verificada de forma independente e o arquivo verificado assim que for entregue, para ter a certeza de que está íntegro. O BitTorrent é atraente por conta de sua capacidade de baixar arquivos de várias fontes ao mesmo tempo. Isso evita o limite de desempenho de um único stream de ferramentas como cp ou rsync e é por isso que é tão popular fazer o upload e download de arquivos a partir de sistemas domésticos com muito baixo desempenho da rede. O desempenho de um único stream é relativamente baixo, mas há tantos sistemas participantes que, no total, o desempenho poderia ser muito bom.


Se o usuário quiser copiar um arquivo do armazenamento de dados antigo para o novo usando BitTorrent, primeiro deve criar um arquivo descritor de torrents que será usado no novo servidor(s) de armazenamento de dados. O(s) servidor(s) de dados no armazenamento antigo atua como um seed. Os novos servidores de dados, na qualidade de "pares" (peers), podem, então, fazer o download do arquivo conectando-se aos servidores de seeds e fazer o download. O usuário só precisa de uma conexão de rede entre os servidores de seeds e os peers. Também é possível escalar o desempenho adicionando mais servidores (seeds e peers) anexados ao armazenamento antigo, bem como mais clientes de BitTorrent. Com um sistema de arquivos centralizado, escalar a parte do servidor de arquivos da troca não deve ser um problema, porque cada nó tem acesso aos dados (do sistema de arquivos centralizado). Um arquivo para download é dividido em pedaços, e cada parte pode ser baixada a partir de um servidor BitTorrent diferente (seed ou peer). Os pedaços são misturados de modo que, se os arquivos forem corrompidos, isso possa ser detectado. As peças não são baixadas em ordem sequencial, mas em uma ordem um pouco aleatória, com o cliente BitTorrent requerendo e montando as peças.


No lado do software, precisamos de um servidor BitTorrent em cada um dos nós de seeds (servidores de dados antigos) e um cliente BitTorrent em cada um dos servidores de peers e servidores puros do cliente. Servidores e clientes estão disponíveis para vários sistemas operacionais e distribuições. A figura 2 mostra uma disposição BitTorrent muito simples para a migração de dados. Nesse layout, escolhemos um caminho um pouco diferente e tornamos cada servidor de dados no armazenamento antigo um servidor seed, por isso ele servirá um arquivo específico e nenhum outro servidor irá fornecer para ele, criando os arquivos torrent corretos. No novo armazenamento estão clientes BitTorrent que solicitam os arquivos. Todos os arquivos que precisam ser migrados do antigo armazenamento são dados para os novos servidores de armazenamento. É bastante fácil de dividir a lista de arquivos entre os clientes para que o usuário não perca tempo recopiando os arquivos. Há muitas maneiras de criar uma rede BitTorrent para migrar arquivos.


Não as testamos, então não sabemos se ela também pode copiar atributos de arquivo, mas, para sermos honestos, não acreditamos que possa. Se isso for verdade, então o usuário precisará de uma maneira de recriar todos os atributos sobre os arquivos transferidos. Muito recentemente, foi anunciado que o BitTorrent havia iniciado um teste alfa de uma nova ferramenta de sincronização [18]. O BitTorrent Sync [19] permite que manter arquivos entre vários servidores em sincronia. A nova ferramenta também oferece sincronização unidirecional [20], o que poderia ajudar na migração de dados. Esteja atento ao BitTorrent Sync, pois pode significar um benefício enorme para a migração de dados.


7. bbcp Outras ferramentas podem lidar com as transferências de dados multistream. Uma delas, bbcp [21], pode transferir arquivos entre servidores que utilizam múltiplos streams e fazer transferências de dados recursivos também. Assim como acontece com outras ferramentas, o BBCP contempla várias opções, e a página principal os descreve em uma boa quantidade de detalhes. A Cal Tech também descreve o BBCP com mais detalhes e inclui alguns parâmetros de ajuste de rede para melhorar o desempenho [22]. O BBCP possui a capacidade de comprimir os dados durante a transferência (--compress), fazer uma transferência recursiva (--recursive), e preservar alguns metadados (--preserve). No entanto, a página principal do BBCP menciona que a opção --preserve só preserva o modo do arquivo de origem, nome do grupo, tempo de acesso e tempo de modificação.


Se seus dados possuírem metadados xattr associados, esses dados serão perdidos se o BBCP for usado. No entanto, sempre é possível escrever um script para retornar e adicionar as informações xattr. Uma limitação do BBCP é que ele não pode migrar diretórios por si só. Não tentamos o BBCP, então não podemos dizer muito sobre como configurá-lo e usá-lo. No entanto, parece promissor se seus arquivos de dados não possuírem informações xattr.


8. bbFTP Embora o nome bbFTP [23] sugira alguma associação ao BBCP, não é disso que se trata. O BBCP foi desenvolvido no SLAC [24], e o bbFTP foi desenvolvido no IN2P3 [25]. O bbFTP é algo como o FTP, mas usa um protocolo de transferência próprio, otimizado para grandes arquivos (maiores que 2GB). Como o BBCP, ele trabalha com streams múltiplas e contempla compressão e alguns recursos de segurança. Uma versão é streams até mesmo ao firewall e ao NAT [26]. No entanto, o bbFTP não parece possuir uma forma de manter os atributos de arquivo, incluindo propriedade, modo, time-stamps e dados xattr. É apenas uma ferramenta FTP simples projetada para altas taxas de transferência de arquivos via FTP (e isso não é uma coisa ruim: pode apenas não ser a melhor opção para a migração de dados).


9. GridFTP Provavelmente, o toolkit FTP mais popular para transferência de arquivos de dados entre hosts é o GridFTP [27], que faz parte do Globus Toolkit e é projetado para a transferência de dados via WAN. Lembre-se que o Globus Toolkit é projetado para redes de computação, que podem comprimir sistemas distantes uns dos outros. O GridFTP foi projetado para ser uma maneira padrão de mover dados entre as redes. Além disso, o GridFTP tem algumas características únicas que funcionam bem para mover dados:


» Segurança – Usa GSI para prover segurança e autenticação. » Transferência paralela e striped – Aprimora o desempenho ao usar vários streams TCP para transferir dados. » Transferência parcial de arquivo – Permite retomar downloads interrompidos, diferentemente do FTP normal. » Tolerância a falhas e reiniciar – Permite que os fluxos de dados interrompidos sejam reiniciados, mesmo que automaticamente. » Otimização automática TCP – Ajusta a janela de rede e tamanhos de buffer para melhorar o desempenho, confiabilidade, ou ambos.


Usar o GridFTP pode ser um desafio, porque precisamos usar um número de peças do Globus tanto no armazenamento antigo como no novo. No entanto, uma versão do GridFTP, GridFTP-Lite, substitui o GSI pelo SSH. Isso torna as coisas um pouco mais fáceis porque os recursos de segurança podem não ser necessários para a migração de dados fora do datacenter, apenas dentro dele. Não testamos o GridFTP, então não estamos certos de quão bem ele trabalharia para a migração de dados. Uma preocupação que temos é que se a migração de atributos é importante, incluindo a propriedade, timestamps, e os dados xattr, então o GridFTP pode não ser a melhor ferramenta.


10. Aspera Até este ponto, focamos em ferramentas de código aberto para a migração de dados, mas uma ferramenta comercial é digna de menção. A Aspera [28] possui um software muito poderoso e muito comentado usado para transferir dados. Eles usam um algoritmo chamado fasp para transferir dados sobre redes TCP. Algumas pessoas chegaram a afirmar que podem transferir dados mais rapidamente do que pela via cabeada, provavelmente por conta da compressão de dados. No geral, essas pessoas estão muito impressionadas com o desempenho do Aspera.


A Aspera oferece sincronização [29] com suas ferramentas. Segundo o site, as ferramentas podem “preservar atributos de arquivo como permissões, tempos de acesso, propriedade etc”. Não sabemos se isso significa dados xattr também, mas pelo menos eles podem lidar com atributos POSIX.


Recomendações


Cobrimos uma série de ferramentas e adicionamos comentários sobre como as ferramentas podem ser usadas para migrar dados de uma solução de armazenamento antiga para uma nova. No entanto, a coisa mais importante não é necessariamente a ferramenta(s), mas o planejamento e execução da migração. Achamos válido rever alguns passos que devem ser considerados no que se refere à migração de dados. O primeiro e extremamente importante passo – e não podemos mais enfatizar isso – é que o usuário precisa entender seus dados; ou seja, precisamos entender o estado dos dados. Responder – ou ser capaz de responder – as perguntas da tabela 3 tornará a vida infinitamente mais fácil na medida em que se planeja a migração de dados. Uma vez que o usuário tiver essa informação, poderá desenvolver um plano para migração de dados. Em geral, inicia-se o trabalho a partir dos dados de usuário que não sofreram alterações recentes, mas ainda precisam ser migrados. Precisamos entender como os dados são distribuídos através de árvore de diretórios do usuário. A maior parte dos dados encontra-se na parte inferior (geralmente é), ou os dados estão distribuídos em toda a árvore? Compreender isso permite planejar a melhor forma de migrar os dados.


Por exemplo, se a maioria dos dados estiver na parte inferior da árvore, é recomendável pensar sobre como migrar a estrutura de diretórios em primeiro lugar e, em seguida, usar o tar para capturar os dados nos níveis mais baixos. A razão é que o tar não compreende as estruturas de diretórios, por isso, se o usuário descompactá-lo no nível errado, enfrentará problemas. Além disso, será necessário migrar os diretórios; caso contrário, pode haver perda de permissões, timestamps, links, proprietários e dados xattr. Não pense que é possível simplesmente recriar a estrutura de dados sobre o novo armazenamento.


Como parte deste processo, também provavelmente precisaremos de uma lista de arquivos e diretórios na conta do usuário. É apenas uma lista simples do nome qualificado para o arquivo. Esta lista será muito importante porque muitas das ferramentas discutidas neste artigo podem alimentar um nome de arquivo para migração de dados, e uma lista de arquivos permitirá paralelizar as operações, melhorar o rendimento e reduzir o tempo de migração. Depois de ter identificado o usuário com os dados menos ativos, podemos, então, trabalhar com a lista de usuários até chegar aos usuários mais ativos em termos de manipulação de dados. Para cada usuário, precisamos percorrer os mesmos passos que fizemos com o usuário menos ativo. Certifique-se de entender a a estrutura da árvore para criar uma lista de todos os arquivos.


Neste ponto, devemos ter uma sequência de tempo boa para migrar os dados, começando com o usuário com os dados menos ativos e progredindo para o usuário mais ativo; além disso, é necessário dispor de listas de arquivos para cada usuário que precisa ser migrado. Agora, ainda precisamos determinar exatamente como fazer a transferência, e entender qual ferramenta(s) deve ser usada para a migração de dados obter o máximo rendimento entre as soluções de armazenamento e reduzir o tempo de migração. Este passo pode significar a criação de scripts, mas definitivamente significa lotes de testes. Para talvez ajudá-lo em seu teste, temos duas recomendações fundamentais neste momento: (1) Transferir os diretórios primeiro, incluindo quaisquer atributos de diretório; (2) criar uma conta fictícia e preencher com alguns dados fictícios para testes.


O primeiro passo é um pouco contraintuitivo, mas Stearman também mencionou isso em sua palestra. Ao migrar a estrutura de diretórios primeiro, o usuário pode migrar os arquivos ainda mais abaixo no diretório, sem ter que transferir tudo de uma vez. Como descrevemos anteriormente, algumas das ferramentas não entendem árvores de diretórios muito bem. Por exemplo, se for criado um arquivo tar para o caminho /home/jones/project1/data1/case1 que é recursivo. Se o usuário, em seguida, copiar o arquivo tar para o novo armazenamento e descompactá-lo em /home/jones, os dados estarão no lugar errado. Para evitar que isso aconteça, cabe ao usuário migrar a estrutura de diretórios primeiro. Só não se esqueça de capturar todos os atributos para os diretórios.


Nossa segunda recomendação – testar tudo em uma conta fictícia – parece óbvia, mas oferece mais feedback sobre as ferramentas e processos que simplesmente tentar um único arquivo. Além disso, não se esqueça de testar todos os procedimentos. Depois de ter testado com a conta fictícia, recomendamos testar com um usuário que não tenha muitos dados ou que não tenha usado muito a conta, e iniciar a migração de outros dados do usuário e aumentar a taxa de transferência até que o limite máximo seja atingido. Outra observação que é tremendamente óbvia, mas facilmente esquecida, é: não permitir que os usuários modifiquem os dados enquanto estiverem migrando ou após terem sido migrados. Embora isso pareça óbvio, na prática, pode ser uma luta. O administrador pode desabilitar a conta desse usuário durante a migração ou simplesmente pedir que se abstenha de utilizar o sistema. Uma vez que os dados forem migrados, então poderemos apontá-los para esses dados e não para o local antigo (o administrador pode simplesmente alterar o nome do diretório raiz, mas tenha cuidado porque isso muda os atributos do arquivo no diretório root).


Independente da(s) ferramenta(s) usada(s), certifique-se de fazer o checksum do arquivo antes e depois de migrá-lo para ter certeza de que são os mesmos, e que nenhum dado tenha se perdido. Mesmo que a ferramenta faça a verificação checksum para o usuário, recomendamos fazê-la sozinho. Somente quando estiver satisfeito que os checksums correspondem o usuário deve marcar o arquivo como migrado, apagado ou modificado no armazenamento antigo. Também recomendamos usar algo um pouco mais sofisticado que o md5sum. Recomendamos usar a série SHA-2 de checksums, pois há menos chances de ocorrer um falso positivo. Algumas das ferramentas usam o md5sum para suas próprias verificações checksum de arquivos. Nossa última sugestão é verificar, verificar, verificar. Certifique-se que os dados no novo armazenamento coincidam com os dados no servidor antigo. É fácil escrever um script simples que percorre os diretórios e reúne esta informação. Execute o script no armazenamento antigo e no novo armazenamento e os compare. Se eles não corresponderem, voltar atrás e corrija o erro. Isso inclui checksums de arquivos também.


Conclusão


A tecnologia de armazenamento tem crescido tão rapidamente que é como olhar para um filho quando ele tem cinco anos, e, em um piscar de olhos, de repente ele tem 15. Não mencionamos apenas grandes sistemas, mas sistemas de médio porte, pequenos sistemas, estações de trabalho, e até mesmo sistemas domésticos. Em algum momento durante esse surto de crescimento, o usuário terá que pensar em migrar seus dados a partir de uma solução de armazenamento antiga para uma nova, mas copiar os dados não é tão fácil quanto parece. O usuário deseja preservar os atributos dos dados durante a migração, incluindo informações xattr (atributo extendido), e perda de informações, tais como a propriedade do arquivo ou timestamps, que podem causar estragos em projetos. Além disso, o usuário tem que prestar atenção às mesmas coisas nos diretórios; eles são tão importantes quanto os próprios arquivos (lembre-se de que tudo é um arquivo no Linux).


Neste artigo, apresentamos algumas ferramentas possíveis para ajudar com a migração de dados, e cobrimos apenas algumas delas. No entanto, também enfatizamos a necessidade de planejar a migração de dados, se realmente quiser ter sucesso. É importante ressaltar que não há uma ferramenta que faça tudo o que o usuário quiser. No final das contas, é preciso usar várias ferramentas para cobrir tudo de forma eficiente. Além disso, essas ferramentas são bastante genéricas, que é bom porque eles podem ser usados em muitas situações. Ao mesmo tempo, eles não podem tirar partido do hardware. Um exemplo simples é que todas essas ferramentas, mas são um TCP baseado, ainda InfiniBand oferece muito maior largura de banda que não pode ser totalmente utilizado para migração de dados. Podemos usar IP sobre InfiniBand, e teremos uma maior largura de banda do que não usando o recurso, mas ainda assim não usaremos toda a capacidade da rede.


Mais informações


[1] Lustre User Group conference: http://​­www.​­opensfs.​­org/​­events/​­lug13/ [2] Sequoia Data Migration Experiences: http://​­www.​­opensfs.​­org/​­wp‐content/​uploads/​­2013/​­04/​­LUG‐2013‐Sequoia‐Data‐Migration‐Experiences.​­pdf [3] ZFS and Lustre: http://​­wiki.​­lustre.​­org/​index.​­php/​­ZFS_and_Lustre [4] cp command: http://​­www.​­gnu.​­org/​­software/​­coreutils/​manual/​­html_node/​­cp‐invocation.​­html [5] DCP: http://​­filecopy.​­org/ [6] MPI: http://​­en.​­wikipedia.​­org/​­wiki/​Message_Passing_Interface [7] libcircle: https://​­github.​­com/​­hpc/​libcircle [8] tar options: http://​­linux.​­die.​­net/​­man/​­1/​­tar [9] GNU coreutils: http://​­www.​­gnu.​­org/​­software/​­coreutils/ [10] Mutil: http://​­people.​­nas.​­nasa.​­gov/​~kolano/​­projects/​­mutil.​­html [11] Rsync: http://​­rsync.​­samba.​­org/ [12] Rsync options: http://​­rsync.​­samba.​­org/​ftp/​­rsync/​­rsync.​­html [13] Lustre: http://​­wiki.​­lustre.​­org/​­index.​­php/​­Main_Page [14] Parallel rsync’ing a huge directory tree: http://​­blog.​­ciberterminal.​­net/​­2012/​­10/​16/​­parallel‐rsyncing‐a‐huge‐directory‐tree/ [15] Parallelizing RSYNC Processes: http://​­sun3.​­org/​­archives/​­280 [16] Parallelizing rsync: http://​­superuser.​­com/​­questions/​­353383/​parallelizing‐rsync [17] BitTorrent: http://​­en.​­wikipedia.​­org/​­wiki/​­Bittorrent [18] BitTorrent offers file sync tool for PCs and NAS: http://​­www.​­theregister.​­co.​­uk/​2013/​­04/​­24/​­bit_torrent_sync_for_nas/ [19] BitTorrent Sync: http://​­labs.​­bittorrent.​­com/​­experiments/​­sync.​­html [20] BitTorrent Takes Its File-Syncing Service Public: http://​­mashable.​­com/​­2013/​­04/​­23/​­bittorrent‐sync/ [21] BBCP: http://​­www.​­slac.​­stanford.​­edu/​~abh/​­bbcp/ [22] Using BBCP: http://​­pcbunn.​­cithep.​­caltech.​­edu/​­bbcp/​using_bbcp.​­htm [23] bbFTP: http://​­doc.​­in2p3.​­fr/​­bbftp/ [24] SLAC: http://​­www.​­slac.​­stanford.​­edu/ [25] IN2P3: http://​­www.​­in2p3.​­fr/ [26] BBftpPRO: http://​­www.​­weizmann.​­ac.​­il/​physics/​­linux_farm/​­bbftp_PRO.​­html [27] GridFTP: http://​­www.​­globus.​­org/​­toolkit/​docs/​­latest‐stable/​­gridftp/ [28] Aspera: http://​­asperasoft.​­com/ [29] Aspera Sync: http://​­asperasoft.​­com/​software/​­synchronization/


 


Layout


Figura 1 genérico de migração de dados.


Layout


Figura 2 BitTorrent.


 


Tabela 1: Opções tar


Tabela 2: Opções Rsync


Tabela 3: Entendendo seus dados


O autor

Jeff Layton é um especialista corporativo para HPC (High Performance Computing) na Dell. Além de computadores é um admirador de café.

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Complete gratuitamente sua coleção da Linux Magazine até 31/07!


Por


Receita Federal rastreia IP e MAC Address e intima 80 mil contribuintes


Por


Terceirização: Brasscom rejeita ‘teto’ e insiste em tributação sobre a receita


Por


Globalweb Corp. avança em criptografia com solução 100% nacional


Por


Linux Magazine, Fuctura e IBM convidam você para o Congresso de Software Livre do NE


Por


Terceirização: Para advogado, “pejotização é fraude trabalhista e fiscal”


Por


Escanteado na TV aberta, Ginga escreve seu futuro no IPTV


Por


IBM publica artigo sobre migração de aplicativos Linux de x86 para Power Systems


Por


Lançado o Linux 4.0


Por


LM 118 | RaspberryPi no mundo real


Por


É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Ataques DDoS multiplicam e incidentes superam a casa de 1 milhão no Brasil


Por


Segurança cibernética: cadê os profissionais brasileiros?


Por


No mundo das framboesas

Falamos com Eben Upton sobre o RaspberryPi Modelo B+ e sobre os planos para o futuro do mini computador que já conquistou um seleto público.


Por Aaron Shaw


Os últimos meses têm sido bastante agitados para a Fundação Raspberry Pi – com uma série de novos lançamentos de hardware (Pi Noir, Compute Module, Modelo B+), um novo site, um impulso enorme em materiais educativos e de divulgação, uma série de novos funcionários e até mesmo uma visita ao Palácio de Buckingham! Nós conversamos com Eben Upton sobre as recentes mudanças e o que elas significam para o Raspberry Pi.


Linux Magazine: Será que o grande sucesso do Raspberry Pi lhe permitiu expandir seus objetivos tanto sociais quanto de negócios mais do que você tinha pensado ser possível? Eben Upton: Sim, acho que sim. Obviamente estamos fazendo muito mais do que esperávamos fazer, particularmente muito mais engenharia de software. Temos sido capazes de dedicar muito mais esforço em coisas como a placa de exposição e na obtenção de coisas como o Calcule Module para o mercado. O Módulo Compute nunca foi uma realidade até mesmo no início do ciclo de vida do Pi – que foi uma ideia de James Adams –, e era algo que eu buscava desde o dia 1, por isso, é bom ver que chegamos a este ponto no mercado e estamos sendo realmente bem sucedidos. Em contrapartida, no lado social, temos sido capazes de contratar mais pessoas, produzir mais material, e estamos, obviamente, criando novidades como o Picademy, o programa de formação de professores, que tem sido muito popular. Nós certamente não pensamos na formação de professores quando começamos a fazer isso, mas era algo que Carrie Anne [Philbin], queria fazer quando juntou-se a nós. Um monte dessas coisas boas que temos sido capazes de fazer foram as pessoas que ingressaram na organização realmente desejavam fazer. Ben Nuttall, por exemplo, desenvolveu também a seção de documentação e recursos baseados em GitHub do novo website.


LM: O modelo B+ traz uma série de melhorias em relação à Rev2 do Modelo B. O que você vê como atualizações mais importantes para o usuário de Raspberry Pi? Upton: Acho que todas as atualizações possuem importância de igual peso. Cada mudança no modelo B+ é realmente uma mudança relativamente pequena – mas há seis ou sete delas e quando você somar seis ou sete pequenas mudanças, acaba com algo realmente grande. Obviamente, as USBs adicionais são muito úteis para um monte de gente. Venho acompanhando uma grande quantidade de pessoas que tiveram de ligar hubs USB no Pi e assim a combinação de mais USBs e da cadeia de energia USB mais são duas coisas que, juntas, têm feito bastante diferença. Obviamente os pinos GPIO extras são ótimos para pessoas que fazem customizações de hardware e o fator da beleza da placa deve ser benéfico para as pessoas que trabalham em projetos de automação e projetos embarcados.


LM: Foram mais melhorias e mudanças com base nas solicitações e feedback da comunidade e estabelecimentos de ensino, ou eram, principalmente, idéias internas? Upton: Acho que a maioria das mudanças foram baseadas no feedback da comunidade realmente. Obviamente, alguns ajustes eu estava bastante desejoso para fazer, e o poder de processamento um poouco maior é algo que eu também queria fazer, mas em geral foi principalmente relacionado ao feedback do usuário.


LM: Com uma placa como esta, é sempre um ato de equilíbrio entre os recursos oferecidos pela placa e o custo dos componentes para manter o preço baixo para o usuário final. Você considera quaisquer atualizações adicionais, tais como Wi-Fi embutido e Power over Ethernet (PoE) em um futuro pŕoximo? Upton: Eu acho que as duas coisas são realmente bons exemplos de coisas úteis que, quando você as precifica, mal vale a pena considerar pois são muito caros. Mas são duas coisas que eu gostaria de incluir no futuro, mas agora não faz sentido. Não havia nada na placa entre a faixa de 10 a 20 centavos de dólar que sentia útil incluir naquele momento. Nós conseguimos incluir todas as coisas que custam entre 10 a 20 centavos de dólar que sentíamos serem úteis, e o restante que se seria útil custava vários dólares, e é aí que nós batemos em uma parede de tijolos na capacidade de colocar novas coisas na plava. WiFi e Power over Ethernet são grandes exemplos de coisas que gostaríamos de colocar em um Raspberry Pi mas não podemos fazer no momento, devido ao preço.


LM: Foi o lançamento do Modelo B+ especificamente programado para ser feito antes do novo currículo do curso de Ciências da Computação do Reino Unido, ou que foi apenas uma coincidência? Upton: Não, apenas aconteceu dessa forma. Obviamente, é um desafio introduzir um novo produto como este – que exige um certo planejamento. A RS e a Farnell tiveram picos de vendas do Modelo B, então tivemos que planejar com muito cuidado para nos certificarmos de que ambos terminaram suas entregas do modelo B, e ao mesmo tempo fossem capazes de fazer a transição das vendas para o modelo B+. Efetivamente, este foi apenas um número que saiu de uma planilha, mas o momento foi muito conveniente para nós.


LM: O Raspberry Pi, obviamente, tem um PCB muito complicado e intrincado (impressão de placa de circuito) de forma a caber em um pacote tão pequeno. O modelo B+ foi um desafio neste sentido ou continuou relativamente simples? Você pensa em começar do zero ou apenas ajustar o design daqui um tempo? Upton: Penso em fazer um redesign de baixo para cima, com o antigo projeto na mão. Pete (Lomas) tinha feito um monte de coisas legais com o Modelo B, por isso foi uma coisa muito útil para James ter esse material à mão quando estava criando o Modelo B+. Muito disso foi feito em volta do chip BCM2835 e como ele receber sinais de fora. Então, acho que foi útil ver o que Pete tinha feito e procurar formas de melhorar. Mas, certamente, fora do nível de placa, é um redesign começando do zero com um espaço em branco no PCB e é a partir daí que vammos trabalhar. O Modelo B+, por exemplo, foi um primeiro projeto dos furos de montagem dos circuitos, onde a primeira coisa a ser feita na placa eram os furos de montagem e tudo o mais foi construído em torno dessa estrutura. Considerando que no Modelo B isso era feito por último no projeto, você pode ver pela nova colocação dos circuitos o espaço que sobrou.


LM: Com o Raspberry Pi possuindo características tão bem sucedidas e componentes com preço acessível, as economias feitas tornam o Modelo B+ mais rentável do que era originalmente possível em 2012? Upton: Sim, é certamente muito mais fácil negociar os preços dos componentes quando você está dizendo: precisamos de 200.000 componentes por mês, do que era quando estávamos dizendo que gostaríamos de apenas algumas centenas de componentes para começar e prometemos maior volume de compra mais tarde. É uma experiência muito diferente agora. Um grande exemplo é o conector do cartão SD. Nós não tivemos nenhuma opção real para melhorar o preço do conector de cartão SD no começo, porque este era um elemento fixo do projeto com um único fornecedor. No entanto, quando nós conseguimos novos fornecedores de conectores do cartão SD, fomos capazes de garantir ao fornecedor um volume significativo de compra do componente, o que nos permitiu passar para conectores muito melhor de microSD na versão B+, sem nenhuma penalidade significativa de custo. o Raspberry pode não nos tornar ricos, mas rende o suficiente para manter nossos salários.


LM: Alguns dos fãs do Raspberry Pi possuem olhos de águia e notaram que em 2014 você atualizou o design PCB no Modelo B e mudou alguns componentes menores, bem como incluiu um chip LAN9514 USB/Ethernet, e fez uma atualização na classificação FCC do dispositivo para a Classe B. Foram essas mudanças puramente por razões de certificação, ou foi também uma espécie de prova de conceito para um novo circuito pensado para o Modelo B+? Upton: Isso aconteceu puramente por problemas de abastecimento dos principais componentes. Certamente o uso do LAN9514 foi – pudemos usar o LAN9514 no lugar do LAN9512. Foi sem dúvida muito útil mudar para o LAN9514 um pouco antes do tempo. A mudança foi feita em fevereiro, devido a problemas com o fornecimento de componentes. Tínhamos a esperança de obter todos os componentes para o lançamento do Modelo B+, sem alterar o Rev 2 Modelo B, mas no final fizemos algumas mudanças necessárias cerca de quatro meses depois que o produto foi lançado no mercado. Valeu a pena, porque nós ainda íamos produzir em torno de 800 mil unidades antes de mudar para o Modelo B+, e é claro que ainda estamos produzindo o Modelo B, pois ainda há clientes (principalmente industriais) que querem esta versão.


LM: O Raspberry Pi Modelo B vai ser descontinuado no futuro previsível agora que o Modelo B+ foi lançado? Upton: Sim, uma vez que não possuir mais demanda, vai ser descontinuado. Enquanto houver demanda, e ainda há uma procura muito significativa, ele vai ficar em produção – e é bom ter um DFM para a versão do Modelo B, por isso sabemos que pode ser confortável fabricá-lo por mais um ano ou enquanto tivermos demanda para isso. A maioria das pessoas deve realmente começar a mudar para o Modelo B+, de qualquer forma.


LM: No blog oficial do Raspberry Pi, foi recentemente introduzido os HATs (Hardware Attached-on Top) – o novo padrão das placas adicionais para Raspberry Pi. Qual foi a motivação por trás deste movimento, e o que significa tanto para fabricantes de placas quanto para o usuário final? Upton: A motivação foi torná-lo um pouco mais fácil de usar para usuários finais que conectam placas adicionais. O HAT é basicamente as duas coisas – uma especificação mecânica e uma especificação elétrica. Nós pensamos muito sobre o que torna uma placa fisicamente robusta e, depois, escrevemos tudo em um doumento e demos este selo de aprovação que você pode chamá-lo de HAT, enquanto pode construí-lo da melhor maneira possível. No lado da elétrica, existe este sistema EEPROM de auto-identificação de onde está aos blobs da DT (árvore de dispositivos) que lhe permitem configurar automaticamente o sistema para carregar os drivers de dispositivo que serão necessários na sua placa de topo. Por isso, esta é uma simplificação e uma normalização ao mesmo tempo, e esperamos que a maioria das pessoas, a menos que tenham uma razão convincente para não, opte por construir HATs ao invés de construir placas ad hoc para o Modelo B+.


LM: Foi esta especificação HAT algo que você planejou desde o início, na concepção do Modelo B+ ou foi algo que foi introduzido mais recentemente? Upton: Sim, era outra coisa que James Adams e Jonathan Bell estavam ansiosos para colocar no Modelo B+.


LM: Existem planos para uma atualização semelhante do Modelo A, no futuro, como um modelo A+ talvez? Upton: O Modelo A, obviamente, não vendeu tantas unidades como o Modelo B e como vende o Modelo B+, que é derivado do Modelo B. Haverá um Modelo A+ que talvez possa ser derivado a partir do Modelo B+ mas não acho que vai ser um upgrade particularmente significativo, exceto na medida em que você começa a incremendar a placa com pinos GPIO extras e melhor consumo de energia, mas teremos ainda só a metade da memória e da única porta USB. Eu acho que precisamos ser um pouco mais claros sobre os motivos pelos quais um upgrade do modelo A seria necessário. Há uma grande quantidade de pessoas que só vêem o Modelo A, como o primo pobre do B quando na verdade ele é apenas uma versão mais leve, com menor consumo de energia do que o B, e também é mais barata. Nós talvez precisaemos fazer um trabalho melhor de articular isso com as pessoas em breve.


LM: Para aplicações como o balonismo baseado em RaspberryPi que Dave Akerman anda fazendo, assim como quaisquer outras aplicações onde não se pretende utilizar muita energia, o Modelo A parece ser muito útil. Seria essa a melhor vertente para o Modelo A? Upton: Antes de desenvolver o Modelo A, Dave estava realmente fazendo basicamente modelos cada vez mais leves do protótipo original. De fato, antes de ter o Modelo B+, Dave estava fazendo um modelo B+ com cadeias de alimentação diferenciada para seus vôos utilizando reguladores de baixa evasão, soldas LDOs e substituindo os interruptores para que ele pudesse aproveitar melhor suas baterias. Estou esperando que estejamos constantemente convergendo para o "Dave Akerman Pi" – o Pi que é perfeitamente otimizado para funcionar sob um balão! Risos.


LM: Estou supondo que o preço permanecerá o mesmo para a versão atualizada do Modelo A, assim como foi feito com o Modelo B e B+. Você é capaz de dar mais informações sobre o Modelo A+, como será e quais melhorias terá? UE: Sim, esse é o objetivo. Nós realmente não queremos elevar os preços acima US$ 25, porque este tem sido o nosso preço. Uma das coisas mais importantes sobre o Modelo A é que nós prometemos a todos um computador de US$ 25 – por isso temos de fazer um. Nós definitivamente não estamos pensando em mudar isso. Quanto às melhorias e mudanças, ainda não definimos quais serão.


LM: Em entrevistas anteriores, você mencionou que pode haver a possibilidade de um upgrade de processador no Raspberry Pi daqui um tempo. Pelo que eu entendo, já não há mais como melhorar o SoC (system on a chip) com pacotes para o BCM2835 e o chip RAM LPDDR2 para o Raspberry Pi que já está em seu valor máximo disponível de 512MB. Isso certamente seria, então, uma forma de chamar os engenheiros para uma redesign fundamental do Raspberry Pi a partir do zero, junto com um grande quantidade de novos drivers e softwares relacionados. Essa melhoria no processador é algo em que você já está trabalhando? Upton: Essa é a verdadeira dificuldade que temos ao nos afastar da plataforma BCM2835 e assim etaremos praticamente de volta à estaca zero ao fazer isso. Estamos casados ​​com o BCM2835 realmente. Sabemos que vamos ter que mudar o processador em algum momento, e quando pudermos fazer isso com US$ 35, certamente faemos, mas estamos muito longe de fazer isso no momento, mesmo com as economias na escala que temos, por isso vamos ter de esperar por um novo chip, mais moderno, mais potente e mais barato e com o qual possamos contar.


LM: Em um mundo onde a tecnologia agora se move tão rápido, parece ser prática da indústria aumentar a capacidade de hardware antes de otimizar o software que é executado nele. Também é provavelmente muito difícil gastar tempo o tempo no desenvolvimento de uma peça de hardware, como você é capaz de fazer com o BCM2835 e o Raspberry Pi. Você já foi surpreendido com a escala de melhorias de desempenho viáveis puramente através de mudanças de software? Upton: Absolutamente. Sempre incentivamos as pessoas a voltar e tentar executar algum software a partir do primeiro ano, como a primeira versão que fizemos – a diferença de desempenho é bastante impressionante. Isso é esforço da comunidade e é aí que está o dinheiro que gastamos. Acho que isso vai acontecer ainda mais no futuro, já que nós não vamos ter a lei de Moore ao nosso lado para sempre, e eu acho que vamos ver mais foco em otimização de software ao longo do tempo. Mas agora estamos muito satisfeitos por ter escolhido uma plataforma e pregado nossas cores no mastro dessa bandeira.


LM: Você nos forneceu muitas surpresas desde o primeiro Raspberry, então estou achando difícil imaginar como você vai superar isso no próximo ano. O que você tem em mente para 2015? Upton: Risos. Não seriam surpresas se eu lhe dissesse. Haverá surpresas. Já falamos aqui sobre algumas coisas que pretendemos fazer. O material de exibição em particular; Acho que as pessoas vão estar muito satisfeito com a forma como o produto é apresentado. Vamos continuar a tentar surpreender as pessoas. Temos uma equipe de engenharia muito dedicada e que está trabalhando em coisas legais, mas não acho que de agora até ao final do de 2015, por exemplo, seja lançado algo que você possa dizer "uau, eles nunca sequer nos deram uma pista de que estavam trabalhando nisso ", mas eu acho que serão feitas várias melhorias significativas. Coisas como a placa de vídeo e o navegador da web. Acredito que os usuários ficarão muito satisfeitos com a forma como as coisas andam. E também a atenção que damos aos detalhes no lado do software deve melhorar no que se refere à nossa missão com a educação. É verdade que tentamos resolver o problema. Em última análise, não importa se nós vendemos 10 milhões de Raspberry Pis se não conseguir mais crianças aprendendo programação de computadores, porque então nós falhamos. Por isso, é sobre como manter tudo caminhando, melhorando o software e implantando os recursos e as receitas que tornam o Raspberry Pi em uma referência para a educação.

Migração dos aplicativos Linux em x86 para IBM Power Systems


Por


Experiência móvel melhorada com plataformas 64bits

Se você é um desenvolvedor que quer tornar a experiência móvel mais poderosa para os usuários finais, vale a pena conhecer a fundo a computação de 64 bits.


Por Wendy Boswell



Se você é um desenvolvedor que quer tornar a experiência móvel mais poderosa para os usuários finais, vale a pena conhecer a fundo a computação de 64 bits. Com a poderosa arquitetura de 64-bits na ponta dos dedos, os desenvolvedores de dispositivos móveis como smartphones e tablets irão beneficiar-se com grandes ganhos de desempenho, memória endereçável acima de 4 GB, e melhores capacidades de segurança.



Longo caminho percorrido



Desde que surgiu no Cray-1, o supercomputador lançado em 1975, a arquitetura de computação de 64 bits tem sido considerada como um marco sobre o poder de processamento. Ao longo das duas décadas seguintes, a tecnologia começou a encontrar seu caminho para os servidores em nível de microcomputador e estações de trabalho high-end em meados dos anos 1990.


Hoje, os processadores de 64 bits são comuns e em breve se tornarão a base para smartphones e tablets. Com arquitetura de 64-bit na ponta dos dedos, os desenvolvedores de smartphones e tablets serão beneficiados com grandes ganhos de performance, memória endereçável acima de 4 GB, e maiores conjuntos de dados em memória.


Segurança melhorada


Além disso, a arquitetura de 64 bits vai proteger melhor os dados de dispositivos e redes corporativas um vez que afasta as ameaças à segurança. De acordo com um relatório lançado em julho 2014 pela Nielsen [1], usuários de Android e iPhone  por volta dos 18 anos passaram mais de 30 horas por mês utilizando aplicativos para dispositivos móveis em 2013, um aumento de 65% sobre os números de 2012. Os dispositivos móveis também estão permeando o local de trabalho onde a computação complexa e segurança são exigidos. A Symantec, em 2012 identificou mais de 200 milhões de definições de vírus, aproximadamente o mesmo número que foi identificado entre 1991 e 2011. Os smartphones e tablets devem proteger os dados pessoais do usuário e o hardware móvel deve proporcionar uma experiência de uso adequada.




Intel ® e Android


O departamento de Software e Serviços da Intel tem ajudado a melhorar o kernel Linux para permitir a computação de 64-bits desde 2004. A Intel está envolvida em todos os programas, incluindo o navegador de código aberto Chromium e Blink e contribui para o projeto do compilador GCC, compiladores comerciais, hypervisors, drivers SLC, e "qualquer outra coisa que faça o sistema funcionar", disse Joe Daly, diretor de engenharia do Centro de Tecnologia Open Source (OTC) dentro do departamento de Software e Serviços da Intel.


Esse grupo desenvolveu uma linha principal Android para fornecer um ponto de partida comum para que os grupos da plataforma de hardware da Intel possa lançar seus esforços de programação para acessar os recursos necessários para desenvolvimento. A linha principal também é usada como referência para outras variações do Android que requerem aplicativos  Android de referência.


Grande parte dos esforços do grupo estão focados no Android L e na versão de 64-bits do Android Runtime (ART).Enquanto a Intel tem trabalhado com as versões anteriores do sistema operacional em tempo de execução, a liberação da versão deste ano vai envolver a funcionalidade e o desempenho do hardware de 64 bits.Ela tira proveito de instruções prontas e a escrita de compiladores em tempo de execução que otimizam o código para hardware Intel.


Benefícios da plataforma móvel de 64 bits


Kumar Shiv, principal engenheiro e arquiteto de desempenho da Intel para produtos 32 bits Dalvik e 64 bits em tempo de execução, disse que as plataformas móveis de 64 bits podem beneficiar o usuário de várias maneiras. "A plataforma de 64-bit pode, potencialmente, melhorar muitas coisas no caminho percebido pelo usuário", disse Shiv. Os exemplos mais comuns incluem os ciclos de criptografia e descriptografia de aplicativos seguros e os padrões de codificação-decodificação de reprodução de mídia. Ao fazer uma infinidade de operações lógicas em fluxos de bits de grande porte, trabalhar em plataformas de 64 bits cada vez mais é uma enorme vantagem. "Alguns algoritmos sofisticados só funcionam em sistemas de 64 bits, pois em sistemas de 32 bits seriam muito lentos. Para operações matemáticas complexas, de 64 bits é quase que o melhor cenário do mundo", explicou Shiv.


Em sua pilha de referência, a Intel fornece uma implementação completa do Android, incluindo melhores práticas de segurança e privacidade. O próprio sistema operacional Linux também contém diversos recursos de segurança que são ativados somente em modo de processamento, coisas que a plataforma de 64 bits iria protegê-lo no nível mais baixo de ataque. "O boot no Android não é verificado, o gerenciamento de credenciais, a proteção de conteúdo, e outras coisas que acontecem no Android relacionado ao gerenciamento de telefones e tablets Android possui um gateway seguro para a nuvem", disse Daly.


À medida que o mundo abraça a era Big Data, a segurança proporcionada pela computação de 64 bits será necessária para dispositivos móveis. "Do ponto de vista dos dispositivos da era da  Internet das coisas, essa é a única grande preocupação", disse Shiv. "Estes dispositivos têm todos os nossos dados pessoais e estão todos na Internet. Precisamos tornar estes dispositivos o mais seguro possível. "


Além da segurança


Fotografia e gráficos com intensos efeitos digitais também serão beneficiados com plataformas de 64 bits. "Os smartphones agora são câmeras também. Edição de duas ou três fotos juntas, fazendo um HDR [high dynamic range], ou extrair cenas de video exigem muita memória ", disse Daly. Fotografia e edição em dispositivos móveis pode ser uma experiência melhorada com esta plataforma.


Até mesmo aplicativos de uso geral podem ganhar em de plataformas de 64 bits. Com base em suas observações da migração das plataformas de 34 bits do Linux empresarial e do Windows na década de 2000, Daly disse que os aplicativos podem ver um aumento de cerca de 15% como ISVs ao mudar para plataformas de 64 bits. Desenhando uma linha média, alguns recursos vão cair para baixo dessa linha e alguns vão subir sobre ela. Criptografia, processamento de imagem, e qualquer coisa que precise de processamento irá experimentar benefícios na plataforma de 64 bits. Aplicativos que são altamente otimizados para 32 bits podem não ter nada a ganhar. "Pode haver aplicativos altamente otimizados para 32 bits que pode realmente executar mal em plataformas de 64 bits", disse Daly.


Alterações no código do futuro


Um ponto importante no surgimento de dispositivos de 64 bits é que os aplicativos Java puros serão executado de forma inalterada nas plataformas Dalvik 32-bits e em tempo de execução na plataforma ART 64 bits, independentemente se é o dispositivo foi construído com ARM ou IA. Mas se o aplicativo contém código nativo ou chamadas através da Java Native Interface, ele terá de ser recompilado. Se os desenvolvedores querem tirar proveito da arquitetura de 64 bits, terão que desenvolver vários novos binários otimizados.


Para os desenvolvedores de código nativo que planejam a transição de plataformas, o processo será diferente. "Se um desenvolvedor simplesmente quer levar seu aplicativo para a frente, para a novíssima versão do Android L, deverá recompilar e testar novamente seu aplicativo. Mas, se querem mudar para 64 bits, deverá ter alguma portabilidade a ser feita e então os desenvolvedores terão que recompilar as partes nativas do código usando o novo NDK ", disse Daly. O NDK é o Kit de Desenvolvimento Nativo do Android R10 [2]. O segundo, também disponível agora, é o SDK do Android [3], que oferece bibliotecas de API e ferramentas para construir, testar e depurar aplicativos Android. O  SDK também está disponível juntamente com o Eclipse IDE [4] e trabalha ao lado do pacote de ferramentas Intel® Integrated (em beta). A própria Intel oferece ferramentas líderes na indústria para o desenvolvimento de aplicativos em plataformas 64 bits, incluindo compiladores [5], otimizadores [6], e um extenso Programa de Parceria de Software.


"Com grandes poderes vem grande responsabilidades"


Como os desenvolvedores devem se preparar para a onda de 64 bits que está chegando, uma sincronia harmoniosa deve ocorrer quando o hardware e software estiverem equilibrados. "Esperamos que a maioria dos aplicativos funcionem bem, mas um aplicativo poderia não funcionar muito bem por causa da quantidade física de memória disponível; ou dispositivos podem demorar um pouco para responder até que a plataforma de 64-bits responda de acordo com sua capacidade de memória. "Os desenvolvedores podem precisar manter versões de 32 e 64-bits de seus aplicativos por um tempo para atender a todos os usuários.


O longo histórico da Intel em hardware de 64 bits, combinada com a o software que permite a otimização, cria condições favoráveis para o avanço da plataforma em tablets e smartphones. Sem as limitações de memória e velocidade, projetar software para o mundo móvel agora depende somente da imaginação dos desenvolvedores e como eles irão decidir usar esse poder.


 


===OLHO OLHO OLHO===


Até mesmo aplicativos de uso geral podem ganhar em de plataformas de 64 bits. Com base em suas observações da migração das plataformas de 34 bits do Linux empresarial e do Windows na década de 2000, Daly disse que os aplicativos podem ver um aumento de cerca de 15% como ISVs ao mudar para plataformas de 64 bits.


===OLHO OLHO OLHO===


Como os desenvolvedores devem se preparar para a onda de 64 bits que está chegando, uma sincronia harmoniosa deve ocorrer quando o hardware e software estiverem equilibrados.





 


Mais informações:


[1] Relatório Nielsen: http://www.nielsen.com/us/en/insights/news/2014/smartphones-so-many-apps--so-much-time.html


[2] Kit para Android R10: https://developer.android.com/tools/sdk/ndk/index.html


[3] Android SDK: http://developer.android.com/sdk/index.html


[4] Eclipse IDE: http://developer.android.com/sdk/index.html#download


[5] Compiladores Intel: https://software.intel.com/en-us/intel-compilers


[6] Otimizadores Intel: https://software.intel.com/en-us/intel-vtune-amplifier-xe


[7] Programa de Parceria de Software: https://software.intel.com/en-us/partner-home

Pequeno notável


Por Flávia Jobstraibizer


O queridinho dos adeptos do DIY (ou faça você mesmo, em tradução livre), há muito já apaixonaram-se pelo pequeno notável Raspberry Pi. Em sua mais recente versão, B+ (já nem tão recente assim), algumas novidades surgiram, mas o que é mais importante são os novos e rebuscados usos e aplicações para o pequeno computador.


O Raspberry Pi tem sido um sopro de ar fresco principalmente no que tange a baratear custos com  computadores nos setores educacionais, sistemas portáveis e até mesmo governo. Há escolas públicas com computadores Raspberry Pi sendo utilizados por centenas de alunos, tornando a inclusão digital das crianças mais fácil mesmo em locais com pouco acesso à tecnologia. Nas áreas de automação residencial, para economia de água ou energia e tantos outros usos, o Raspberry (e porque não dizer ainda os outros mini computadores do segmento) tem se mostrado imprescindíveis como tecnologia do futuro, fomentando à sua volta todo um mercado de soluções e tecnologias voltadas para esse público.


Saindo do mais do mesmo: liga na TV, usa como media center e afins, o Raspberry Pi pode tornar-se desde um computador de bordo para sua casa e seu carro, até um cluster "quase" profissional!


Nesta edição da Linux Magazine vocẽ vai conhecer essas novas aplicações para Raspberry B+, ampliando ainda mais a sua visão sobre a utilidade do mini computador. Aproveitando esta edição, gostaríamos de saber de você que tem um Raspberry, quais são as aplicações que criou para ele? Nos envie sua arte, sua brincadeira e o que você montou com ele!


Esperamos que goste dessa edição e colabore conosco enviando suas novidades para gente!


Boa leitura!

Flávia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) é gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietárias. Atualmente é editora-chefe das revistas Linux Magazine e Admin Magazine.

É necessário ser cadastrado para adquirir artigos pagos.




Esqueceu a senha?

Caso não seja cadastrado, clique aqui para se cadastrar.
O cadastro é gratuito.

Notícias

4Linux abre vagas para Líder Técnico em São Paulo e Brasília

Publicado em: 25/07/2017 às 14:12 | leituras |

A 4Linux — uma empresa líder em soluções Open Source e em práticas DevOps — está procurando profissionais para trabalhar como gerente técnico, que tenha bons conhecimentos em Linux e Softwares Livres. São duas vagas: uma para trabalhar em Brasília e outra para São Paulo.

Seminário sobre gestão de privilégios do Linux dá direito a certificado CPE

Publicado em: 23/05/2017 às 10:35 | leituras |

O evento irá abordar a forte disseminação de sistemas Linux em toda a estrutura de informação e mostrará a importância de técnicos da área serem capazes de identificar rotas, especificar controles de acesso para usuários Linux e monitorar a atividade privilegiada do usuário ao longo da rede de informação e, especialmente, na complexidade da nuvem. Participantes poderão requerer gratuitamente os créditos de CPE (Continuing Professional Education).

Novas vagas para os minicursos do WikiLab

Publicado em: 16/05/2017 às 11:59 | leituras |

Novas vagas abertas para os minicursos do WikiLab. Todos que já apoiaram ou apoiarem o projeto WikiLab no Catarse (com qualquer valor) podem participar.

Novo evento "Universidade Livre" será realizado em Belém/PA em 06/05/2017

Publicado em: 28/04/2017 às 11:19 | leituras |

Novo evento sobre Software Livre será realizado no Instituto de Estudos Superiores da Amazônia (IESAM).

Soluti Certificação Digital em busca de especialista Linux

Publicado em: 19/04/2017 às 17:18 | leituras |

A Soluti Certificação Digital está em busca de um profissional para atuar como especialista Linux em Goiânia.


Mais notícias

lançamento!

LM 119 | Backup e Restauração




Impressa esgotada
Comprar Digital  R$ 10,90 Digital

  1. Baixe o curso de shell script do Julio Cezar Neves

    Publicado em 07/04/2008 às 19:41 | 433236 leituras

  1. Soluti Certificação Digital em busca de especialista Linux

    Publicado em 19/04/2017 às 17:18 | 306584 leituras

  1. Seminário sobre gestão de privilégios do Linux dá direito a certificado CPE

    Publicado em 23/05/2017 às 10:35 | 221870 leituras

  1. Resultado do concurso "Por que eu mereço ganhar um netbook?"

    Publicado em 30/09/2009 às 3:00 | 184861 leituras

  1. Software público brasileiro na Linux Magazine Especial

    Publicado em 29/07/2011 às 15:07 | 163237 leituras

  1. Primeiro candidato de lançamento do PostgreSQL 9.1

    Publicado em 26/08/2011 às 21:40 | 9720 leituras

  1. HTML5 ainda não está pronto para desenvolvimento de jogos

    Publicado em 25/06/2012 às 9:50 | 12654 leituras

  1. Skype ganha serviço concorrente criado por hackers

    Publicado em 04/09/2014 às 11:12 | 7779 leituras

  1. Novo Burp Proxy quebra o SSL do Android

    Publicado em 09/08/2012 às 10:35 | 14092 leituras

  1. Big data e mobilidade impõem datacenters inteligentes

    Publicado em 04/04/2014 às 13:49 | 6443 leituras

whitepapers

mais whitepapers