Alguns dias atras resolvi instalar o Trac para gerenciar um projeto que desenvolvi, porem durante a instalacao resolvi armazenar meus dados em uma base PostgreSQL, e entao me deparei com a falta de um modulo para conexao Python com PostgreSQL presente na documentacao do Trac, o pyPgSQL.
Minha plataforma utilizada foi um RedHat Enterprise 5 rodando em 64bits, e acabei nao encontrando nenhum pacote pronto e atualizado para a instalacao. Para que nao fosse necessario compilar e instalar tudo manualmente resolvi criar o pacote com base em um spec ja existente e para aqueles que precisarem, vou disponibiliza-lo aqui para download:
Source: pyPgSQL-2.4-0.src.rpm
RedHat Advanced Server 5: pyPgSQL-2.4-0.x86_64.rpm
Muitas vezes não temos como capturar informações sobre a utilização da largura de banda utilizada com SNMP, principalmente porque muitos dispositivos não oferecem suporte ao protocolo e desta forma precisamos de um meio onde seja possível monitorar o consumo de clientes, e essa tarefa pode ser facilmente feita com a utilzacao do Bandwidthd.
Apesar de nao ser muito difundido, o software e bem simples e conta com uma documentacao bem completa para a instalacao e configuracao em servidores. Os dados podem ser armazenados localmente em arquivo ou com a utilizacao de uma base de dados PostgreSQL, sendo que quando configurado para utilizar uma base de dados externa e possivel utilizar uma interface web dinamica escrita em PHP ao inves de HTML estatico e em ambos os casos a geracao dos graficos e feita com a utilizacao da biblioteca GD.
Para aqueles que utilizam sistemas RedHat/CentOS deixei disponibilizado aqui os pacotes RPM para download nas plataformas mais comuns (i386, x86_64) e disponibilizei o src.rpm para caso seja necessaria a recompilacao do pacote.
RedHat Advanced Server 5: i386 / x86_64 / Source RPM
Muitas vezes o horário de verão brasileiro pode afetar o funcionamento de nossas aplicações escritas em PHP que utilizem funções de data, e para que não aconteça nenhum problema existem algumas alternativas que podem ser adotadas para automatizar o processo de transição de horário (BRT/BRST).
A mais comum delas (e menos eficiente na minha opinião) é setar o horário diretamente no seu php.ini através da linha:
date.timezone = "Etc/GMT+2"
Sendo que também é possível utilizar esta chamada diretamente no script de sua aplicação com:
date_default_timezone_set("Etc/GMT+2");
A forma mais eficiente que encontrei para realizar estas transições de horário de forma automática foi utilizando o módulo php-timezonedb que está disponível através do PECL.
Para realizar a instalação do timezonedb é necessário ter as bibliotecas do php (php-dev) disponíveis na máquina.
A forma mais prática de instalação é diretamente através do repositório PECL:
# pecl install timezonedb
E para carregar o módulo na inicialização do PHP, adicione ao php.ini (ou uma entrada no php.d):
extension=timezonedb.so
Para testar o módulo sem a necessidade de reiniciar o servidor web utilize o próprio php-cli:
# php-cli -r "print date('d/m/Y H:i:s e T');"
A saída (em horário de verão) será algo parecido com:
04/02/2008 19:23:32 America/Sao_Paulo BRST
E em horário normal:
04/02/2008 19:23:32 America/Sao_Paulo BRT
Para instalação em um número elevado de servidores é recomendável utilizar o proprio empacotamento de sua distribuicaopara automatizar o processo. Para aqueles que utilizam distribuicoes baseadas em RPM, deixei o pacote source disponivel para download… php-timezonedb.el4.src.rpm
Iniciando os posts deste ano, vou demonstrar a facilidade de instalação de programas no FreeBSD (diferente da complicação que normalmente o pessoal imagina..) contando com a instalação do servidor web Lighttpd que cada vez mais vem se popularizando entre os administradores de sistema, principalmente por ser muito flexível, rápido e ter um consumo reduzido de memória nos servidores.
Em servidores de aplicação com base em FreeBSD ele é uma ótima alternativa e apresenta alta performance no processamento das requisições, principalmente na distribuição dos recursos da máquina entre os processos. Segue os procedimentos de instalação contando com a utilização dos ports disponíveis para o FreeBSD.
Primeiramente, atualize sua árvore de ports com:
# portsnap fetch
# portsnap update
Para iniciar a instalação, entre no diretório do port referente ao Lighttpd:
# cd /usr/ports/www/lighttpd
E execute o processo de compilação, instalação e limpeza para finalizar:
# make
# make install
# make clean
Após finalizado o processo de instalação, configure o /usr/local/etc/lighttpd.conf de acordo com seu ambiente e inicialize o serviço com:
# /usr/local/etc/rc.d/lighttpd start
Para aqueles que não estão habituados a utilizar FreeBSD, esta é a maneira mais simples de manter seu servidor funcional e atualizado, da mesma forma que utilizamos os gerenciadores de pacote no Linux, porém com a diferença de que desta forma a aplicação e compilada diretamente no servidor durante o processo de instalação.
Há algum tempo venho utilizando muito o RTorrent como meu client de torrent e estou muito satisfeito com o funcionamento! Para aqueles que ainda não conhecem, RTorrent é um client para Linux / Unix escrito em C que roda diretamente no terminal, sem necessidade de interface gráfica (X-Window), muito rápido, leve e repleto de recursos para a manipulação dos downloads.
Existem pacotes prontos para a maioria das distribuições, mas o processo de compilação é bem simples e conta com uma ótima documentação no site oficial… Basicamente toda a configuração é feita diretamente no arquivo .rtorrent.rc dentro do home de cada usuário, uma descrição geral dos parametros e um arquivo de exemplo podem ser encontrados aqui.
Adicionando e removendo torrents:
Controle de velocidade:
Lembrando sempre que os limites são aplicados de forma global, e não por torrent.
Utilização geral:
Consulte também o guia oficial de utilização