Fixing HP iLO jvm problem to open remote console

I’ve installed Sun Java JDK in my Debian, and linked jdk/jre/lib/amd64/libnpjp2.so lib to google chrome plugins dir. So I needed to connect into a remote console of HP iLo.

While jvm was loading the remote console, an error was ocurred and the initial loading was stopped. To fix this problem is really simple and we have two ways:

First Option

Disable ipv6 bind at /etc/sysctl.d/bindv6only.conf. To disable this property just change the value 1 to 0. After do that run the command below as root user:

# sysctl -p /etc/sysclt.d/bindv6only.conf

Restart your navigator.

Second Option

You can disable jvm ipv6 reading directly into the file ~/.java/deployment/deploymennt.properties. Just open the file and add this setting:

deployment.javaws.jre.0.args=-Djava.net.preferIPv4Stack\=true

And now, that’s ok. You’re done to use your HP iLo without troubles. Good luck.

Advertisements

Creating and converting icons to gnome dia – Part I

Before I start, I’d like to say thanks to all people that are using the icons that I made. I confess that I’m surprised with a lot of mails that I’ve been receiving about this project.

I know that there are a lot of guys curious about to convert their icons to shape file format.  So, finally I’m trying to dedicate a time to explain how to do that.

The first thing that we need to think is that shape files are totally limited. During my work to convert these icons I’ve noticed some details about its creation:

  • Do not try to use gradient in shape files. If you need this effect you must construct this using retangular objects in a color scale.
  • The format entitled plain svg by Inskscape has some differences if comparing to shape, an important difference is that colors are referenced by names in svg and referenced by hexadecimal in shape.
  • Depending of the way that the object was made, probably you’ll need to remake this. Some resources used in vetorial applications doesn’t work to shape format.
  • Try not to use lines when you’re drawing an object to be saved in a shape file. Sometimes, I don’t know what happens that the line looses its coordinates. So, use a thin rectangle filled in the color that you want.
  • Do not use outlined objects. If you need an object outlined, you must use two objects in a different size and pick up the lower on the largest. Your largest object is your outline.

To be continued.

New databases icons available for Dia

During the conference “Boteco 4Linux – Pentaho” I saw a network map using the icons that I’ve published. So I noticed that they needed specific network icons to represents databases  servers. They was using a default database icon with the PostgreSQL logo as example. When I arrived home I decided to make these icons to improve the project. Now we have four more icons on the project:

  • IBM DB2 Database Server;
  • PostgreSQL Database Server;
  • Oracle Database Server; and
  • mySQL Database Server.

I asked some friends to submit me a list of icons that can be usefull and necessary in a network scheme, and you’re invited to do the same posting your list here. Next I’ll see the most relevant icons and published them. Take a look at the screenshot below:

New database icons

Please, visit the project page to make the download.

New network icons schema to Gnome Dia

After a lot of time searching some friendly icons to be used in Dia and no results obtained, I decided to face this problem and generate my own icons collection.

I like Gnome Gorilla’s icons style very much, so I decided to convert most of them to Dia. I had to mix some icons to make a new in according its preposition.

I found out on Net the svg2shape.xslt to make the conversion, but many erros came up when I tried to convert an Inkscape plain SVG.

Problems associated with compability was seen. An example about is that a shape file doesn’t accept opacity. Many Gnome icons have opacity and they are constructed using a different structure to be in conformity with Dia. Another problem detected is that shape files don’t accept colors by their names. You can’t use black to describe a black color, only hexadecimals six digits are accepted.

I’ve written a PHP script to read the shape file created by the command xsltproc and make some modifications to correct them. In a future post I can explain better this and post the hard way to get this.

Here you can see a simple result of the conversion and adaptation:

Gnome icons scheme to Dia

Gnome icons schema to Dia

If you liked it, click here to make the icons download. To add this in your Dia you just need to follow the next step:

# cd /usr/share/dia

# cp PATH/rib-network.tar.gz .

# tar zxvf rib-network.tar.gz

If your Dia is started please close this and start it again. So in your combo list choice RIB-Network. Now you can be free to create your Network diagrams with a lot of colors and beauty. 🙂

Convertendo arquivos com codificações diferentes

Utilizei durante um bom tempo a codificação ISO-8859-1 para editar e construir meus arquivos. Porém após a mudança para UTF-8 tive vários problemas com a codificação dos arquivos, daí que encontrei o iconv e este salvou minha vida.

Outro fato interessante também é receber arquivos com codificações diferentes de outras pessoas e ficar com aquele problema chato na acentuação dos arquivos.

O iconv serve para mudar de uma codificação para outra e possui uma sintaxe muito simples e fácil.

Para converter um arquivo de ISO-8859-1 para UTF-8 basta apenas fazer o seguinte.

# iconv --from-code=ISO-8859-1 --to-code=UTF-8 < oldISOfile >  newUTF8file

Você também utilizar o inverso da situação acima:

# iconv --from-code=UTF-8 --to-code=ISO-8859-1 < oldUTF8file >  newISOfile

E não limite-se somente à isto, você também pode trabalhar com outros padrões de codificação e obter o resultado que quiser. Aqui você pode saber mais sobre tipos de codificação.

Download de pacotes .deb com todas suas dependências

Apesar do mundo estar cada vez mais conectado à Internet, às vezes enfrentamos alguns problemas que nos impossibilitam de ter o acesso à rede. Um exemplo interessante seria a mudança de casa e o pedido de transferência de um serviço ADSL para um novo endereço, por exemplo.

Vivendo este problema necessitava instalar o pacote gphpedit no computador em casa. Porém não encontrava nenhuma maneira fácil de fazê-lo devido à quantidade de depedências que eu precisava copiar através da rede de um amigo e levá-las em um dispositivo móvel de armazenamento qualquer: um pendrive, cd ou algo do tipo.

Poderia até utilizar o Synaptic para procurar o devido pacote e gerar através dele um script para fazer o download das dependências, mas o objetivo era fazer diretamente pelo console.

Cheguei até a improvisar um shell script para fazer isso, mas a solução era limitada, pois o script pegava somente as dependências do gphpedit. Se alguma biblioteca necessária para a instalação do gphpedit precisasse também de uma outra biblioteca ou pacote, o script não a pegava.

Foi daí que recebi uma dica do Theo para usar o apt-rdepends e conseguir listar recursivamente todas as dependências. O único problema é que ele não tem a capacidade de fazer o download destes pacotes diretamente. E novamente tive que montar um script para fazer isso.

Uma  nota é que o apt-cache também proporciona a listagem de dependências do pacote, mas não de maneira recursiva.

Caso queira ver as dependências pelo apt-cache apenas rode:

# apt-cache depends nomedopacote

Não conhecia o apt-rdepends pois não vem instalado por padrão no Debian/Ubuntu. Para instalá-lo rode:

# aptitude install apt-rdepends

Bom, depois ainda resta um trabalhinho sujo para criar o script, mas é bem fácil. Antes de começar crie um diretório para que na inicialização dos downloads os pacotes não fiquem espalhados.

# mkdir gphpedit

# cd gphpedit

Para criar o script faça:

# apt-rdpends gphpedit > depends.sh

# chmod u+x depends.sh

# vi depends.sh

Na primeira linha do arquivo adicione o interpretador: #!/bin/bash

Substitua o nome dos pacotes que possuem dependências com o seguinte comando no vi:

ESC +  :%s/^[a-z]/#\1/g

Note que agora todos os pacotes ficaram com um comentário na frente. O próximo passo é alterar o valor dos termos “Pré-Depende:” ou “Pre-Depends:” para “aptitude download”. Novamente no vi faça:

ESC + :%s/Pré-Depende:/aptitude download/g

(Se seu sistema estiver na língua inglesa utilize “Pre-Depends”:).

Agora altere somente os termos “Depende:”  da mesma maneira:

ESC + :%s/Depende:/aptitude download/g

(Se seu sistema estiver na língua inglesa utilize Depends:).

Ficou faltando apenas um detalhe. Apagar as informações sobre versões delimitadas entre parênteses. Nada que uma pequena expressão regular não ajude:

ESC + %s/\((.\+\)//g

Bom, agora é só executar seu script e esperar pelo download.

# ./depends.sh

Vulnerabilidade no Django i18n: Negação de Serviço

Há pouco fui checar o Security Focus e logo na index encontrei falando sobre uma vulnerabilidade na internacionalização do Django. A causa da vulnerabilidade é que o Django falha ao alocar o apontamento de dados submetido pelo usuário.

Um “hacker” mal intensionado pode explorar este problema reservando grandes valores de memória e então causar um Ataque de Negação de Serviço ou Remote Denial of Service.

As versões 0.91, 0.95, 0.95.1 e 0.96 estão vulneráveis; outras versões também podem ser afetadas.

Esta falha pode somente ser explorada se a opção  ‘USE_I18N’ e o componente ‘i18n’ estiverem ativados.

Nenhum exploit foi ainda publicado, porém no site oficial do projeto já estão disponíveis os patches para correção do problema.

Você pode acessar os patches de correção  diretamente clicando abaixo na versão de seu uso:

0.91  0.95   0.96