Como habilitar o Claro 3G no Ubuntu 9.04 com o Modem D301

junho 13th, 2009 by Marcos Arouca

Abra um console.
Execute o comando:

$ sudo gedit /etc/udev/rules.d/10-claro3g.rules

O editor de texto aparecerá. Cole o texto abaixo nele:
#######início################
# /etc/udev/rules.d/10-claro3g.rules
# site base do script:http://www.richieri.com/2008/08/27/internet-claro-3g-no-ubuntu-804-e-satux-com-modem-giant-traveller-d301/
#
# Claro 3G custom rules
ACTION!=”add”, GOTO=”3G_End”
BUS==”usb”, SYSFS{idProduct}==”1000?, SYSFS{idVendor}==”0fd1?, PROGRAM=”/bin/sh -c ‘echo 3 > /sys/%p/device/bConfigurationValue’”
LABEL=”3G_End”
#######fim################

Salve o arquivo e feche o editor.
No terminal novamente, execute o comando abaixo para que o sistema passe a reconhecer o arquivo e seus comandos:

$ sudo udevadm control –reload-rules

Conecte seu modem D301 na USB.
Após uns 10 segundos, um assistente de configuração irá aparecer.
Selecione a opção Claro no assistente, avance e mande aplicar.
Abra gerenciador de conexões:

System > Preferences > Network Connections

Selecione em Mobile Broadband a opção Editar da nova conexão Claro;
Vá em IPV4 Settings e no método deixe totalmente automático Automatic (PPP) e aplique.
Para se conectar pela nova opção, no Network Manager mande conectar em Claro.

==========
Fonte: MarcosArouca.com

Timestamp 1234567890

fevereiro 4th, 2009 by magno

date -d @1234567890
Sex Fev 13 21:31:30 BRST 2009

magno ~ # date -d ‘2009-02-13 21:31:30′ +’%s’
1234567890

Timestamp do final dos tempos! Sexta feira 13! O fim está próximo… Faltam(em segundos):

magno ~ # echo $((  $(date -d ‘2009-02-13 21:31:30′ +’%s’) – $(date +’%s’) ))
795975
magno ~ # echo $((  $(date -d ‘2009-02-13 21:31:30′ +’%s’) – $(date +’%s’) ))
795973
magno ~ # echo $((  $(date -d ‘2009-02-13 21:31:30′ +’%s’) – $(date +’%s’) ))
795971
.
.
.
O fim está próximo.

O poder do open source 2: Pidgin e o MSN

janeiro 12th, 2009 by Willian Braga

Quem ligou hoje o Pidgin e foi conectar no MSN deve ter tido um erro novo, algo como “Unable to retrieve MSN address book”. A coisa mais interessante é que este erro parece estar compartilhado também com meu celular, que utiliza Windows Live Messenger original da Microsoft (grande detalhe: Windows update não tem nada para atualizar). Entretanto, o erro não ocorre no Windows Live Messenger no Windows.

Procurando na página oficial do Pidgin, colocaram uma anotação que todas as versões foram afetadas. No bugtrack do time de desenvolvimento, chovem as súplicas das almas penadas à procura de uma solução. Uma coisa que eu li em vários posts é que este problema é devido a Microsoft forçar o uso de uma certa versão de MSN, através do uso de controle de versão que é oferecida pelo client ao server oficial da microsoft, forçando então os consumidores a utilizar uma versão mais recente do client, rejeitando assim clients antigos. Claro que quem utiliza programas alternativos ela simplesmente desconsidera-os.

Por isso, soube que esperar por um fix era coisa que eu não precisava. O poder do open source me permite que eu baixe o código-fonte do programa e resolver seus próprios problemas. Então, eu baixei a versão mais atual do Pidgin e fiz meu próprio ‘patch’ para o MSN. Claro que meus conhecimentos do pidgin são nulos, mas consegui facilmente botá-lo para funcionar. Vamos lá pras explicações:

1- Baixe o source do pidgin no site oficial.

2- Descompacte o pidgin, edite o arquivo (SOURCE_DO_PIDGIN)/libpurple/protocols/msnp9/msn.h e acrescente as infos que tem em negrito, se não tiver:

(…)

typedef enum
{
MSN_CLIENT_VER_5_0 = 0×00,
MSN_CLIENT_VER_6_0 = 0×10, /* MSNC1 */
MSN_CLIENT_VER_6_1 = 0×20, /* MSNC2 */
MSN_CLIENT_VER_6_2 = 0×30, /* MSNC3 */
MSN_CLIENT_VER_7_0 = 0×40, /* MSNC4 */
MSN_CLIENT_VER_7_5 = 0×50 /* MSNC5 */
MSN_CLIENT_VER_8_0 = 0×60, /* MSNC6 */
MSN_CLIENT_VER_8_1 = 0×70, /* MSNC7 */
MSN_CLIENT_VER_8_5 = 0×80 /* MSNC8 */

Assim, logo mais abaixo mude essa variável:

De: #define MSN_CLIENT_ID_VERSION MSN_CLIENT_VER_7_0

Para: #define MSN_CLIENT_ID_VERSION MSN_CLIENT_VER_8_1
Faça a mesma operação para o arquivo (SOURCE_DO_PIDGIN)/libpurple/protocols/msn/msn.h

3- compilação e install, como root. Pra quem não sabe…

sudo -s

entre no dir (SOURCE_DO_PIDGIN) —> Meu caso o source estava em /home/wbraga/Desktop/pidgin

./configure –disable-meanwhile –disable-avahi –disable-dbus –disable-perl –disable-tcl (OBS: Talvez ele peça algumas dependencias, nada como um apt-get install não resolva… o que eu desativei eu realmente não uso)

make

make install

4- ???????

5- PROFIT! Pode abrir o pidgin que o MSN vai funcionar.

Como é lindo o mundo open source…

Migrando para o Ext4, o novo file system Linux

janeiro 7th, 2009 by Marcos Arouca

Todo mundo já ouviu falar do novo sistema de arquivos Ext4, o sucessor do velho e bom ext3. O ext4 ainda se encontra em fase de desenvolvimento e por isso ainda é chamando de ext4dev, mas a partir da versão do kernel 2.6.27 o filesystem atingiu uma boa maturidade, o que permite migrarmos aos poucos, mas sempre mantendo a cautela. =)

Algumas das melhorias do Ext4 em relação ao Ext3 são as seguintes:

* Melhorias na pré-alocação: Um programa usará um espaço do disco, mas não na hora da execução, então ele reserva o espaço que utilizará, fazendo uma pré-alocação, ou seja, ele guarda aquele espaço para o programa e ninguém mais poderá utilizar;
* Tempo de alocação estendido: O ext4 conseguirá segurar a alocação do espaço em disco até o último momento, isso aumentará a performance;
* Maior número de subdiretórios: No ext3 o limite de subdiretórios era de 32000, no Ext4 não há limites;
* Checksum do Journaling: É gerado um checksum do Journaling, garantindo uma restauração mais rápida e a prova de falhas.
* Desfragmentação On-Line: O ext3 deixava um pouquinho de fragmentação no disco, no ext4 não existe mais fragmentação, pois o ext4 vai desfragmentando enquanto os arquivos vão sendo alocados.
* Undelete: É uma ferramenta disponível no ext4 que impede que um arquivo seja apagado. Lembra dos atributos estendidos do ext3? É bem parecido.
* Checagem rápida do filesystem: A estrutura de organização de blocos permite que partes não usadas do disco sejam puladas, o que economiza muito tempo na checagem do filesystem.

Maiores detalhes e instalação: http://www.vivaolinux.com.br/dica/Migrando-para-o-Ext4-o-novo-file-system-Linux

Apache cresce ainda mais no mercado de servidores

setembro 1st, 2008 by Marcos Arouca

As estatísticas de servidores web liberadas mensalmente pela Netcraft mostram que o servidor livre Apache opera, agora, 1,2 milhões de sites a mais que há um mês.
Isso significa que o servidor web de código aberto está por trás de 176.748.506 dos websites pesquisados, quase metade de toda a amostra. Em segundo lugar na lista está o Microsoft IIS, com uma fatia de 35%, seguido do Google Web Server (GWS) com 6% e do Lighttpd, também de código aberto, com 3% (1,7 milhões de sites).
Segundo a Netcraft, uma nova promessa é o servidor Nginx, de autoria do programador russo Igor Sysoev. Em sua primeira aparição na lista, ele já alcançou o quinto lugar. As estatísticas estão disponíveis no site da Netcraft. O ranking de servidores de agosto está aqui.

==========
Fonte: Linuxnewmedia

XMPP na Oscon

agosto 1st, 2008 by ricardoclemente

Na oscon participei de duas palestras que falavam do uso de XMPP para criação de serviços web. O Etevaldo participou da primeira, e juntos organizamos este post.

As palestras foram “Open Source XMPP for Cloud Services” da Jive e “Beyond REST? Building data services with XMPP PubSub” do Flickr.

Ambas as apresentações estão online:
http://www.slideshare.net/mattjive/open-source-xmpp-for-cloud-services

http://www.slideshare.net/kellan/beyond-rest

Em ambas a indicação do uso de XMPP é para subistituir aplicações que façam HTTP Polling. HTTP Polling é o método que se baseia em requests periódicos a uma url para realizar o sincronismo entre duas aplicações, ou entre o cliente e o servidor. Segundo a apresentação do Flickr, isto seria equivalente a uma criança chata que fica perguntando ao pai de cinco em cinco minutos: “falta muito?” durante uma longa viagem de carro, e simplesmente não escala.

Nos casos em que o perído do polling é pequeno, ou seja, novos requests são gerados em poucos minutos ou segundos, é mais fácil enxegar a fonte de dados como um fluxo contínuo e ao invés de ficar abrindo e fechando conexões HTTP manter uma conexão persistente onde sejam trocadas mensagens. É assim que funciona o XMPP.

Bom ainda não estudei muito de XMPP, além de saber que é um protocolo aberto para “instant messaging” dei apenas uma lida no wikipedia . Acho que é o sufuciente por agora.

O problema encarado pelo Flickr era que o Friendster fazia HTTP Polling para sincronizar as fotos de seus usuários. Isso gerou uma grande volume de acesso no Flickr, que precisava de uma melhor alternativa. A solução do Flcikr foi criar um serviço via XMPP no padrão PubSub, ou seja, O Friendster abre uma conexão com o Flickr e a cada nova foto uma mensagem é enviada do Flickr para o Friendster.

Como se fazer um serviço web usando XMPP?
O que vc precisa fazer é criar um componente de acordo com o padrão XEP-0114 . Felizmente já existem APIs que implementam este protocolo em diferentes linguagens como a Whack API em Java e a gloox em C++ (deve existir para outras linguagens, mas não procurei).

Pelo que entendi do exemplo da Jive, vc vai criar um daemon que vai ficar rodando independente do servidor Jabber e que se conectará ao servidor Jabber, publicando algum tipo de serviço, como o que informa as condições do tempo.

Entre os servidores jabbers mais populares são o openfire (citado pela jive), o ejabberd, e o jabberd (citados no Flickr). Neste site tem um market share dos servidores jabbers, mas acho que não é mto confiável.

Acredito que em breve estaremos testando estes servidores jabber para entender melhor o funcionamento e saber como eles escalam aqui nas equipes de infra, pois provavelmente irão surgir aplicações que se utilizam deste protocolo.

Para o caso da Globo.com, precisamos pensar em como gerar clientes web para xmpp. Existe já uma API em javascript que faz a comunicação com Jabbers. Infelizemente, browsers não implementam o protocolo XMPP e este terá que ser encapsulado em HTTP. A técnica utilizada para isso é o BOSH (Bidirectional-streams Over Synchronous HTTP) da especificação XEP-0124 e com um post explicativo neste site.

Desta forma, as conexões persistentes teriam que ser feitas a um web-server que faria o papel de “proxy” com o servidor jabber???? Não necessariamente, o openfire e o ejabberd implementam bosh e saberiam lidar com “HTTP binding”.

Há também outras intefaces “não web”, por exemplo, que poderíamos utilizar, como a possibilidade de externar a funcionalidade de chat via XMPP, como está sendo feito pelo Facebook.

Antes que este post fique longo demais (já está), vou passar só mais uma referência que é este post interessante que discute pontos levantados na palestra do Flickr: http://redmonk.com/sogrady/2008/07/30/xmpp_rest/

Peço que sinalizem nos comentários caso exista interesse, para que eu possa tentar organizar um workshop para discutir idéias e implementações XMPPs.

Oscon 2008

julho 28th, 2008 by ricardoclemente

Tive a oportunidade de participar, juntamente com o Etevaldo, da OSCON neste ano.

Minha idéia agora é organizar as anatoções, fazer posts específicos sobre dois temas e, em seguida, havendo interesse nos posts, organizar alguma apresentação com o pessoal para discutirmos o assunto.

O primeiro tema será sobre “cloud computing”, referenciando duas palestras que assisti, uma da rightscale e outra do nytimes. Ambas mto boas.

O segundo tema será sobre XMPP e como este protoloco está sendo utilizado em aplicações que necessitam de “streaming” de mensagens. Referenciarei as palestras do Flickr e da Jive que assisti.

Outros tutorias e palestras que mereceram destaque na minha opinião:

- Palestra sobre MySQL e memcache, que apesar de nada de muito novo, indicou que a criação de UDF´s do MySQL pode facilitar o uso do memcache. Esta é a forma como o Facebook faz e talvez valesse a pena entender melhor as vantagens.

- Palestra sobre o Dtrace, uma ferramenta muito interessante para debug de aplicação, mas que até o momnento não funciona em Linux, apenas Solaris. A previsão nada oficial é final deste ano.

- Palestra sobre a nova engine do MySQL, Maria, e seu relacionamento com o MyISAM.

- Palestra sobre o Puppet e seu funcionamento para gerencia de configuração

Minha idéia é fazer um só post sobre estas palestras, mas sem aprofundar muito.

Para pegar as apresentações é só acessar a página do evento. Contudo, nem todos os palestrantes colocaram as apresentações no site ainda, mas a do Flickr já está lá “Beyond REST? Building Data Services with XMPP PubSub”

Achei tbm dois posts do cara do Nytimes no seu blog que na verdade correspondem ao que apresentou:
http://open.blogs.nytimes.com/2007/11/01/self-service-prorated-super-computing-fun/
http://open.blogs.nytimes.com/2008/05/21/the-new-york-times-archives-amazon-web-services-timesmachine/
Volto ainda esta semana (espero) com posts mais interessantes.

Firefox entra no guinness!

julho 16th, 2008 by magno

Do site da mozilla:

“Graças ao apoio da sempre sensacional comunidade da Mozilla, nós conseguimos estabelecer um Recorde Mundial no Livro dos Recordes Guinness pelo software mais baixado em 24 horas. Em 18 de junho de 2008 8,002,530 de pessoas baixaram o Firefox 3 e estão usando a Internet de maneira mais segura e inteligente.”

Notícia completa, com mapa indicando downloads por país:

http://www.spreadfirefox.com/pt-BR/worldrecord/

Outro link, mostrando até o momento o firefox oficialmente com 19% do market share mundial em browser:

 http://marketshare.hitslink.com/report.aspx?qprid=0

RedHat Summit 2008

julho 14th, 2008 by magno

Em junho deste ano, ocorreu o 4.o RedHat Summit 2008. A redhat disponibilizou gratuitamente algumas palestras. São bem interessantes, e uma que me chamou muita atenção foi a palestra do CTO & VT Brian Stevens – RedHat Engineering, sobre os projetos opensources em destaque na redhat, como o gerenciador bastante amigável de nuvens computacionais(cloud computing) oVirt em cima do KVM, presente a algum tempo no kernel, a opção de rodar o fedora 9 inteiramente pelo pendrive – incluindo os arquivos criados pelo usuário – possibilitando literalmente mover seu desktop entre hosts, a integração entre MRG Grid (RHEL) e o projeto OpenSource Condor para alto throughput computacional – com o objetivo de fazer exatamente o que a Amazon faz atualmente com o EC2.

Está é apenas uma das palestras disponibilizadas. Seguem o link:

RedHat Summit: http://www.redhat.com/promo/summit/2008/

Gentoo 2008.0 Released!

julho 9th, 2008 by magno

Bem, você já instalou linux algumas vezes na sua vida. Pensa nos bons tempos, onde sabia o lugar de cada configuração do sistema, ou se não é desta época, imagina… como aqueles malucos conseguiam usar um sistema tão cru?! Eu juro, tentei me adaptar aos novos tempos, e sim, já instalei Ubuntu para usar por umas semanas. Resultado, achei uma excelente distro para iniciantes, mas… E se eu quiser um apache dizendo exatamente a CFLAGS para compila-lo e ainda quais módulos e mais, que as dependências deste novo pacote sejam resolvidas automaticamente, independente dos modulos escolhidos? E se eu tenho um problema de instabilidade, por que o firefox foi compilado com um GCC diferente do Xorg? E se eu quiser alterar certas configurações, mas não sei onde ficam pois tudo foi instalado automaticamente… E se eu quiser usar apenas pacotes stable para evitar instabilidades, mas APENAS o firefox eu quero unstable (packages.keywords)?! E se … Eu voltar pro Gentoo?!

Bom, aos que realmente gostam de conhecer a fundo Sistemas Operacionais, não existe sensação melhor que saber a localização de cada componente/configuração do sistema.

A boa notícia, em poucos minutos você tem o sistema rodando em LiveCD, e pode ir instalando em background… Aos que tem a sua distro e espaço particionado sobrando, o processo de instalação é idêntico, use a sua distro, instale em paralelo e… open your mind.

Sim, Gentoo (Se pronuncia “D’jêntu”, mas fique a vontade de pronunciar do jeito que quiser) é uma quebra no paradigma atual. Vem num liveCD muito bem produzido, mas não se engane… Se não seguir o manual de instalação, você NÃO instala! Mas esta é justamente parte da diversão! Outra coisa… Não existe nada mais gratificante que saber… A sua distro é praticamente “from scratch”, o Xorg é compilado para o seu Hardware e o xorg.conf foi feito pelas suas próprias mãos e o uso das ferramentas padrões(xorgcfg). O firefox é mais estável, pois foi compilado para o seu hardware e bibliotecas do seu sistema. Até o OpenOffice se assim o desejar, pode ser compilado sem problemas!E claro, o kernel… É mandatório que o compile.

Na verdade o Gentoo NÃO é uma distribuição. O correto é chama-lo de Meta-Distribuição, pois com os mesmos sources nenhum Gentoo é igual ao outro. Não gosta do kde(-kde -qt3 -qt4), faz parte da comunidade ‘odeio gnome’ (-gnome -gtk)?! Ou simplesmente quer uma distro enxuta, sem X e suas libs(-kde -gnome -X -qt3 -gtk -qt4)? Ou quer kde, gnome e xfce vivendo em harmonia(gtk kde qt3 qt4 gnome)?! As USE Flags do Gentoo fazem isso pra você. Quer uma distro com profile desktop, ou server (make.profile)? Quer a mesma para instalar em 100 servidores de hardware semelhante… Sem problemas, compile em uma maquina, gere os pacotes binários(quickpkg) e instale nas outras(stage4). Pronto, todo o parque de máquinas com o máximo tuning entre hardware x software.Quer uma distro para servidores i686 em geral? Sem problemas. E i486, i586?! Com certeza!

Gentoo possui uma vasta gama de softwares. Esta lista pode ser ainda estendida(layman). Tudo centralizado no banco de dados Portage, coração do Gentoo.

Um dos pilares do Gentoo é sua vasta documentação, se não for a mais completa! E sua comunidade é bem ativa também. E claro, garantia de aprendizado em linux em nível baixo. Apenas um conselho… googleee antes de perguntar. Afinal de contas, é pra isso que existe a farta documentação, então… RTFM!

Gentoo não é xiita, você vai encontrar Skype, suporte a mp3(USE Flags), drivers nvidia/ati, oracle libs, etc. It’s up to you!

Experimente!

Download:  http://www.gentoo.org/main/en/where.xml

Documentação:  http://www.gentoo.org/doc/en/handbook/index.xml

Home:  http://www.gentoo.org