Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

sábado, 30 de outubro de 2010

Carregando o mapa correto do teclado na console do Linux

Hoje mostrarei como carregar o mapa correto de seu teclado no modo console do Linux.

No Brasil existem comumente em uso 3 tipos de "layout" de teclado que são o ABNT, ABNT2 e O Inglês Internacional, abaixo segue resumidamente a diferenciação entre eles.

ABNT - Possui a tecla "ç" e não possui a tecla "Alt Gr".
ABNT2 - Possui a tecla "ç" e possui também a tecla "Alt Gr".
Inglês Internacional - Não possui a tecla "ç", onde é necessário usar o acento e depois o "c" para gerar o "ç".

Todos esses teclados são do padrão "qwerty", esse nome vem do conjunto das 6 primeiras letras do teclado.

Configurando na Console

Carregando um dos mapas a seguir:
# loadkeys br-abnt
# loadkeys br-abnt2
# loadkeys us-acentos

Localização dos arquivos de mapas

No Debian

/usr/share/keymaps/

No CentOs

/lib/kbd/keymaps/

Qualquer crítica, sugestão ou dúvida mande uma mensagem.
 
Atenciosamente,
 
Joaquim Ferraz

segunda-feira, 20 de setembro de 2010

Instalando a JRE da SUN no Ubuntu

Pessoal hoje a dica é como instalar a JRE da SUN em seu Ubuntu. Devido a questões de licenciamento a JRE da SUN não vem instalado por padrão, sendo assim a que vem é a OpenJDK.

Bom ela funciona porém percebi que em algumas aplicações java rodando no Firefox estava ocasionando problemas de travamento no navegador, resolvi o problema instalando a JRE da SUN.

O Ubuntu por padrão não deixa ativado o repositório de terceiros no "/etc/apt/sources.list", para ativarmos iremos utilizar a aplicação "Software Sources" que você encontra no menu "Sistema -> Administração".

Após aberto a aplicação vá na aba "Outros Softwares" e ative o repositório "partner", após a ativação execute os comandos abaixo numa console:

# sudo apt-get update
# sudo apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin

Para certificar que o seu Firefox está reconhecendo o plugin java acesse o endereço "about:plugins".

Maiores informações sobre repositórios Ubuntu, visite o sítio.

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

terça-feira, 14 de setembro de 2010

Recuperando a senha do root de seu mysql

Olá pessoal, hoje irei mostrar como recuperar ou melhor alterar a senha do usuário "root" de seu banco mysql. Abaixo segue um passo a passo e logo após explicações sobre os comandos.

I - Passo a passo

1 - # /etc/init.d/mysql stop
2 - # mysqld --skip-grant-tables &
3 - # mysql -u root
4 - mysql> use mysql;
5 - mysql> update user set password=PASSWORD("SENHA") where User='root';
6 - mysql> quit
7 - # /etc/init.d/mysql stop
8 - /etc/init.d/mysql start

II - Explicações

1 - Parando o servidor do mysql;
2 - Iniciando o servidor e pulandoo carregamento de permissões de acesso aos bancos;
3 - Logando no mysql com o usuário "root";
4 - Selecionando o banco "mysql";
5 - Alterando a senha do usuário "root";
6 - Sai da console do mysql;
7 - Para o servidor do mysql;
8 - Inicia o serviço

III - Testando

Para testar execute o comando:

# mysql -u root -p

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

sábado, 7 de agosto de 2010

Migrando a base Openldap de BDB para HDB

1 - Introdução

Hoje irei mostrar um passo a passo de como realizar a conversão da base Openldap usando o bdb (Berkeley Database) para o HDB que também é uma base Berkeley porém usando uma estrutura hierárquica, sendo assim é possível renomear um "RDN" de um objeto. Então vamos ao passo a passo.

2 - Passo a passo

2.1 - No Debian
1   - Ajuste no /etc/ldap/slapd.conf os parâmetros relativos a "database" de bdb para hdb.
2   - # /etc/init.d/slapd stop
3   - # slapcat > /tmp/backup.ldif
4   - # cp -vap /var/lib/ldap/DB_CONFIG /tmp/DB_CONFIG
5   - # rm -frv /var/lib/ldap/*
6   - # /etc/init.d/slapd start
7   - # /etc/init.d/slapd stop
8   - # cp -vap /tmp/DB_CONFIG /var/lib/ldap/DB_CONFIG
9   - # slapadd -v -l /tmp/backup.ldif
10 - # slapindex -v
11 - # chown -Rv openldap:openldap /var/lib/ldap/*
12 - # /etc/init.d/slapd start

2.2 - No CentOS
1   - Ajuste no /etc/ldap/slapd.conf os parâmetros relativos a "database" de bdb para hdb.
2   - # /etc/init.d/ldap stop
3   - # slapcat > /tmp/backup.ldif
4   - # cp -vap /var/lib/ldap/DB_CONFIG /tmp/DB_CONFIG
5   - # rm -frv /var/lib/ldap/*
6   - # /etc/init.d/ldap start
7   - # /etc/init.d/ldap stop
8   - # cp -vap /tmp/DB_CONFIG /var/lib/ldap/DB_CONFIG
9   - # slapadd -v -l /tmp/backup.ldif
10 - # slapindex -v
11 - # chown -Rv ldap:ldap /var/lib/ldap/*
12 - # /etc/init.d/ldap start

3 - Explicação do passo a passo

1 - Ajustar variáveis como:

De:
moduleload    back_bdb
backend        bdb
database       bdb

Para:
moduleload    back_hdb
backend         hdb
database        hdb

2 - Parando o serviço para que não exista mais nenhuma alteração antes da exportação dos dados.

3 - Exportando os dados das bases para o formato LDIF.

4 - Realizando o backup do DB_CONFIG do Openldap que é os parâmetros do banco de dados Berkeley, caso seu slapd.conf possua as configuração do Berkeley nele esse passo não é necessário pois ao iniciar o Openldap esse arquivo será criado.

5 - Removendo a base antiga do Openldap.

6 - Iniciando o serviço para criar as bases com o formato HDB.

7 - Parando o serviço para poder restaurar os dados.

8 - Copiando o DB_CONFIG, caso o seu slapd.conf possua as configuração do Berkeley nele esse passo não é necessário pois ao iniciar o Openldap esse arquivo será criado.

10 - Criando os indexes.

11 - Dando permissão na base para que o Openldap possa manipular.

12 - Iniciando o serviço.

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

domingo, 1 de agosto de 2010

Problema ao renomear um objeto no Openldap

Hoje irei falar sobre a dificuldade que tive em renomear o "RDN" de um objeto no serviço de diretório do "Openldap".

Eu tinha feito um "script" em "php" e testado com sucesso em uma de minhas máquinas virtuais, após o teste executei o "script" no servidor de produção e para minha surpresa não funcionou.

No "script" estava usando a função "ldap_rename" para renomear o "RDN" de um objeto. Para capturar o erro usei a função "ldap_error" após a execução do "ldap_rename" o que me fez exibir o aviso a seguir.

Warning: ldap_error(): supplied argument is not a valid ldap link resource

Como não conseguia renomear a OU via "php" resolvi usar o "ldapmodrdn" ferramenta do pacote "Openldap" que serve para renomear o "RDN" dos objetos numa base LDAP, após a tentativa também não consegui renomear o objeto e o comando me retornou a saída abaixo:

Rename Result: Operation not allowed on non-leaf(66)
Additional info: subtree rename not supported

Depois de quebrar bastante a cabeça descobri que o motivo de não está conseguindo renomear o objeto era por está usando como banco de dados o "BDB" no "Openldap". Diante disso tive que migrar minha base atual de "BDB" para "HDB" pois com ele é possível alterar o "RND" dos objetos.

No próximo "post" irei mostrar como realizar essa conversão, então até lá.

Maiores informações consulte a documentação oficial do Openldap.

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

sexta-feira, 16 de julho de 2010

Resolvendo o erro - ethX: ERROR while gettting interface flags: No such device

Problema:
SIOCSIFADDR: No such device
ethX: ERROR while gettting interface flags: No such device
ethX: ERROR while gettting interface flags: No such device
Bind socket to interface: No such device
Failed to bring up ethX.

Existem diversas formas de resolver esse problema. Irei mostrar a mais simples de todas que é remover o arquivo "70-persistent-net.rules" e reiniciar o sistema.

Solução:
# rm /etc/udev/rules.d/70-persistent-net.rules
# reboot

Esse problema normalmente ocorre devido ao MAC ou módulo da placa de rede não está corretamente especificado no arquivo "70-persistent-net.rules".

Esse erro acontece muito comigo quando copio uma máquina virtual de um computador para outro pois normalmente o MAC e a placa de rede são distintos.

Essa dica é para a distribuição Debian mas acredito que funcione em outras distribuições com os devidos ajustes caso necessário.

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

terça-feira, 6 de julho de 2010

Integrando o Firefox a um gerenciador de tarefas (To do)


Iremos mostrar como instalar e configurar o plugin do Toodledo, ele serve para gerenciamento de tarefas. O interessante é que após a instalação e configuração passaremos adicionar nossas tarefas na Internet e com isso podemos acessar de qualquer computador.

Eu por exemplo configurei no meu computador de casa e do trabalho, ou seja , ambos estão atualizados pois sincronizam as informações com minha conta no Toodledo através da Internet..

Caso você não tenha o plugin instalado você pode acessar a sua conta através do próprio site da Toodledo porém é muito mais conveniente acessar via o Firefox pois normalmente é a aplicação que mais usamos em nosso cotidiano, então vamos instalar e configurar. 

Passo 1: Criando sua conta no Toodledo

1 - Acesse o site: http://www.toodledo.com
2 - Clique no botão "Register"
3 - Preencha o campo "Email", deve conter algum e-mail de seu uso, ex.: usuario@gmail.com
4 - Preencha o campo "Password" e o "Confirm Password"
5 - Aceite os termos e clique no botão "Sign In"

Passo 2: Instalado o add-on Toodledo em seu Firefox

2 - Clique no link "Download and Install Firefox Addon"
3 - Clique no botão "Instalar agora"
4 - Após instalação reinicie seu Firefox

Passo 3: Configurando o Toodledo em seu Firefox

1 - Vá em "Ferramentas -> Toodledo -> Settings..."
2 - Preencha o e-mail e senha que foi cadastrado no Toodledo e clique no botão "OK"

 




































Passo 4: Configurando a barra de ferramentas do Firefox com os botões do Toodledo

1 - Vá em "Exibir -> Barras de ferramentas -> Personalizar..."
2 - Arraste os icones marcados na imagem abaixo para a barra de ferramentas do Firefox e clique no botão "Fechar".


3 - A sua barra ficará parecida com da imagem a seguir.

 
Passo 5: Acessando o seu Toodledo pela primeira vez
1 - Clique no botão:




2 - Coloque a conta criada no Toodledo e a senha, caso queira salvar a senha clique na opção "Remember me" e clique no botão "Sign In >>"


 
3 - Como sugestão de configuração recomendo ajustar a página inicial de seu Toodledo para exibir a sua lista de tarefas na página inicial para isso vá em "Settings -> Default Start Page -> All Tasks" e salve.

Passo 6: Adicionando uma tarefa

1 - Clique no botão
 



2 - Preencha a tarefa e clique no botão "OK"


































Acabamos de adicionar uma tarefa no "Toodledo".

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

quinta-feira, 1 de julho de 2010

Aumentando a velocidade de navegação no Firefox


Iremos mostrar como ativar o recurso de HTTP pipeline do Firefox mas antes de iniciarmos as configurações é importante saber o que é.

HTTP pipeline

É a possibilidade do cliente HTTP que neste caso é o Firefox, realizar diversas requisições simultâneas ao servidor Web sem ser necessário esperar as respostas de cada requisição para poder realizar uma nova solicitação.

Na imagem abaixo perceba que sem o uso do "pipeline" é necessário esperar a reposta de cada solicitação feita com o servidor Web para poder fazer uma nova requisição.

Usando o "pipeline" o cliente pode abrir diversos fluxos com Servidor e assim será possível ajustar várias solicitações HTTP num mesmo pacote TCP, fazendo com que seja enviado e recebido menos pacotes TCP através da rede.

Isso resultará num melhor uso da rede, agilidade na conexão e melhor desempenho na hora de baixar as páginas.















 

Ajustando o “pipeline” no Firefox

Passo 1
Na barra de endereços acesse o endereço: about:config

Passo 2
Ajustes os parâmetros a seguir com os valores sugeridos.

network.http.pipelining = true
network.http.pipelining.ssl = true
network.http.proxy.pipelining = true
network.http.pipelining.maxrequests = 8
 
Normalmente a chave "nglayout.initialpaint.delay" não existe, crie uma chave do tipo "Integer" com o valor 0 (Zero).

Explicações:
network.http.pipelining - Esse parâmetro ativa o recurso de “pipeline” em seu Firefox.
network.http.pipelining.ssl - Esse parâmetro ativa o recurso de “pipeline” de SSL em seu Firefox
network.http.proxy.pipelining - Esse parâmetro ativa o recurso de “pipeline” para proxy, caso você esteja usando para acessar a rede.
network.http.pipelining.maxrequests - Esse parâmetro é o número de conexões possíveis de abrir por requisição.
nglayout.initialpaint.delay - Esse parâmetro faz com que o Firefox exiba imediatamente todos os dados recebidos do servidor Web.

Conclusão

Com o uso do recurso pude mensurar uma redução média de 15% no tempo de abertura das páginas,  não constatei nenhum problema com o uso, apesar de na documentação oficial informar que alguns servidores Web podem não suportar o "pipeline".

Para maiores informações visite os link abaixo:


Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,


Joaquim Ferraz

segunda-feira, 28 de junho de 2010

Firefox é o navegador!!!

Antes tinha aversão em utilizar o Firefox no Windows pelo simples fato de achar mais prático usar o Internet Explorer por já está instalado e com isso não precisar instalar uma aplicação extra. 

Bom desistir dessa tal praticidade quando comecei a ter diversos problemas com IE como lentidão ao abrir páginas, instalação de vírus entre outros problemas e pragas virtuais.

Diante disso resolvi experimentar o Firefox, navegador da Internet mais utilizado no mundo segundo  w3schools, onde o mesmo é utilizado por mais de 46% dos usuários.

Outro ponto que me chamou bastante atenção é que existem milhares de plugins ou add-ons para o Firefox onde eles se integram totalmente ao navegador dando mais utilidade a aplicação. 

Hoje só uso Internet Explorer quando infelizmente o site é feito usando algum recurso não recomendado pela W3C.

Os plugins me fizeram abolir diversas ferramentas como gerenciador de download, programa para baixar vídeos do Youtube entre outras. Eles também me deram recursos que antes não tinha como um tradutor e um corretor ortográfico.

Add-ons recomendados para usuários em geral

Sempre que instalamos algum plugin no Firefox podemos acessa-lo pelo menu "Ferramentas -> Plugin".

Xmarks
Realiza backup de seus favoritos na Internet. Você pode acessar de qualquer máquina bastando ter o Xmarks instalado.

Babylon
O melhor tradutor que conheço.

DownloadHelper
Excelente para baixar vídeos do Youtube.
Gerenciador de download dá a você a possibilidade de pausar um download para continuar depois, evita de você perder o download caso tenha algum problema com sua conexão.

Vero
Excelente corretor ortográfico onde o mesmo marca as palavras supostamente erradas e você apenas precisa clicar com o botão direito do mouse sobre a palavra para ver a sugestão de correção.

Febe
Ótimo para tirar backup do Firefox, uso-o para fazer backup de todos os meus plugins.

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

Realizando consultas no DNS

O que é DNS?

DNS é o serviço de resolução de nomes da internet. A porta utilizada pelo serviço é a 53 udp e tcp.

Procotolos usados

Udp - é utilizado para todas as consultas realizadas porém quando a resposta for maior que 512 bytes o protocolo usado é o tcp. Consultas maiores que 512 bytes é raríssimo de acontecer.
Tcp - é usado para transferência dos arquivos de zonas e para respostas maiores que 512 bytes.

Por recomendação apenas deixamos liberado em nosso firewall as portas 53 udp para consultas e a porta 53 tcp apenas para os ip's dos servidores que realizamos troca de mapas. 

Tipos de consultas

Existem 2 tipos de consultas que são as interativas e as recursivas.

Recursiva - tipo de consulta onde o servidor DNS quando não sabe ou não é responsável pela resolução do nome, ele realiza consultas recursivas na hierarquia de nomes em busca da resposta para a consulta realizada. Como podemos perceber exige bastante trabalho do servidor DNS.

Interativa - tipo de consulta onde o servidor DNS apenas responde a consulta caso ele seja responsável pela resolução do nome consultado. Como podemos perceber exige muito menos trabalho do DNS ao invés das consultas recursivas.

Diante disso é sempre recomendável para os servidores de DNS responderem para o lado da Internet apenas consultas interativas e no lado da LAN responder recursivamente. Por experiência já peguei um servidor onde respondia recursivamente para todo o mundo e analisando os logs percebemos que existiam ip's da China, Rússia, Japão entre outros países que estavam realizando consultas desnecessárias no servidor.

Tipos de registros

Os principais tipos de registros que utilizamos no nosso dia a dia em testes com o DNS são: SOA, NS, MX, PTR, A e TXT.

SOA - é o registro que contêm toda a informação do domínio, como: qual é o servidor primário, quem é responsável pelo domínio entre outras informações úteis.
NS - é o registro que informa qual ou quais servidores DNS são responsáveis por um determinado domínio.
MX - é o registro que informa qual ou quais máquinas é responsável pelo recebimento de e-mail do domínio.
PTR - é o registro onde é armazenado ip de um host. Normalmente utilizado para consultas reversas ou seja nos consultamos por ip e recebemos um nome.
A - é o registro onde é armazenado um nome de um  host. Normalmente utilizado para consultas diretas ou seja nos consultamos um nome e recebemos um IP.
TXT - Armazena um texto qualquer. Normalmente utilizado para armazenar política de envio e recebimento de e-mal do domínio conhecido como "SPF".

Usando o nslookup

Bom pessoal diante das informações introdutórias, claro que de forma sucinta, iremos agora realizar algumas consultas com o utilitário "nslookup" que normalmente já está instalado no Windows e Linux.

Iremos usar o nslookup no modo interativo ou seja usaremos o seu próprio prompt de comando. 

No prompt de comando de seu sistema operacional Windows ou Linux chame o comando:

nslookup

Por padrão o servidor DNS que o nslookup irá utilizar para realizar as consultas é o que está definido nas configurações de rede de seu sistema operacional, caso deseje se conectar a um outro servidor DNS o comando é:

server ip_servidor_dns

Para ajustamos o tipo de consulta que desejamos realizar digitamos no prompt o comando:

set q=TIPO

Onde TIPO pode ser substituído por soa, ns, mx, ptr, a, txt entre outros tipos de registros DNS. Lembramos que a consulta padrão assim que abrimos o nslookup é a de host ou seja do tipo a.

Como vocês podem ver o "nslookup" está esperando por comandos.


Iremos descobrir as todas informações disponíveis do domínio "uol.com.br" com o tipo de consulta SOA. 

Com a consulta realizada descobrimos que o servidor primário do domínio é o "eliot.uol.com.br", como podemos perceber é uma consulta com bastante detalhes e informações úteis. 

Vocês também perceberam a frase "Nao e resposta de autorizacao", isso que dizer que o servidor que estamos utilizando para realizar a consulta o "189.40.224.5" não é responsável pelo domínio "uol.com.br", ou seja ele para dar essas informações realizou uma consulta do tipo recursiva.

 
Iremos agora conectar ao servidor  "eliot.uol.com.br" e realizar a mesma consulta anterior.

Como vocês perceberam não foi exibida a frase "Nao e resposta de autorizacao", isso quer dizer que o servidor que estamos realizando a consulta é responsável pelo domínio "uol.com.br" e o tipo de consulta realizada foi do tipo interativa.



















Iremos agora realizar uma consulta do tipo NS do domínio "uol.com.br".

Com a consulta realizada descobrimos todos os servidores de DNS para o domínio "uol.com.br", podemos perceber também que essas informações são exibidas na consulta SOA.

 
Iremos agora realizar uma consulta do tipo MX do domínio "uol.com.br".

Com a consulta realizada descobrimos que "mx.uol.com.br" é responsável pelo recebimento de e-mail do domínio "uol.com.br".


Iremos agora realizar uma consulta do tipo PTR para o ip "200.221.29.129".

Com a consulta realizada descobrimos que o nome da máquina é "mx.uol.com.br", acabamos de realizar uma consulta reversa ou seja demos o ip para descobrir o nome.


Iremos agora realizar uma consulta do tipo A para o nome "www.uol.com.br".

Com a consulta realizada descobrimos o ip da máquina é "www.uol.com.br", acabamos de realizar uma consulta direta, ou seja, passamos um nome para descobrirmos o ip.


Para finalizarmos iremos realizar uma consulta do tipo TXT para o domínio "uol.com.br".

Com a consulta realizada descobrimos as regras adotadas para o envio e recebimento de e-mails do domínio "uol.com.br" ,ou seja, é a politica spf.


Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz

sábado, 26 de junho de 2010

Expresso Livre

Bom pessoal,

nesse meu primeiro "post" irei falar de uma solução corporativa chamada Expresso Livre. Ela é uma ferramenta de colaboração ou seja possui inúmeras ferramentas corporativas integradas, como e-mail, catálogo corporativo, agenda, boletins de notícias, "Workflow" entre outras.

O Expresso foi um projeto iniciado em 2004 pela Celepar em busca de uma alternativa ao Notes que representava um alto custo ao Estado do Paraná. O Expresso originou-se do E-Groupware ferramenta alemã.

Hoje o seu desenvolvimento é mantido por um comitê gestor que possui as empresas: Celepar, Serpro, Prodeb, Dataprev, Prognus.

Trabalho com e-mails desde 2002 com experiência nas ferramentas Horde, SquirrelMail, Exchange, Notes e com Expresso Livre desde dezembro de 2007.

Em minha avaliação o Expresso não deixa nada a desejar, principalmente em relação a ferramentas como Notes e Exchange.

Estamos implantando o Expresso em todo o Estado de Pernambuco, o que já trouxe uma economia de aproximadamente 5 milhões de reais apenas com licenciamento, isso sem contar hardware, energia elétrica e pessoal para manter a infra. Ferramentas como Notes e Exchange são extremante exigentes com memoria e processamento assim necessitam de mais equipamentos. Hoje possuimos apenas um servidor com 8GB de Ram e 4 processadores de núcleo duplo, nele temos 6000 contas dessas 850 usuários conectados simultaneamente e para vocês terem uma ideia o processamento normalmente não passa de 20% de uso.

Graças ao Expresso podemos ter uma única ferramenta de colaboração em todo o Estado, o que possibilita economia e principalmente maior integração entre todas as secretarias e órgãos do poder executivo no Estado.

Hoje possuímos 6000 mil contas e 25 domínios, nossa meta é ampliar o número de contas para 38.000 mil distribuídos em 65 domínios.

Você pode também navegar e explorar o Expresso em http://demo.expressolivre.org/

Maiores informações visite o site do projeto em http://www.expressolivre.org./

Qualquer crítica, sugestão ou dúvida mande uma mensagem.

Atenciosamente,

Joaquim Ferraz