Modificando a “TimeZone” no RedHat/CentOS

No meu caso, minha TimeZone é América/Recife e não estou utilizando UTC.

1) Editar o arquivo /etc/sysconfig/clock e dexa-lo assim:

# vim /etc/sysconfig/clock
ZONE=”America/Recife”
UTC=false
ARC=false

Onde “America/Recife” é a minha TimeZone. Por exemplo, se você estiver em São Paulo deverá utilizar “America/Sao_Paulo” para visualizar as “TimeZones” disponíveis, dê uma olhada em: /usr/share/zoneinfo/

2) Agora vamos linkar para se tornar a TimeZone default do sistema:

# ln -sf /usr/share/zoneinfo/America/Recife /etc/localtime

Agora é só testar:

# date
Qua Set  7 11:35:43 BRT 2011

Deverá ser retornado corretamente a data.

Desativando o SELinux apenas para o Apache

Hoje fiz a instalação de um CentOS 5.3 em um modesto Pentium III 900MHz com 256Mb. Fiz a instalação em modo texto, sem ambiente gráfico. Após a instalação fui colocar a aplicação web para rodar nela e eis que o SELinux estava lá atrabalhando minha vida. A aplicação precisa ter acesso a um diretório de um daemon do sistema para leitura de arquivos e não estava tendo permissão (utiliza o usuário do apache). Chequei as permissões e estavam todas ok. Aos poucos fui descobrindo o motivo: SELinux ativado bloqueando o acesso a determinados diretórios.

Alguns minutos de pesquisa e eis que encontrei a solução para o meu problema: Desativar o SELinux apenas para o HTTP.

root@hylafax ~# echo “httpd_disable_trans=1″ >> /etc/selinux/targeted/booleans
root@hylafax ~# setsebool httpd_disable_trans 1
root@hylafax ~# service httpd restart

Prontinho! SELinux funcionando e sem influenciar a minha aplicação web. Espero que esta dica seja útil para vocês. Abraços.

Corrigindo a placa RaLink RT2561/RT61 (Wireless DLink) no Linux

Esta semana resolvi testar três distribuições linux no meu desktop: Ubuntu 9.04, openSuSE 11.1 e CentOS 5.3, todos 32bits. Lembrando que antes de testa-las, eu tinha o Slackware 12.2 instalado e devidamente configurado, todo o hardware foi detectado no boot, não havendo necessidade alguma de corrigir problemas de hardware, apenas tive que configurar manualmente a minha NVidia.

Meu desktop é um singelo AMD Athlon XP 2000+ com 768Mb, 100% off-board. O Ubuntu cumpriu o prometido: 23s do boot ao login. O openSuSE já tinha um boot mais lento (muito mais lento que o do Ubuntu) e também na sua inicialização padrão (do openSuSE) carregou muita coisa desnecessária deixando a máquina lenta. O CentOS, também funcinou tudo redondo, boot ficou rápido, mas não tanto quanto o do Ubuntu.

Mas todas 3 pecaram em um único ponto: Minha placa de Rede Wireless PCI. No Slackware ela funcionava redondamente, sem a necessidade de configurações extras, nos Linux “PnP” tive uma supresa. A placa é uma DLink com chipset RaLink RT2561/RT61. Nas três distribuições a mesma falha, dizia que o driver havia sido compilado com uma versão antiga do firmware. Decidi então ir em busca da solução e acredito que será a mesma para qualquer outra distribuição Linux que acuse o problema.

Pesquisando pela saída do “lspci” encontrei um link para http://www.ralinktech.com/ralink/Home/Support/Linux.html onde contém os drivers para Linux. Baixei o arquivo 2009_0123_RT61_Linux_STA_v1.1.2.3.tar.bz2.

Vamos decompactar e compilar:

[ root@centos Downloads ]# tar xvjf 2009_0123_RT61_Linux_STA_v1.1.2.3.tar.bz2 -C /usr/src/.
[ root@centos Downloads ]# cd /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module
[ root@centos Module ]# cp -f Makefile.6 Makefile
[ root@centos Module ]# make all
[ root@centos Module ]# make install
[ root@centos Module ]# mkdir -p /etc/Wireless/RT61STA
[ root@centos Module ]# cp *.bin /etc/Wireless/RT61STA/
[ root@centos Module ]# dos2unix rt61sta.dat
[ root@centos Module ]# cp rt61sta.dat /etc/Wireless/RT61STA/
[ root@centos Module ]# rmmod rt61pci
[ root@centos Module ]# modprobe rt61

Pronto! Foi criada uma interface de rede, nomeada de ra0. Portanto wlan0 não funciona mais.

Vamos testar agora:

[ root@centos Module ]# cd ~
[ root@centos root ]# iwlist ra0 scan

Aqui deverão aparecer informações sobre sua rede wireless. Agora é só utilizar a placa de rede, sem dor de cabeça.

Mudanças no sistema de empacotamento do Slackware

Hoje pela manhã resolvi dar uma olhada como estava o ChangeLog do Slackware Current (a próxima versão do Slackware, provavelmente o Slackware 13.0). E tive uma grata surpresa: Além do KDE 4.2.3, parece que estão modificando o algoritmo de compressão dos pacotes do Slackware. Atualmente é utilizado o Gzip (pacote.tgz), mas realizaram e comprovaram melhorias e ganhos de performance em utilização do algoritmo LZMA (pacote.txz).

Uma tradução livre do que foi publicado (desculpem, mas meu inglês não é dos melhores, portanto perdão por algum erro cometido):

“Olá pessoal! Este lote de atualizações inclui o recém lançado KDE 4.2.3, mas notávelmente o que muda é que não iremos utilizar mais o gzip para empacotamentos do Slackware. Em vez disso vamos estar utilizando o xz, com base no algoritmo de compressão LZMA. XZ oferece uma compressão melhor que o próprio bzip2, mas além disso, ainda oferece bom desempenho na extração (cerca de 3 vezes mais rápido que o bzip2 e não muito mais lento que o gzip em nossos testes). Há muito tempo era requisitado o suporte a bzip2 e lzma original, adicionamos o suporte (por que não?), isso nada mais é do que um interessante complemento – pensamos que a maioria das pessoas provavelmente irá querer utilizar tanto o original “tgz” quanto o novo “txz”. O atual formato dos pacotes do Slackware (que consiste na apresentação dentro do pacote) não mudou, mas este é o primeiro apoio dentro do Slackware a utilização de ferramentas e algoritmos de compressão alternativos.

Algumas pessoas têm perguntando por que não escolher uma única nomenclatura, tais como .slk. Há um casó para esta idéia, mas as ferramentas ainda precisam de muito apoio. Tgz será usado para pacotes antigos. Limita-se ao “.tgz” para tudo, não faz sentido. Utilizar compressões que refletem a o formato de de compressão dos pacotes parece ser uma abordagem mais transparente, é o que melhor segue uma tradição.

Como um exemplo de melhora na compressão. Txz do pacote kernel-source:
Antes: kernel-source-2.6.29.2_smp-noarch-1.tgz (73808508 bytes)
Depois: kernel-source-2.6.29.2_smp-noarch-1.txz (49150104 bytes)
O tamanho do pacote principal árvore em / slackware foi reduzido de
1.9GB de 1.4GB, convertendo a maior parte dos pacotes. Txz.

A maioria dos pacotes foram convertidos a partir de. Tgz para. Txz, mas nós continuaremos a fazer o gzip, pkgtools, slackpkg, tar, e pacotes xz no formato tgz para uso posterior.
Aproveitem! E obrigado a Lasse Collin pelo bom trabalho no xz. :-)

Bem é isso! Que venha o novo Slackware!

Instalando o VirtualBox no Slackware Linux

Depois de ensinar a instalar o VirtualBox no Ubuntu Linux, agora vou ensinar a instalar no Slackware Linux. A instalação no Slackware é mais “genérica” tendo o seu processo tão simples quanto em outras distribuições.

Vamos direto ao assunto. Acesse http://www.virtualbox.org/wiki/Linux_Downloads e baixe a versão “All distribuitions” para o seu hardware. No meu caso baixei a versão 32bits (i386), que é a arquitetura do meu notebook.

Logado como root, vamos seguir a instalação. Primeiramente entre no diretório onde você salvou o arquivo e torne-o executável:

root@slackware ~/downloads# chmod +x VirtualBox-2.2.2-46594-Linux_x86.run

Agora vamos executar o instalador:

root@slackware ~/downloads# ./VirtualBox-2.2.2-46594-Linux_x86.run

Protinho! Ao final é só executar: /opt/VirtualBox/VirtualBox

Agora é só criar suas máquinas virtuais.

Obs: Utilizo meu Slackware com KDE 4.2.1, logo já tenho o Qt 4 instalado. Caso não tenha, instale o pacote.

Linux: Chegamos a marca de 1%!

Os que me conhecem sabe que utilizo o Linux há anos. Meu primeiro contato com o sistema foi traumático, meu hardware tinha tudo para me afastar do pinguim. Eu deveria ter desistido, mas fui insistente e consegui utilizar. Há 10 anos atrás, haviam poucos usuários de Linux e quase não tinhamos notícias de desktops que rodavam com Linux.

Esta semana li na Info que o Linux atingiu o patar de 1,02% de utilização em desktops! Um marco na história. Lembram do Firefox? Ele começou assim e hoje já passa dos 30%.

Parabéns para nós! Acompanhei bem a evolução e o crescimento do pinguim, sei o quanto evoluimos e temos que evoluir. O que ainda falta para melhorar este cenário são softwares com a suíte da Adobe, Corel e outros ou seja, faltam ainda aplicações para Desktops Linux. Temos muitas aplicações, mas as chamo de básicas (Navegador, Office, Agenda etc…).

Quem quiser conferir, seguem os links:

http://marketshare.hitslink.com/report.aspx?qprid=8
http://info.abril.uol.com.br/

Instalando o VirtualBox no Ubuntu

Hoje pela manhã resolvi instalar o Ubuntu no meu Desktop. Então realizei a instalação do VirtualBox da SUN, para que eu tivesse um ambiente de testes com outras distribuições ou outros sistemas. Então resolvi escrever este pequeno texto que servirá de guia para muitos que também desejarem realizar a instalação do VirtualBox no Ubuntu.

1) Efetuando o download do VirtualBox

Acesse http://dlc.sun.com/virtualbox/vboxdownload.html#linux aqui você encontrará o download da versão open source do software (GPLv2) para várias distribuições Linux. No meu caso fiz o download da versão para Ubuntu 9.04.

2) Instalando dependências

Na primeira vez que tentei instalar o VirtualBox no Ubuntu, ele pediu algumas dependências relativas a biblioteca de sua “GUI” que é em Qt. Então vamos resolver logo esse problema.

xwindow@ubuntu ~$ sudo aptitude install libqt4-network libqtcore4 libqtgui4

3) Instalando o VirtualBox

Entre no diretório onde você efetuou o download do VirtualBox e instale-lo através do dpkg.

xwindow@ubuntu ~$ sudo dpkg -i virtualbox-2.2_2.2.2-46594_Ubuntu_jaunty_i386.deb

Protinho! VirtualBox instalado! Agora é só ir em “Aplicativos -> Sistema -> Sun VirtualBox”

Instalando o Java da SUN em seu Linux

Hoje vou ensinar um procedimento simples, mas bastante útil para os que assim como eu preferem instalar o Java que fica disponível no site http://java.sun.com/. A versão instalada será a JDK 1.6.0_13.

1) Após efetuar o download, entre no diretório onde salvou o arquivo e o torne executável:

root@slackware ~# chmod +x jdk-6u13-linux-i586.bin

Agora vamos executá-lo:

root@slackware ~# ./jdk-6u13-linux-i586.bin

Será exibida a licença do Java, pressione a tecla “q” e em seguida digite “yes” (se você quiser aceitar a licença claro ;-) ). Nesse ponto o java será descompactado. Ao final será solicitado que você tecle “Enter”.

Vamos criar um diretório em /usr para armazenar o nosso Java:

root@slackware ~# mkdir /usr/java

Agora vamos mover o java para lá:

root@slackware ~# mv jdk1.6.0_13 /usr/java/.

2) Criando as variáveis ambientes do Java:

Agora vamos criar o “profile” do java inserindo nele o conteúdo a seguir:

root@slackware ~# vi /etc/profile.d/java.sh

#!/bin/bash
#
# Configuracoes do Ambiente Java no Linux
#
# Autor: Wagner Santos
#        wagner@dotlinux.net

JAVA_HOME=”/usr/java/jdk1.6.0_13″
JRE_HOME=”$JAVA_HOME/jre”
CLASSPATH=”$JAVA_HOME:$JAVA_HOME/lib:$JRE_HOME/lib:.”
MANPATH=”$MANPATH:$JAVA_HOME/man”
JAVA_DOC=”$JAVA_HOME/docs”
PATH=”$JAVA_HOME/bin:$JRE_HOME/bin:$PATH”

export JAVA_HOME JRE_HOME CLASSPATH MANPATH JAVA_DOC PATH

Salve o arquivo e o dê a permissão de executável:

root@slackware ~# chmod +x /etc/profile.d/java.sh

Prontinho! Agora efetue um logout e um novo login no sistema, que já estará pronto para a utilização do Java!

Ativando o suporte a USB no VirtualBox

Em tempos de Virtualização, nada melhor do que poder ter vários sistemas operacionais funcionando ao mesmo tempo em nossas máquinas. Hoje precisei acessar o Bluetooth e um Pendrive dentro de uma máquina virtual (vm). Porém para minha surpresa o VirtualBox mostrava o dispositivo porém aparentava não ter permissão para acessa-lo. E lá fui eu perguntar ao oráculo como fazer funcionar dispositivos USB na VM. Encontrei esta dica do Rafael Silva, no Viva O Linux (VOL).

Básicamente basta executarmos o seguinte comando:

root@slackware: ~# mount -o remount,devmode=666 /proc/bus/usb

Protinho! Só ir no menu “Dispositivos” do VirtualBox e depois ir em “Dispositivos USB” e marcar o dispositivo que você conectou.

Recomendo colocar esse comando em seu rc.local para sempre que inicializar o sistema, o suporte ficar ativo.

Ativando o suporte a HDs Externos Firewire no Linux

Recentemente comprei para um cliente um HD externo Firewire de 1Tb para backup dos dados contidos em alguns servidores. Em nosso planejamento, este HD ficará conectado a um servidor Linux, que roda CentOS 5.2 x86_64.

Para minha surpresa, ao conectar o HD ao servidor, ele não foi “montado” automáticamente. Então foi necessário subir manualmente. Para ativar o suporte, é necessário inicializar o módulo “firewire-ohci“.

( root@servidor /root )# modprobe firewire-ohci

No meu caso foi criado o dispositivo /dev/sdb1. E aí foi só formatar no formato ext3 e efetuar a montagem do HD no Linux.

PS: No caso do CentOS o módulo vem na “blacklist” por padrão (não me perguntem o porque). Então faz-se necessário editar o “/etc/modprobe.d/blacklist-firewire” e comentar a linha “blacklist firewire-ohci”.

Página 1 de 512345