segunda-feira, 22 de setembro de 2008

A magia


Desktop, a parte mais atrativa para usuários comuns, que adoram as firulas e os visuais mais irados de telas e aplicativos que chamam a atenção pela facilidade e gratuidade do uso. Com certeza, quando tratamos de visual, o Linux dá um show aparte, não quero nem comentar a respeito do MAC OS X leopard, simplesmente fantástico!
Desktop, a parte mais atrativa para usuários comuns, que adoram as firulas e os visuais mais irados de telas e aplicativos que chamam a atenção pela facilidade e gratuidade do uso. Com certeza, quando tratamos de visual, o Linux dá um show aparte, não quero nem comentar a respeito do MAC OS X leopard, simplesmente fantástico! Fico às vezes me perguntando como podem existir desenvolvedores para tratar tais programações e deixar nossa tela com um visual excepcional. Adoro o Linux por isso, porque não nos prendemos somente a uma área de trabalho ou um único gerenciador gráfico. Podemos ter em nosso computador diversos gerenciadores gráficos: gnome, KDE, XFCE e etc.., sem falar que temos 6 terminais disponíveis para realizarmos diversas operações. Isto só nos é permitido devido ao kernel que suporta bem esses gerenciadores, possibilitando-os bom desempenho sem que ocorra travamentos ou algum outro tipo de imprevisão, promovendo o uso bem distribuído da memória e dos processamentos. Ao contrário disso, o kernel do MS Windows que “sobrevive” a problemas de gerenciamento de memória e bibliotecas compartilhadas, o que nos faz entender por que o mesmo exige tanto da memória, como o Windows Vista que precisa de gigas de memória e placa de vídeo para rodar um simples Aero.
Deixando um pouco de lado os comentários, vamos agora para a parte mais interessante! Como adquirir um Desktop 3D e utilitários em sua tela.

Deskop 3D

Para instalar o gerenciador gráfico 3D será necessário que você tenha uma placa de vídeo instalada, seja ela nVidia ou ATI Radeon. Vou mostrar-lhes como instalar o drive da nVIDIA:

1º Passo:

Descobrindo o modelo da placa de vídeo.

Para descobrir o modelo da placa podemos aplicar o seguinte comando

lspci | grep nvidia
Algo deste tipo será retornado como resultado da execução do comando

02:00.0 VGA compatible controller: nVidia Corporation GeForce 7100 GS (rev a1)

Bom, já sabemos que se trata de uma placa de vídeo nvidia GeForce 7100. Agora iremos fazer o download do drive no site do proprietário.

www.nvidia.com

2º Passo:

Para aplicar a instalação é necessário parar o gerenciador gráfico X e logar no terminal como root.
Instalando pacotes necessários:

Para isso vamos verificar o sources.list.
Aí vem a questão... Qual é a distribuição você esta utilizando? No nosso caso iremos instalar no Debian 4. Em seguida vou mostrar como instalar no Ubuntu 7.10, que é mais tranqüilo.
Edite o arquivo do seguinte diretório: /etc/apt/sources.list e acrescente os seguintes repositórios:

deb http://security.debian.org/ etch/updates main contrib
deb http://ftp.br.debian.org/debian/ etch main contrib
deb-src http://ftp.br.debian.org/debian/ etch main contrib
deb http://ftp.debian.org/debian/ etch main contrib
deb http://ftp.debian.org/ etch main contrib

Agora é hora de atualizar os pacotes:

apt-get update

agora é hora de instalar os seguintes pacotes
apt-get install binutils module-assistant build-essential pkg-config xserver-xorg-dev

3º Passo:

Preparar as dependências:

# module-assistant update
# module-assistant prepare

Precisamos antes verificar a versão do kernel em uso:

# uname -r

No Debian Etch por padrão vem o 2.6.18.

E então baixar os fontes:

# apt-get install linux-source-2.6.18

Agora precisamos descompactá-lo:

# tar -xvjf /usr/src/linux-source{versão do seu kernel}.tar.bz2 -C /usr/src

Vamos apagar o link antigo para em seguida criarmos o novo, apontando para os fontes baixados e descompactados:

# rm /usr/src/linux
# ln -s /usr/src/linux.-source{versão do seu kernel} /usr/src/linux

4º Passo:

Agora sim, é hora de instalar o drive da nVIDIA

Depois de ter preparado o ambiente vamos à execução...

Entre no diretório que você baixou o drive e digite o comando:

#sh NVIDIA-LINUX-x86....

Atenção!

Siga as instruções de tela até o final. Na última pergunta responda yes, ela atualizará o arquivo de configuração do servidor gráfico automaticamente.

5º Passo:

Entre no arquivo /etc/X11/xorg.conf , procure a sessão section “Device”, na opção drive e coloque nVIDIA, caso esteja outra opção.

Agora é só voltar com o gerenciador gráfico com o comando

#startx

Em seguida aparecerá o logo da nVIDIA mostrando a você o sucesso da instalação.

No caso do Ubuntu é muito simples, a distribuição disponibiliza aos usuários um drive nativo que é habilitado com um único click. Aparecerá no lado direito superior da barra de menus a opção habilitar drivers restritos. Posso dizer que o drive é muito bom, não tive nenhum problema e olha que minha placa de vídeo é TURBO CACHE de 128 e para alcançar 256 MB ela retira 128 MB da memória RAM. Imaginava que eu teria algum tipo de problema, mas não, funcionou dentro dos padrões e necessidades para o compiz ou beryl rodar.

Instalando o Beryl ou compiz

O compiz é um dos gerenciadores de telas mais fantástico que já vi, não é por menos, ele foi o primeiro a se engajar na mania dos desktops 3D. Passados tempos, lançaram o Beryl que foi criado como um fork do compiz, porém um pouco mais incrementado com efeitos mais atualizados e bem diferentes. No entanto, o compiz está enraizado nos repositórios do Debian e o Beryl não.

Tem um tutorial muito bom que utilizei na primeira vez que instalei.

http://wiki.debian.org/Compiz

Primeiro vamos testar se o hardware suporta uma aceleração 3D
Instale o pacote mesa-utils

$glxinfo | grep direct
Se o resultado for

direct rendering: Yes

Ótimo! Seu hardware suporta a aceleração, caso contrário, infelizmente se hardware não suporta.

Com a aceleração ativa vamos à instalação do compiz, no Debian:
apt-get install xorg compiz

Instalação do Beryl, no Debian

Como já vimos, o Beryl não está nos repositórios do Debian, então deveremos acrescentar duas linhas no sources.list, são elas:

deb http://debian.beryl-project.org/ etch main
deb-src http://debian.beryl-project.org/ etch main
apt-get install libxcomposite1 beryl emerald

O emerald é um gerenciador de temas do Beryl. Já o compiz, em versões anteriores, não o utilizava em suas instalações. Juntamente com os pacotes acima, outros serão instalados automaticamente.

Configurando o X
Para que os efeitos entrem em vigor devemos configurar o arquivo xorg.conf que é responsável pelo modo gráfico que se encontra no diretório /etc/X/xorg.conf. Esse arquivo é responsável pela configuração do teclado, mouse, monitor e placa de vídeo.

Procure dentro do arquivo a sessão Section “Device”, esta possui a informação referente à sua placa de vídeo, acrescente dentro dela os seguintes comandos:

Option "XAANoOffscreenPixmaps" "true"
Option "AllowGLXWithComposite" "true"

Procure também a sessão section “screen”, esta possui informação da placa de vídeo e do monitor referente a resolução e cores. Adicione o seguinte comando:

Option "AddARGBGLXVisuals" "True"

Gostaria de lembrar que estas configurações são referentes às placas da nVidia.

Salve o arquivo e reinicie o ambiente gráfico X.

Agora estamos perto de nos “deliciarmos” com aquele visual fantástico.

Para iniciar o compiz basta rodar o comando:
alt+F2 em seguida compiz --replace

Para iniciar o beryl:

beryl -manager

Caso a barra superior das janelas não seja carregada, aperte alt+ F2 e escreva emerald, pois ele é responsável pelo gerenciamento da barra. O primeiro indicativo de seu funcionamento é a mudança de cor no carregamento da barra.

Bom, está aí uma das dicas para deixar o seu desktop com um visual irado.

Sobre o autor

José Cleydson Ferreira da Silva, o zékurma, conheceu o Linux no início de 2007 na Escola Técnica, foi aprendiz do Hermes Nunes Pereira Júnior, o hnjunior durante 18 meses. Trabalha com Linux a um ano, tem artigos nos sites Viva o Linux e GNU-LIA. Usuário do Linux por filosofia, acredita que o mesmo pode quebrar os paradigmas do mundo globalizado.


quarta-feira, 10 de setembro de 2008

Madonna e balanceamento de carga

Até agora não consigo parar de dar risada. É sério. Estava eu lendo a Folha Online, e eis que me deparo com a mensagem sobre a venda dos ingressos do show da Madonna em São Paulo, que, para o dia 20 de dezembro, não exigem cartões de crédito exclusivo do Bradesco. Para quem não sabe, as vendas começam hoje, dia 3 de setembro.

Eu havia lido anteriormente na Folha Online que muitas pessoas estavam tendo problema com congestionamento nos servidores, mas lá fui eu. Como tenho planos de passar o natal no Brasil, pensei que poderia fazer uma paradinha em São Paulo para assistir o show, já que o daqui a Suíça eu não consegui. Quando entro no site principal, eis que me deparo com a seguinte imagem:

Index Ticketes for Fun

Isso é que é balanceamento de carga hein?! Será que alguém da ticket4fun já ouviu falar, mesmo que vagamente, em IPVS ou LVS?

Ainda bem que a tecnologia está aqui para servir os usuários :)

Como eu queria saber quem são os sysadmins da tickets4fun....just4fun!

***************************
Atualizações:
Recebi alguns emails pedindo para explicar melhor o problema ou "funcionalidade" descrita no meu post. Então aqui vai...

Digamos que você tenha um servidor na internet, e este tem capacidade para 50 usuários simultâneos. O seu serviço (neste caso a venda de ingressos) vai funcionar perfeitamente, até que você atinja os 50 usuários simultâneos. Se você tem 320 usuários simultâneos, com simples matemática, você chega a conclusão que precisa de 7 servidores, e vai ainda ficar com folga, já que 7 servidores, considerando que cada um atende 50 usuários, conseguiríamos atender 350 usuários.

Bom, para fazer com que isso funcione, sem que o usuário se sinta um idiota procurando por um servidor não carregado (como no caso no site da tickets4fun), você usa uma tecnologia chamada de balanceamento de carga. São basicamente computadores que vão direcionar conexões para todos os backends, baseados em regras pre-definidas, como por exemplo, "envie a próxima requisição para o servidor que tiver menos carregado agora". Quando os 350 usuários excederem, você pode colocar mais servidores para fazer o mesmo trabalho. Como o usuário na realidade só pede conexão ao balanceador de carga, a expansão da infraestrutura seria transparente, e poderia escalar na mesma velocidade que a equipe de administração de sistemas consegue instalar servidores para executar a tarefa.

O que a ticket 4 fun fez foi ignorar a existência dessa tecnologia, e fazer com que os coitados dos usuários tivessem que fazer o papel de balanceadores de carga, procurando na mão por um servidor livre, ao invés de colocar um computador para calcular e fazer este trabalho automaticamente. Obviamente, o usuário não consegue fazer, manualmente, análise de carga nos servidores para decidir qual o melhor deles no momento, então, a não ser que fosse por sorte, a probabilidade de ir parar num servidor ruim é bem grande. (ainda mais considerando que eles disponibilizaram 25 servidores)

O pior de tudo é que este tipo de tecnologia está disponível em software livre, e sem custos de licenciamento NENHUM!

Créditos:
Artigo é de autoria de Fernanda Giroleti Weiden e pode ser acessado em:
http://nanda.softwarelivre.org/node/151

terça-feira, 9 de setembro de 2008

Frase do Dia

"Se você não rir dos seus problemas,
não vai ter nada do que rir quando crescer"
Ed Howe

Testador de Expressões Regulares

Quer testar suas expressões regulares, va neste site e coloque a expressão e um texto no quadro abaixo para ver se casa com os padrões.

http://gskinner.com/RegExr/

Um ótima dica também é ler as coisas do VERDE!

Frase do Dia

"O pessimista vê a dificuldade em cada oportunidade;
o otimista vê a oportunidade em cada dificuldade"
Winston Churchill

sexta-feira, 5 de setembro de 2008

Cuidado com as Licenças: Google Chrome X Google Chromium

O navegador Google Chrome é OpenSource, porém há um grande contraste entre o OpenSouce e seus termos de licenciamento. A sua licença lançada é bastante rígida e fere diretamente os direitos dos usuários no que tange a sua privacidade e alterações no código fonte. O Navegador OpenSource é o Google Chromium veja em http://code.google.com/chromium/ Ou seja, parece que o licenciamento Free OpenSource é para os dois, mas a licença é lida na página do Chromiu e o que você baixa é o Chrome, ou ainda o Chrome é OpenSource, porém o licenciamento é lido na página do Chromiu.... Bom ... vamos tentar entender...
Além desta confusão, alguns analistas acham que o Chrome é um tiro no coração do Firefox ( o que na verdade eu não acho ) já que a Mozilla contra atacou nestes últimos dias prometendo melhoras na performance.
Veja um trecho da licença do Chrome, traduzido (tradução livre) para Português do Brasil:

11. Licença de conteúdo do usuário

11.1 O usuário retém direitos autorais e quaisquer outros direitos que já tiver posse em relação ao Conteúdo que enviar, postar ou exibir nos Serviços ou através deles. Ao enviar, postar ou exibir o conteúdo, o usuário concede ao Google uma licença irrevogável, perpétua, mundial,
isenta de royalties e não exclusiva para reproduzir, adaptar, modificar, traduzir, publicar, distribuir publicamente, exibir publicamente e distribuir qualquer Conteúdo que o usuário enviar, postar ou exibir nos Serviços ou através deles. Essa licença tem como único objetivo permitir ao Google exibir, distribuir e promover os Serviços, e ela poderá ser revogada para alguns deles, conforme definido nos Termos Adicionais.

11.2 O usuário concorda que essa licença inclui o direito do Google de disponibilizar esse Conteúdo a outras empresas, organizações ou indivíduos com quem o Google tenha relações para o fornecimento de serviços licenciados e para o uso desse Conteúdo relacionado ao fornecimento desses serviços.

11.3 O usuário compreende que o Google, ao efetuar as etapas técnicas necessárias para fornecer os Serviços aos nossos usuários, pode (a) transmitir ou distribuir o seu Conteúdo por várias redes públicas e em várias mídias de dados; e (b) efetuar as alterações necessárias ao Conteúdo do usuário para ajustar e adaptar esse Conteúdo aos requisitos técnicos de conexão de redes, dispositivos, serviços ou mídia. O usuário concorda que essa licença permitirá ao Google realizar tais ações.

11.4 O usuário confirma e garante ao Google que tem todos os direitos, poderes e autoridade necessários para outorgar a licença citada anteriormente.


Entretanto no item anterior parece que o existe restrição quanto a cópia
e redistribuição do software (???)...

Vejam outro trecho da licença:

10. Licença do Google

10.1 O Google concede ao usuário uma licença pessoal, internacional, isenta de royalties, não atribuível e não exclusiva para utilizar o software fornecido ao usuário como parte dos Serviços fornecidos pelo Google (denominado como “Software” a seguir). Essa licença tem como único objetivo permitir o uso, por parte do usuário, dos benefícios dos Serviços tal como são fornecidos pelo Google, da forma permitida pelos Termos.

10.2 O usuário não poderá (nem poderá permitir a outra pessoa) copiar, modificar ou criar uma obra derivada do código-fonte, tampouco realizar engenharia inversa, descompilar ou, de algum outro modo, tentar extrair o código-fonte do Software ou de qualquer parte que o componha, a menos que seja expressamente permitido ou previsto por lei, ou que o usuário tenha sido especificamente autorizado por escrito pelo Google a fazê-lo.

10.3 A menos que o Google tenha concedido uma permissão específica, por escrito, para fazê-lo, o usuário não poderá transferir (ou conceder uma sublicença de) seus direitos de utilização do Software, conceder uma garantia relativa aos seus direitos de utilização do Software ou, de
algum outro modo, transferir qualquer parte dos seus direitos de utilização do Software.

Mas não era OpenSource ????

Veja que você entra na página do Chrome, mas a licença é lida na página do Chromium
Veja em: http://www.google.com/chrome/eula.html e a licença vai para http://code.google.com/chromium/terms.html

"Após protestos online por licença irrevogável e perpétua sobre conteúdo publicado pelo Chrome, Google muda Termos de Uso do navegador. O Google mudou o contrato de uso do navegadorChrome após protesto sobre uma cláusula que supostamente transferia ao buscador direitos totais sobre conteúdo publicado pelo usuário por meio do browser. Na versão original dos termos de uso, o artigo 11 dava ao Google "uma licença irrevogável, perpétua, mundial, isenta de royalties e não exclusiva para reproduzir, adaptar, modificar, traduzir, publicar" conteúdos publicados pelo usuário dentro do Chrome. "Tudo bem, temos outra teoria da conspiração para desmontar. Após ler o Termo de Serviço do Chrome, algumas pessoas estão preocupadas que o Google está tentando tomar os direitos de tudo que você faz no Chrome", afirmou Matt Cutts, líder da divisão Antispam do Google, em seu blog. Cutts pediu explicações para a conselheira sênior de produtos do Google, Rebecca Ward, que afirmou que o buscador estava trabalhando para remover determinada linguagem do artigo 11 dos termos. No final desta quarta-feira (03/09), o Google oficialmente mudou o documento, abrindo o artigo com a frase "Você retém direitos autorais e quaisquer outros direitos que já possui sobre Conteúdo enviado, publicado ou reproduzido em ou por Serviços". Segundo Ward, o novo texto terá validade retroativa, atingindo aqueles que baixaram e já usam o navegador."

Fonte http://idgnow.uol.com.br/internet/2008/09/04/chrome-google-muda-termo-de-uso-apos-protesto-por-direitos-de-conteudo/

"Tudo bem, temos outra teoria da conspiração para desmontar. Após ler o Termo de Serviço do Chrome, algumas pessoas estão preocupadas que o Google está tentando tomar os direitos de tudo que você faz no Chrome", afirmou Matt Cutts, líder da divisão Antispam do Google, em seu blog.

Após alteração, o texto da licença ficou desta forma:

11. Licença de conteúdo do usuário

11.1 O usuário retém direitos autorais e quaisquer outros direitos que já tiver posse em relação ao Conteúdo que enviar, postar ou exibir nos Serviços ou através deles. Ao enviar, postar ou exibir o conteúdo, o usuário concede ao Google uma licença irrevogável, perpétua, mundial, isenta de royalties e não exclusiva para reproduzir, adaptar, modificar, traduzir, publicar, distribuir publicamente, exibir publicamente e distribuir qualquer Conteúdo que o usuário enviar, postar ou exibir nos Serviços ou através deles. Essa licença tem como único objetivo permitir ao Google exibir, distribuir e promover os Serviços, e ela poderá ser revogada para alguns deles, conforme definido nos Termos Adicionais.

11.2 O usuário concorda que essa licença inclui o direito do Google de disponibilizar esse Conteúdo a outras empresas, organizações ou indivíduos com quem o Google tenha relações para o fornecimento de serviços licenciados e para o uso desse Conteúdo relacionado ao fornecimento desses serviços.

11.3 O usuário compreende que o Google, ao efetuar as etapas técnicas necessárias para fornecer os Serviços aos nossos usuários, pode (a) transmitir ou distribuir o seu Conteúdo por várias redes públicas e em várias mídias de dados; e (b) efetuar as alterações necessárias ao Conteúdo do usuário para ajustar e adaptar esse Conteúdo aos requisitos técnicos de conexão de redes, dispositivos, serviços ou mídia. O usuário concorda que essa licença permitirá ao Google realizar tais ações.

11.4 O usuário confirma e garante ao Google que tem todos os direitos, poderes e autoridade necessários para outorgar a licença citada anteriormente."

Fonte: http://www.google.com/chrome/eula.html

Este alerta foi dado por Anahuac de Paula Gil no Grupo de Usuários da Paraíba.

As mensagens deste post pode ser acompanhado em:

http://listas.glugpb.org.br/pipermail/glugpb/2008-September/002438.html

Referências:

http://www.google.com/chrome/
http://www.chromium.org/
Grupos de Usuários da Paraíba

quinta-feira, 4 de setembro de 2008

Frase do Dia

"Nada é permanente neste mundo -
nem mesmo nossos problemas"
Charlie Chaplin

terça-feira, 2 de setembro de 2008

Compiz - Conhecendo a fundo I

O Compiz como já sabemos é software de código aberto que roda na plataforma do sistema operacional Linux, gerenciando a interface, dando a ela a possibilidade de uma aceleração 3D, com isso dá-se o nome desktop 3D. As novidades do mundo de código aberto, nos dão a oportunidade de conhecer o mesmo desde suas raízes ate a parte em que se possa fazer a utilização. Iremos buscar então o entendimento avançado de como que é programado, ou seja ,como é desenvolvido este software, quais são seus diretórios, como podemos configura-lo, o que podemos ver e o que não poderemos ter acesso. Você usuário, poderá ter noções básicas de programação, podendo saber como esse software é desenvolvido.
Conhecendo os diretórios
Para encontrar os arquivos e diretórios relacionados ao Compiz, dentro do sistema operacional de os seguintes comandos:
# find / -iname compiz
Como você pode perceber ele jogará na saída padrão todos os diretórios devidos vejam:
root@kuruma:/usr/share/compiz# find / -iname compiz
/home/kuruma/.config/compiz
/usr/bin/compiz
/usr/lib/compiz
/usr/share/doc/compiz
/usr/share/compiz
/usr/include/compiz
/etc/xdg/compiz
No momento estou usando sistema operacional baseado no Debian, portanto pode ser que se você estiver usando um sistema operacional baseado em outra distribuição por exemplo, a sua resposta do comando find pode ser diferente, mas não será muito diferente do você está vendo.
Diretório /home/kuruma/.config/compiz
Esse diretório segura as informações das configurações do Compiz quando é configurado pelo CCSM, mas relativa somente para o usuário usando. Caso tenha outro usuário no seu sistema ele ira armazenar as configurações do outro usuário.
Diretório /usr/bin/compiz
Neste diretório estão os arquivos binários, gerados na hora da instalação..
Diretório /usr/lib/compiz
Todas as libs que o Compiz precisa para funcionar estão neste diretório, cada efeito tem o sua lib você pode conferir se quiser:
# cd /usr/lib/compiz
root@kuruma:/usr/lib/compiz# ls
lib3d.a libcubeaddon.la libimgjpeg.a libplace.so libshelf.la libtrailfocus.a
lib3d.la libcubeaddon.so libimgjpeg.la libpng.so libshelf.so libtrailfocus.la
lib3d.so libcube.so libimgjpeg.so libput.a libshift.a libtrailfocus.so
libaddhelper.a libdbus.so libini.so libput.la libshift.la libvideo.so
Diretório /usr/share/doc/compiz
Toda a documentação referente a licença e uso estão no mesmo.
Diretório /usr/share/compiz
Contém as limas que são compartilhadas, como, limas de configuração do defeito, imagens, documentação, etc.
Diretório /usr/include/compiz
Contem limas de encabeçamento para linguagens de programação de C e de C++
Diretório /etc/xdg/compiz
Dentro Desse diretório possui um arquivo responsável para marca o PATH, e iniciar o compiz.real dentro diretório indicado no arquivo.
No proximo assunto nos iremos aprofundar-nos na programação simples do CCSM.

Sobre o autor

José Cleydson Ferreira da Silva, o zékurma, conheceu o Linux no início de 2007 na Escola Técnica, foi aprendiz do Hermes Nunes Pereira Júnior, o hnjunior durante 18 meses. Trabalha com Linux a um ano, tem artigos nos sites Viva o Linux e GNU-LIA. Usuário do Linux por filosofia, acredita que o mesmo pode quebrar os paradigmas do mundo globalizado.


Áudio e Vídeo


Com a Super Colaboração do Pessoal do site http://www.gnu-lia.org, uma nova sessão de artigos direcionados a Multimídia.

Segue o Índice de Artigos: