27 abril 2007

Tutoriais...

Na empresa onde trabalho adquirimos uma nova unidade de fita para backup para substituir uma unidade DDS 3 que parou de funcionar. Antes disso, instalei o openSuse 10.2 no servidor de arquivos onde estava instalado o Windows 2000 Server Small Busines (que apesar do Small no nome nos dava grandes problemas) e onde foi instalado a unidade de fita. Com o Windows 2000 fazíamos backup com o programa de backup que vem junto com todos os windows, e era fito manualmente. Com a troca da unidade de fita, e principalmente com a troca do sistema operacional no servidor, eu quis implementar um sistema de backup melhor, com um programa de backup mais robusto e que facilitasse backups automáticos.

Sabia do Amanda, que inclusive vem junto com o openSuse (e acredito que venha com a maioria das distribuições), e fui procurar artigos na net para configurá-lo. Encontrei alguns artigos que de inicio pareciam bem completos. Segui um deles. Ai começaram os problemas. Seguindo o artigo, consegui configurar o Amanda, depois de algumas horas, para fazer o backup. Quando fui realizar a recuperação dos dados não consegui. As informações do artigo não funcionaram comigo. Procurei mais informações na net mas não tinha nada de diferente que se poderia fazer. Conclusão, desisti do Amanda.

Voltei a procurar na net e encontrei o Bacula. bacula é um software de backup tão ou mais robusto que o Amanda, porém é tão ou mais complexo de se configurar do que o Amanda. Outra vez peguei um artigo que não trazia as informações de forma clara para que outras pessoas pudessem entender. Lendo e relendo o artigo, buscando outros artigos, inclusive alguns em inglês eu consegui fazer o Bacula funcionar com um teste simples ,com backup e recuperação, para saber que ele funciona bem e que tem muito mais recursos do que os apresentados no artigo.

Depois de contar essa história (verídica) chego ao ponto de expor meus objetivos com este post (que vai causar alguma polêmica, eu sei).

Já faz algum tempo eu havia percebido que muitos dos artigos encontrados hoje na net não passam exatamente o que propõem. No caso dos artigos que encontrei sobre Amanda e Bacula, o que eles passam é a idéia de que esses dois softwares são extremamente complexos. E são mesmo, mas nem tanto. Mas o objetivo dos artigos não é facilitar a configuração/instalação de algum software? Acredito que o motivo pelo qual esses artigos não sejam tão esclarecedores são dois:

- Falta de didática por parte de quem escreve;
- A autor entendeu tão bem o funcionamento do software em questão que acredita que ele não é tão complexo de ser entendido.

Nos tutoriais que vi, basicamente tem uma apresentação do software, uma explicação de com o instalar, a indicação de quais são os arquivos utilizados e quais as finalidades de cada um e depois é posto um arquivo de configuração já totalmente configurado (e acredito que funcional) e com alguns comentários explicando para que serve uma opção ou outra da configuração, mas a maior parte da configuração não é explicada. O problema nesses casos é que essa configuração esta preparada para o ambiente específico do autor do artigo, que o leitor não conhece e não consegue esquematizar como é esse ambiente.

Bom, eu posso estar sendo injusto ao criticar artigos que as pessoas fazem com a maior boa vontade de compartilhar seus conhecimentos, mas artigos assim acabam atrapalhando a difusão e a adoção de softwares livres. Um administrador que esteja vindo de ambientes windows que tente utilizar um artigo parecido, certamente irá voltar para o ambiente windows achando que as coisas no linux são complicadas demais a ponto de não compensar a migração. Mas sabemos que o linux não é tão complicado assim, e que até softwares tão complexos como o Amanda e o Bacula podem ser facilmente configurados desde que se tenha uma explicação adequada de como o software funciona, e de como se configurar o software. Lembrando também que não é necessário uma explicação detalhada de todas as funções do software, mas somente as relevantes para o entendimento básico do software.

Na minha opinião, um artigo, que aborde a configuração de algum software, deveria seguir o seguinte esquema:

- Começar com uma explicação básica de qual o objetivo do artigo, como introdução ou chamada do artigo;
Ex.: Instalação e configuração do servidor de backup Bacula...

- Apresentação e explicação das principais funções do software, até aquelas que não serão abordadas no artigo;
Ex.: Bacula é um servidor de backup robusto que permite agendamento de backups, tipos diferentes de backups, backup de clientes remotos (inclusive windows)...

- Descrição detalhada de qual o objetivo do artigo;
Ex.: Nesse artigo iremos aprender como instalar e configurar o Bacula para a realização de backups agendados tanto completos como incremental e diferencial, também será demonstrado como fazer a recuperação de arquivos...

- Apresentação detalhada do ambiente no qual o artigo foi baseado para ser escrito;
Ex.: Iremos configurar o Bacula para fazer o backup dos arquivos do servidor onde o Bacula esta instalado e de mais um cliente remoto. Serão agendados backups diários, sendo um completo aos sábados e os demias backups diferenciais...

- Explicação de como o software funciona (entender os conceitos é muito importante);
Ex.: O Bacula é dividido da seguinte forma: Director, Storage, File, Catalog, Console e Monitor. O Director é o componente responsável pelo controle dos backups...
Ex. 2: Os arquivos de configuração principais são: /etc/bacula/bacula-dir.conf, /etc/bacula/bacula-sd.conf, /etc/bacula/bacula-fd.conf e /etc/bacula/bconsole.conf...

- Os arquivos de configuração devem ser totalmente explicados. Cada arquivo de configuração, seção do arquivo de configuração (caso seja dividido em seções), cada opção dentro do arquivo de configuração deve receber informação suficiente para ser compreendido;

- Os comandos digitados no prompt também devem ser explicados um a um, não se esquecendo de nenhum passo que seja relevante, até mesmo as mudanças de diretórios devem ser comentadas.

Basicamente, um artigo nessa estrutura seria muito interessante. Mas há problemas, principalmente com tempo para se passar tanta informação, e se for ver que ninguém recebe nada para escrever um artigo, fica muito improvável de acreditar que alguém gastaria tanto tempo para escrever algo tão trabalhoso. Apesar disso continuo acreditando que deveria haver uma preocupação maior com os artigos, isso poderia trazer mais profissionais ao mundo do software livre.

E por falar em profissionais, devemos aprender a sermos mais profissionais e menos amadores em relação ao software livre. Devemos pensar mais em qualidade em tudo, até mesmo nos comentários que deixamos em fórum. Aqui eu tento deixar os posts com alguma qualidade, sei que deixo a desejar, mas tento melhorar sempre que possível.

Fico aberto a receber comentários, criticas, xingamentos (sei q vou receber) e qualquer outra manifestação a respeito deste post, mas isso tudo que escrevi é o que eu acredito ser o melhor para a comunidade do software livre.

25 abril 2007

Slackware + AIGLX + Beryl - Parte 3

Screenshot tirado do meu desktop para demonstrar o Beryl em ação

E o problema era o driver da placa de vídeo que tive um problema durante a instalação e eu não percebi. A solução foi acertar o problema que causou o erro na instalação anterior e reinstalar o driver. Agora estou com todas as funções do Beryl funcionando corretamente, ou pelo menos ainda não apresentou nenhum problema.

Faltou passar a configuração do X. Para fazer essa configuração, acrescente as seguintes linhas no arquivo /etc/X11/xorg.conf

Seção ServerLayout
Option "AIGLX" "on"

Seção Module
Load "dbe"

Seção Device
Option "XAANoOffscreenPixmaps" "true"
Option "AllowGLXWithComposite" "true"

Seção Screen
Option "AddARGBGLXVisuals" "true"

E por fim crie a seção:
Section "Extensions"
Option "Composite" "Enable"
EndSection

Agora é só iniciar (ou reiniciar) o servidor X e digitar o comando:
dbus-launch beryl-manager

O beryl deve funcionar perfeitamente.

Para inicializar o beeryl automaticamente com o KDE, crie um arquivo (por exemplo beryl.sh) em ~/.kde/Autostart/ com a linha dbus-launch beryl-manager e torne--o executável. Pronto, agora é só se divertir.

Com base nos posts que escrevi sobre isso eu pretendo fazer um tutorial mais organizado, descrvendo passo-a-passo como efetuar a instalação. Mas isso somente se conseguir um tempo para isso, tenho muita coisa que pretendo fazer e o tempo para fazer esta escasso.

Caso alguém queira seguir esses posts para instalar o beryl e encontrar algum problema pode deixar um comentário aqui, se eu poder ajudar concertesa ajudarei.

Slackware + AIGLX + Beryl - Parte 2

Continuando minha instalação do beryl, instalei o pyrex 0.9.5.1a (que não me lembro de onde baixei, então fico devendo essa). Após isso consegui instalar o beryl-settings-bindings e o beryl-settings. O próximo passo é instalar o emerald (outro pacote do projeto bryl), mas antes é necessário ter uma versão mais nova do freetype2, no caso eu atualizei para a versão a mais recente 2.3.4. Após atualizar o freetype (caso não esteja atualizado) é só instalar o emerald e o emerald-themes.

Agora só faltou instalar o heliodor e o beryl-plugins-unsupported, mas acredito que não são necessários para o funcionamento correto do beryl.

Tentei rodar o beryl com o comando dbus-launch beryl-manager e "quase" deu certo. Eu digo quase por que depois do comando a tela ficou toda branca, sem aparecer nenhuma janela, mas alguns efeitos funcionaram, como o Desktop Cube e o Enhanced Switcher por exemplo. Acredito que seja a configuração do Xorg ou do driver da nvidia que esteja alguma coisa errada. Vou conferir essas duas possibilidades e posto aqui.

24 abril 2007

Slackware + AIGLX + Beryl

Nos ultimos dias venho tentado instalar a dupla AIGLX + Beryl no meu Slackware 11. Esta uma luta feia. Vou explicar o por quê.

Depois que me decidi por instalar definitivamente o Slackware 11, incluindo o KDE, fiquei tentado a instalar o famoso Desktop 3D no Linux, influenciado em grande parte pelas notícias de que o Compiz e o Beryl estão juntando as trouxas, ou melhor, os projetos.

Comecei atualizando o Xorg para a versão 7.1, com os pacotes deste projeto. Isso foi fácil, e o AIGLX já é instalado junto com o Xorg. A dificuldade começou por eu não encontrar um tutorial que me disse exatamente quais são as depêndencias do beryl. Os tutoriais que encontrei divergiam muito sobre quais pacotes deveriam ser instalados, e no site do beryl a documentação era menos explicativa ainda. O geito foi apelar e instalar tudo direto dos fontes, compilando cada um e instalando as dependências que são pedidas. Até agora instalei o dbus, o libXcomposite-0.3.1, o cairo-1.4.4 (no slack 11 vem instalado a versão 1.0.4, se não me engano, então é necessário a instalação da versão mais nova), o pygtk-2.10, o pygobject-2.12.3 e o pycairo-1.4. Dos pacotes do beryl instalei o beryl-core-0.2.1, beryl-manager-0.2.1 e o beryl-plugins-0.2.1. O pygtk é dependência do beryl-settings, que estão tentando compilar no momento em que escrevo esse post, o pygobject e o pycairo são dependências do pygtk.

Como minha conexão é discada (sim, ainda continuo nessa), vai demorar um pouco pra baixar o pygtk, então terminarei esse assunto outro dia (espero que não demore tanto quanto o tempo que levei entre o ultimo post e esse ;-) com a conclusão da instalação do beryl.

Atualização:
Para não criar um novo post bem pequeno, vou aproveitar esse post mesmo.
Antes de instalar o beryl-settings é necessário instalar o beryl-settings-bindings-0.2.1, que pede como dependência o pacote pyrex, que não deu tempo de instalar, então fica para amanhã.

02 abril 2007

Ainda procurando uma distribuição...

Utilizando o Slackware com a instalação somente dos pacotes do primeiro CD cheguei a conclusão de que o Slackware necessita de um pouco mais de tempo do que eu tenho disponível no momento. Por esse motivo baixei e instalei o XUbuntu (que utilizo nesse momento para escrever este post). Mas também não gostei dele.

A interface dele é muito boa, bem acabada, monta automaticamente dispositivos USB, tem uma boa selação de programas... e algumas coisas mais. Mas foi justamente nos programas instalados que me decepsionei com ele.

Bom, quando instalei o XUbuntu a minha idéia era ter uma distribuição em que fosse mais fácil instalar programas adicionais, para personalizar mais meu ambiente. Nisso o XUbunto me atendeu perfeitamente. O problema foi ao tentar desinstalar um programa que veio com a distribuição. Por exemplo, quando tento desistalar um programa para o ambinte gráfico, como o Gaim, usando o Synaptic (que é um gerenciador de pacotes gráfico, ou melhor, uma interface gráfica para o gerenciador de pacotes que é o dpkg), depois de selecionar o pacote aparece a incômoda mensagem de que o pacote xubuntu-desktop deve ser selecionado para a desinstalação por causa de dependências. Agora 2 coisas mais estranhas: 1 - não é possível ignorar a dependência; 2 - esse mesmo pacote, xubuntu-desktop, necessita ser removido quando se tenta desinstalar a maioria dos pacotes da distribuição, pelo menos no teste que fiz foi assim.

Não arrisquei a remoção desse pacote pois não queria ter que recuperar o sistema caso saisse alguma coisa errada. Alguém já utilisou esse sistema? Sabe o por que de acontecer isso?

Por esse motivo estou voltando para o Slackware, que, apesar de exigir um pouco de tempo a mais para te-lo do geito que você quer, lhe dá mais controle sobre o que você faz no sistema. Acredito que a maioria dos usuários do Slackware o usam por esse motivo.

Mas desta vez irei instalar o KDE em vez do XFCE4 e demais programas do CD 2. Espero assim não precisar correr atraz de tantos programas na net para deixar meu sistema redondo. Assim que tiver uma opinião sobre essa nova tentativa irei postar aqui.

Opçoes de telefonia 3 (ou melhor, Opções de Internet)

Até agora abordei sobre as opções de telfonia que tenho disponívl aqui em casa. A idéia dest post seria falar um pouco das opções que tenho para acesso a internet, mas farei melhor. Falarei sobre as opções de tecnologia de acesso a internet disponíveis hoje no Brasil, esse é só o post de introdução. Pretendo colocar aqui uma análise dessas tecnologias apresentado suas vantagens e desvantagens.

Mas irei abordar cada tecnologia em um post diferente e com títulos distintos. O primeiro post pode demorar um pouco para sair, mas concerteza irei fazer. É só aguardar um pouco ;-)