Category ArchiveBlog



Dicas 18 jan 2011 10:29 pm

Mantendo os softwares atualizados no OS X

Há muito tempo vinha cultivando a vontade de utilizar o OS XW como principal sistema operacional e recentemente tive a oportunidade de substituir meu antigo laptop por um novíssimo MacBook. Como usuário de GNU/LinuxW, me senti praticamente em casa pois além do OS X ser estruturado em cima de um kernelW BSDW (garantindo excelente estabilidade e segurança), conta com diversos aplicativos compatíveis com o padrão POSIXW, além de ser possível compilar e instalar aplicativos escritos para seus parentes mais próximos, usando projetos famosos como MacPortsW, FinkW, Gentoo Prefix ou diretemante via código fonte normalmente disponível no site de cada aplicativo.
Um recurso que senti falta no entanto e que fiquei totalmente dependente ao longo desses mais de 10 anos utilizando distribuições baseadas em GNU/Linux é de um gerenciador de pacotes que possibilite facilmente instalar aplicativos e principalmente, mantê-los atualizados.

O OS X dispõem de uma ferramenta de atualização própria para seu próprio core e aplicativos distribuídos pela Apple, e recentemente ganhou uma versão do App Store; mas ainda é pequeno o número de opções disponíveis, comparado com a vasta gama de aplicativos que podem ser encontrados na internet. Alguns aplicativos também checam pela existência de atualizações, mas infelizmente essa não é uma regra seguida por todos, e normalmente é necessário executar o aplicativo em questão para ficar sabendo das atualizações disponíveis. Para sanar essa deficiência, entra em cena o AppFresh, um aplicativo voltado para a atualização e re-instalação de software.

O AppFresh utiliza as informações de atualizações disponíveis no próprio Apple Software Update, Microsoft AutoUpdate, Adobe Updater, Sparkle, i use this e outros serviços, mas para que o programa funcione plenamente é necessário registrar uma conta no site i use this.
O i use this é um site destinado a registrar os aplicativos utilizados por seus usuários, que possibilita entre outras funções a descoberta de aplicativos utilizados por outros usuários da comunidade. No i use this a popularidade de um aplicativo é baseada na quantidade de usuários que informam utilizá-lo ao invés de se basear na atribuição de notas.

O uso do AppFresh é bem simples e uma vez em execução, procura automaticamente por atualizações disponíveis para os softwares instalados e se desejado, faz o download e as instala automaticamente. Se não for possível executar o instalador / atualizador o AppFresh disponibiliza-o na pasta de Downloads (ou outra pasta de livre escolha) para posterior execução manual pelo usuário.

Para fechar com chave de ouro, o AppFresh ajuda a indicar os programas “usados e não instalados”, recurso que pode ser de grande ajuda no caso de uma reinstalação do Sistema Operacional. Basta informar quais os aplicativos em uso, clicando em “eu uso isso” (i use this) na barra lateral direita ao selecionar um aplicativo da lista dos instalados. Com o AppFresh, a próxima reinstalação de Sistema Operacional será mais fácil do que nunca.

Artigos 14 fev 2010 06:13 pm

Controle de acessos no Git simples e seguro com Gitosis

Existem algumas formas de se fazer controle de acesso no GitW, a forma mais simples é criar o repositório com acesso a um grupo e adicionar os usuários com acesso a esse grupo. Se um grupo apenas não for suficiente para gerenciar os acessos ao repositório pode ser possível utilizar ACL’s.
O único problema desse esquema é que exige que cada usuário tenha acesso SSHW ao servidor e isso muita das vezes não é interessante para o administrador do servidor.

Outra forma de se fazer o controle de acesso é através de WebDAVW. A vantagem é que nesse caso o gerenciamento dos usuários é feito através de um arquigo que deve ser gerado e atualizado com o utilitário htpasswd (htpasswd2 em algumas distribuições como o Gentoo), porém para executar o WebDAV é preciso um servidor web como o Apache ServerW ou LighttpdW.
Se sua escolha for pelo WebDAV, o HowToW disponível na própria documentação do Git ou em http://www.kernel.org/pub/software/scm/git/docs/howto/setup-git-server-over-http.txt explica como fazer.

Uma forma mais simples e segura é utilizar o Gitosis. Sua principal vantagem é ser executado via ssh através de autenticação via chave pública, porém utilizando uma única conta compartilhada cujos comandos disponíveis são limitados.

Continue Reading »

Artigos 10 fev 2010 12:43 am

Monitoramento com Zabbix – Parte 2 – Monitorando Hosts e dispositivos

Continuando o tutorial de configuração do ZabbixW, o próximo passo é configurar o primeiro host à ser monitorado na rede, o que na maioria dos casos é o próprio servidor do Zabbix.

Agente de Monitoramento

A instalação do agente do Zabbix na maioria das distribuições é bem fácil e envolve poucos passos:

Continue Reading »

Dicas 16 jan 2010 12:58 pm

Erro ao compilar o kernel 2.6.31: implicit declaration of function ‘_cpu_down’

Ao tentar compilar a versão 2.6.31 do kernel linux (com suporte ao Xen) obtive a seguinte mensagem de erro:

kernel/cpu.c: In function 'disable_nonboot_cpus':
kernel/cpu.c:394: error: implicit declaration of function '_cpu_down'
make[1]: *** [kernel/cpu.o] Error 1
make: *** [kernel] Error 2

Uma rápida pesquisa no google me revelou que o problema se encontrava na falta do suporte a hot-pluggable cpu’s. Este recurso permite que CPU’s possam ser ligadas/desligadas durante a execução da máquina, possibilitando a economia de energia e a própria inclusão de novas CPU’s em sistemas multi-processados.
Esse recurso já vem habilitado por padrão caso você esteja configurando o kernel pela primeira vez, mas no meu caso, copiei o arquivo .config de outro kernel que não tinha esse suporte habilitado.

A solução é simples e envolve executar novamente o configurador do kernel para habilitar a opção pertinente ou editar diretamente o arquivo .config, sendo mais aconselhável executar o o configurador (make menuconfig).

A opção que precisa ser habilitada é CONFIG_HOTPLUG_CPU e pode ser encontrada em:

Processor type and features --->
[*] Support for hot-pluggable CPUs

Pronto, agora é só executar o make novamente e aguardar o fim da compilação.

Referências

Artigos 04 jan 2010 10:39 pm

Monitoramento com Zabbix – Instalação e Configuração

O ZabbixW é um poderoso sistema de monitoramento de hosts e dispositivos, que pode monitorar desde a própria máquina onde está instalado, a milhares de hosts e dispostivos localizados na rede local ou na mais remota localização geográfica.

Sua estrutura é simples e descentralizada e consiste de um aplicativo denominado servidor que coleta e armazena as informações dos hosts em um banco de dados que pode ser SQLiteW, MySQLW, PostgreSQLW ou OracleW; uma interface web para administração / monitoramento feita em PHP, e os agentes que podem ser desde hosts monitorados pelo aplicativo agente do Zabbix quanto os mais variados serviços e dispositivos, acessíveis das mais diversas formas como SNMPW, TCPW, ICMPW E IPMIW.

Nessa série de artigos comentarei a instalação, configuração e utilização do Zabbix nas distribuições GentooW e UbuntuW.

Continue Reading »

Dicas 16 dez 2009 08:57 am

Usando kernel vanilla como domU no Xen

O Xen é um dos paravirtualizadores mais famosos do mercado e seu uso está cada vez mais difundido a cada dia que se passa.

Configurar uma instalação básica do Xen nas principais distribuções não é muito difícil e no Gentoo não é diferente. Em geral o processo envolve instalar um kernel customizado no dom0 (a “máquina real”), e instalar os utilitários do Xen também no dom0. Se a CPU em questão tiver suporte a virtualização (flag  svm em arquitetura AMD, ou vmx em arquitetura Intel) é possível utilizar para os domU’s (as “máquinas virtuais”) qualquer versão de Kernel ou de Sistema Operacinal, não necessitando que o mesmo tenha sido previamente preparado (patch) para utilização sob o Xen.

Caso a CPU não tenha suporte a virtualização, é necessário utilizar um Sistema Operacinal ou Kernel devidamente adaptado, o que não costuma ser uma tarefa muito complicada visto que as principais distribuições já orefecem pacotes prontos. No Gentoo apenas é necessário compilar uma versão do mesmo kernel utilizado no dom0 porém com os devidos recursos que dão suporte a inicialização e execução do domU.

Até ai, tudo corre muito bem, sem muitos problemas, no entanto, quando é necessário utilizar uma versão específica de kernel para o domU é que o problema começa, principalmente se for necessário utillizar uma das versões mais recentes do kernel, visto que os patches de suporte ao Xen não costumam ser disponibilizados com a mesma frequência que novas versões do kernel.

Felizmente desde a versão 2.6.23 o kernel vanilla (padrão) do Linux conta com suporte nativo a virtualização, possibilitando que o mesmo seja iniciado como um domU sob o Xen. Para tanto é necessário habilitar no kernel as seguintes opções:

Continue Reading »

Dicas 13 dez 2009 08:18 pm

IIS + Plesk + PHP e o mistério por trás do erro “502 – Bad Gateway”

Um certo cliente me pediu que desenvolvesse um pequeno script em PHP que fosse capaz de ler um documento do MS-Excel e inserir seus registros numa base mysql.
Usei uma classe bem conhecida para ler arquivos XLS e testei em meu servidor, um Gentoo Linux rodando Apache com PHP 5.
Ao executar o primeiro teste no servidor do cliente, um Windows 2003 Server, o script morreu ao atingir o tempo limite de exeução do PHP.
Modifiquei o script inserindo logo em seu início uma chamada para remover o limite de timeout: set_time_limit(0).
Tentei executar novamente o script e obtive meu primeiro contato com o erro:

“502 Bad Gateway
Web server received an invalid response while acting as a gateway or proxy server.”
Procurando no google encontrei um fórum que mencionava justamente um problema com o trio IIS + Plesk + PHP e a sugestão era de habilitar a extensão ISAPI na configuração do servidor WEB.
Por sorte o cliente tinha os dados de adminstração do servidor então segui os seguintes passos:
1 – Logar na interface Web do Plesk
2 – Entrar na configuração de domínios e escolher o domínio desejado
3 – Entrar em Setup
4 – Habilitar a opção “
5 – Salvar a configuração
Feito isso testei o script e tudo funcionou normalmente sem mais erros misteriosos do IIS.

Dicas 10 out 2009 08:15 pm

E71 – Softwares Indispensáveis

O Nokia E71W (http://www.gsmarena.com/nokia_e71-2425.php) é mais que um celular , é um pequeno computador dotado de processador ARM11W de 369 MHz, com 128MB de memória RAM e teclado QWERTYW.
Com 110MB de memória interna e até 8GB em cartão microSDW (Transflash) numa unidade estrategicamente posicionada na sua lateral esquerda, o que possibilita a troca de cartão sem a necessidade de desligar o aparelho, armazenar documentos, música, vídeos e fotos não será um problema.

Se não bastasse todos esses recursos que deixam o meu primeiro PC (um Cyrix Cx5x86 de 120MHz com 8MB de RAM e HD de 1.2GB) no chinelo, o E71 conta ainda com recursos como Câmera de 3.2 Mega Pixels, receptor de Rádio AM/FM, GPSW, Push To TalkW (para as operadoras habilitadas), e se conecta com outros dispositivos e redes utilizando-se das principais tecnologias dentre elas WIFIW, BluetoothW, GPRSW / 3GW, IrDAW e USBW.

Em matéria de software o E71 não deixa a desejar. Voltado principalmente para os públicos corporativo e técnico, o aparelho sai de fábrica com uma grande variedade de aplicativos, dentre eles, Suíte Office, Cliente de VPNW (IPSecW), Cliente VOIPW, Navegador Web, Gerenciador de Arquivos, Sincronização via SyncMLW, entre outros. Além dos softwares pré-instalados, como todo bom smartphone é possivel encontrar internet à fora uma vasta gama de softwares, disponíveis para as plataformas S60W ou J2MEW.

Listo aqui alguns softwares que considero indispensáveis, separados por categoria.

Continue Reading »

Dicas 15 jan 2008 09:10 am

Código promocional Dreamhost ($50 de desconto)

Pensando em contratar serviço de web hosting? Então não perca tempo e procure a Dreamhost pois com certeza eles têm a melhor relação custo X benefício.

Tenho meu domínio hospedado com eles há cerca de 3 anos e não tenho do que reclamar. Muitos dos meus amigos também utilizam os serviços da Dreamhost.
É claro, não vou mentir que houve um período de cerca de 1 a 2 meses no último ano (se não me engano) em que as coisas lá ficaram problematicas, devido a grande quantidade de novos usuários, mas a política deles foi revista, os planos comerciais re-estruturados e o problema foi sanado.

Se a decisão for pela Dreamhost aproveite o código promocional FREE50BUCKS e garanta já $50 de desconto na assinatura.

Artigos 13 jan 2008 11:42 am

Memcached, optimizando aplicações PHP com cache em memória

Aplicações de grande porte tendem a passar por problemas de performance, por N motivos como o crescimento do número de usuários simultâneos, complexidade da lógica, cresicmento da base de dados, dentre outros.

Geralmente o primeiro passo a seguir quando uma aplicação está com a performance degradada é tentar detectar no código os problemas de performance e corrigi-los. Em caso de aplicações WEB um sistema de cache como o do PHP Smarty pode ajudar e quando isso não for o bastante pode ser possível partir para a clusterização dos servidores.

Quando o problema está na base dados, a solução comumente utilizada é clusterizar a base, geralmente adicionando servidores slave que se por um lado melhoram o tempo de resposta de consultas a base, por outro lado perdem no momento da escrita, pois cada nó do cluster deve ser atualizado.

Pensando nesses problemas, Brad Fitzpatrick desenvolveu um sistema de cache em memória distribuido. Fitzpatrick se deparou com o problema de rápido cresicmento da audiência do site LiveJournal.com. Ao chegar a casa dos 20 milhões de usuários por dia, clusters de servidores web e de banco de dados já não eram mais suficientes, e então o Memcached surgiu garantindo rápido acesso aos dados e melhor utilização de recursos.

Continue Reading »

Próxima Página »