Caso de Estudo do OpenOffice no HAL

No hospital usamos o OpenOffice desde a primeira versão com que foi lançado. Na altura em RedHat 9, já tinhamos o OpenOffice em inglês. Posteriormente, e com o uso do LTSP no nosso hopsital, e felizmente já havia a tradução, colocámos também à disposição dos nossos utilizadores de Linux e, para que pudessem trocar de documentos os utilizadores de Linux com os de Windows, instalámos também nos clientes windows. Na altura, efectuamos um caso de estudo e que enviámos para a página portuguesa do OpenOffice.Foi publicado. Neste momento, não consigo encontrar a página para colocar aqui, o que me entristece imenso, pois devo confessar que a página do OpenOffice Portugal está realmente muito pobre. Segundo a própria página, este projecto passou para a Caixa Mágica:

"Após 5 anos de liderança do OOoPT, o projecto mudou de líder, passando para a Caixa Mágica. Este site será brevemente inutilizado e dever-se-à usar o site global OpenOffice.org"

Pode ser que fique melhor.

Entretanto e após a saída da versão 2, fizemos a actualização do OpenOffice e re-escrevemos o nosso caso de estudo, reflectindo as alterações e as conclusões a que chegámos com esta nova versão.

Podem ler aqui mesmo o nosso caso do HAL. Assim que pudermos, iremos colocar na página do OOo PT, mas até lá, deixo-vos com o estudo aqui.

Bom Open Source.

Instalação de Windows através de Linux

Como administrador de sistemas, um dos maiores pesadelos é a instalação de máquinas clientes. Pela minha experiência e a falar com colegas, todo se queixam do mesmo. As soluções apresentadas são geralmente sempre as mesmas. Se as máquinas forem iguais, faz-se uma imagem, com o Norton Ghost ou com o Acronis e replica-se nas restantes maquinas. Até aqui, e para os mais distraídos, podia não haver nenhum inconveniente, mas isto é facil quando temos 10, 15 ou 20 computadores para instalar. Coloca-se o CD, arranca-se com o CD e fica-se ali durante algum tempo, a preencher opções e a escolher opções. Posteriormente, e dependendo do modo como foi efectuada a imagem, tem que se trocar o nome do computador, juntar ao dominio, toda uma série de passos para que a maquina fique pronta a trabalhar. Imaginem este processo todo com 80 maquinas para instalar num só dia? IMPOSSÍVEL.

Aqui no HAL já temos uma solução mais engenhosa. Cada vez que é necessáro instalar uma máquina cliente, basta ligar o computador (e nunca mais mexer no teclado), arrancar por rede, com o protocolo PXE, e em cinco minutos temos um computador cliente pronto. Não importa qual a máquina que seja, desde que já tenhamos a imagem pronta, esta é instalada e automáticamente definida a resolução do monitor, adicionada ao dominio do HAL e com o nome correcto.

Como o processo que temos neste momento já é antigo, não suporta as novas placas de rede PCIe nem tem suporte para os discos SATA. Desta forma, foi necessário actualizar o processo (fazer tudo de novo). Vou aqui colocar um pequeno howto de como instalar uma máquina e configurar todo o processo necessário para que no final seja possível realizar a instalação do Windows.

Requisitos:

  • Ter as imagens do Windows em pré-instalação (um pequeno utilitário da microsoft, sysprep, permite fazer isto).
  • Ter conhecimentos sobre Gentoo Linux. Esta configuração é especifica para este Linux, embora as configurações efectuadas em alguns serviços de rede sejam genéricas.

Considerações:

  • Foi usada uma máquina Gentoo Linux 2007.0 com uma instalação minima.

 

Instalação

(colocar informações sobre o sysprep)

Nota: Esta parte da instalação dos clientes para PXE foi retirada da excelente documentação do Gentoo com algumas alterações, uma vez que o próprio documento tem várias alternativas para o mesmo processo.

Configuração do Servidor

Para configurar o servidor basta seguir a excelente documentação do Gentoo. Após seguir todos os passos temos uma maquina pronta para começar a configurar.

Criar a directoria onde vão ficar os clientes

A primeira coisa é criar as directorias onde vão ficar os clientes:

Criar a directoria de boot

DHCP e TFTP

Os clientes vão obter informações sobre a rede através do DHCP e fazer o download dos ficheiros necessários através do TFTP. Para instalar, vamos adicionar ao /etc/make.conf a seguinte USE flag: netboot.

  • emerge tftp-hpa dhcp grub -av

Isto vai permitir que os pacotes sejam instalados com suporte para arranque via rede.

LTSP 4.2 em OpenSuSE 10.2/10.3

O LTSP (Linux Terminal Project) permite adicionar suporte de terminais a servidores Linux. O LTSP é uma solução fléxivel e de baixo custo que permite instalar computadores pessoais. Permite transformar computadores antigos, que já não conseguem correr um S.O recente em condições, em computadores recentes, onde os utilizadores podem navegar na Internet, ver o email, criar documentos e correr outras aplicações.

Esta foi uma solução que implementei no meu local de trabalho e que agora partilho aqui. Existem inumeros tutoriais pela internet acerca disto, mas aqui irei falar sobre a minha experiência na instalação e configuração.

Neste tutorial vamos configurar o LTSP e posteriormente configurar o ambiente de trabalho diferenciando utilizadores. Um Administrador (ou um funcionário da informática) vai ter aplicações diferentes de um utilizador normal.

 

Nota: Este tutorial está longe de estar terminado. Á medida que for configurando e instalando o servidor, irei adicionar aqui. De qualquer forma, o que já está aqui colocado é suficiente para configurar um LTSP e ficar a correr nos terminais.

Caracteristicas do servidor

  • 3GB memoria
  • 2x Intel PIII 1133MHz
  • 2x 36Gb HDD
  • 2x 10/100 Mbit Intel Ethernet Pro
  • VGA ATI Rage XL

Sistema Instalado

  • OpenSuSE 10.2 (completamente actualizado)
  • LTSP 4.2
  • KDE 3.5.5 (desktop para os clientes, com alterações posteriores)

 

(more…)

Configurar o bonding em OpenSuse 10.2

O driver de bonding é um método em Linux de agregar várias interfaces físicas de rede numa única interface lógica. O melhor que este método tem é que as interfaces de rede não têm que ser do mesmo fabricante, pois alguns fabricantes fornecem drivers para Linux para realizar esta tarefa.

O comportamento da interface lógica depende do método configurado. É aconselhado configurar este driver como módulo, pois neste momento é a única forma de passar argumentos ao módulo e configurar diversas interfaces.

Para configurar o bonding é necessário que esteja instalado o utilitário ifenslave, pois é através deste que são agregadas as placas de rede. Este utilitário é fornecido juntamento com as sources do kernel, e encontra-se em Documentation/networking/ifenslave.c.

Em OpenSuSE 10.2, este utilitário já se encontra instalado e não é necessário executar os passos descritos em baixo. É necessário também que o kernel tenha sido compilado com suporte de bonding.

Para instalar:

    # gcc -Wall -O -I/usr/src/linux/include ifenslave.c -o ifenslave
    # cp ifenslave /sbin/ifenslave

Se as sources do kernel não estiverem instaladas em /usr/src/linux então, substituir o caminho.

Agora que temos o programa instalado, vamos configurar o OpenSuSE 10.2

Ambiente testado:

  • OpenSuSE 10.2
  • Kernel 2.6.18.8-0.5-bigsmp

Em primeiro lugar, vamos ter a certeza que o modulo é carregado sempre que reiniciar-mos o nosso sistema operativo. Para isso, editamos o ficheiro /etc/modprob.conf.local que é o local mais indicado para colocar-mos os nossos modulos.

Um pouco de explicação do bonding

O bonding, acima de tudo, vais-nos permitir configurar o computador com uma politica chamada 802.3ad. Também conhecido como Link Aggregation, permite agrupar diversas portas ethernet em paralelo, permitindo assim aumentar a velocidade para além dos limites dados por apenas uma porta ethernet, aumentando também a disponibilidade criada pela redundância.

Existem diversos modos de operação, sendo eles:

  • 0 – Balanceamento (round robin): Politica por defeito – envia os pacotes sequencialmente, desde o primeiro "escravo" até ao ultimo.
  • 1 – Backup activo: Apenas um "escravo" está activo. Um escravo diferente entra em actividade apenas se o "escravo" activo falhar. Fornece tolerância a falhas.
  • 2 – Politica XOR: Transmite baseado na politica de hash selecionada. Este modo fornece tolerância a falhas e balanceamento.
  • 3 – Broadcast: Transmite tudo em todos os "escravos". Este modo fornece tolerância a falhas.
  • 4 – 802.3ad – IEEE 802.3ad Dynamic Link Aggregation: Cria grupos agregados que partilham a mesma velocidade e modo. Utiliza todos os "escravos" segundo a especificação 802.3ad

Editar o ficheiro /etc/modprob.conf.local e adicionar as seguintes linhas:

  • alias bond0 bonding
  • options bond0 mode=4 miimon=100

Neste caso, optou-se pelo modo 4 (802.3ad), mas que, para que funcione, é necessário ter as interfaces ligadas a um switch que suporte este protocolo, porque senão não irá funcionar.

Após editar o ficheiro, vamos criar um ficheiro de configuração para a interface bond0. Entrar na directoria /etc/sysconfig/network. Copiar um ficheiro de uma interface já configurada e editar o ficheiro para realizar as alterações:

  • cp ifcfg-eth-XXXX ifcfg-bond0

Editamos o ficheiro recentemente criado e alteramos as opções:

vi ifcfg-bond0

opções de rede (alterar consoante as necessidades):

    BOOTPROTO=’static’
    BROADCAST=’192.168.100.255′
    IPADDR=’192.168.100.2′
    NETMASK=’255.255.255.0′
    NETWORK=’192.168.100.0′
    STARTMODE=’onboot’

opções do bonding

    BONDING_MASTER=’yes’
    BONDING_MODULE_OPTS=’mode=4 miimon=100′

listagem das interfaces "escravas"
    BONDING_SLAVE0=’eth0′
    BONDING_SLAVE1=’eth1′

Guardamos as alterações. Para o seguinte passo temos duas opções. Ou removemos os ficheiros de configuração das interfaces ou renomeamos para outro nome para que não sejam interpretados no proximo reboot.

  • rm -f ifcfg-eth-bus-XXXX:XX:XX.X (remover para todas as interfaces)

Agora, basta testar a nossa configuração:

  • ifdown ethX (fazer para todas as interfaces existentes e configuradas)
  • ifup bond0

A partir deste momento, temos a nossa interface bond0 configurada e em funcionamento. Resta neste momento adicionar a rota para a nossa gateway. Para testes, podemos executar na consola, mas é aconselhado através do YAST adicionar a rota permanentemente.

  • route add default gw 192.168.100.254 netmask 255.255.255.0

Verificar o nosso ficheiro /etc/resolv.conf e verificar se os servidores de nomes e o nome da rede estão bem configurados. Após garantirmos, testamos com um ping.

/sbin/ifconfig

bond0     Link encap:Ethernet  HWaddr 00:30:05:1B:05:3A
          inet addr:192.168.100.2  Bcast:192.168.100.255  Mask:255.255.255.0
          inet6 addr: fe80::230:5ff:fe1b:53a/64 Scope:Link
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:3538 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2544 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2115556 (2.0 Mb)  TX bytes:290026 (283.2 Kb)

eth0      Link encap:Ethernet  HWaddr 00:30:05:1B:05:3A
          inet6 addr: fe80::230:5ff:fe1b:53a/64 Scope:Link
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:1237 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2059 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:130279 (127.2 Kb)  TX bytes:236566 (231.0 Kb)

eth1      Link encap:Ethernet  HWaddr 00:30:05:1B:05:3A
          inet6 addr: fe80::230:5ff:fe1b:53a/64 Scope:Link
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:2301 errors:0 dropped:0 overruns:0 frame:0
          TX packets:485 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1985277 (1.8 Mb)  TX bytes:53460 (52.2 Kb)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:111 errors:0 dropped:0 overruns:0 frame:0
          TX packets:111 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:9896 (9.6 Kb)  TX bytes:9896 (9.6 Kb)

O output em cima mostra as interfaces configuradas. reparem que apenas a interface bond0 contém um IP definido (reparem nos MAC Address).

Possíveis problemas

Após um reboot à máquina, é possivel que surjam alguns problemas. Aqui ficam algumas soluções que podem tentar caso isso se verifique.

Ocasionalmente foi experimentado que algumas placas de rede não arrancam depois de um reboot. Para prevenir, os modulos dessas placas devem ser colocados em memoria mais cedo. Para tal, editar o ficheiro /etc/sysconfig/kernel, procurar a linha MODULES_LOADED_ON_BOOT="" e adicionar os modulos das nossas placas de rede. Realizar novo reboot.

Caso não resolva a alteração descrita em cima, retirar as alterações e editar a seguinte linha (no mesmo ficheiro): INITRD_MODULES="(lista de modulos)"  e acrescentar os modulos das placas. Executar o comando mkinitrd e realizar novo reboot.

Outro processo que também pode ajudar é alterar o seguinte ficheiro: /etc/sysconfig/network/config, procurar a linha WAIT_FOR_INTERFACES="XX" onde XX será o tempo em segundos.

Após isto tudo, se mesmo assim não resolver, vejam o ficheiro /var/log/messages, identificar algum erro que possa surgir e google for it.

Desenhado para Windows

Quando compramos um computador, inevitavelmente apanhamos com MS windows e com um autocolante que diz "desenhado para o windows". Para quem não sabe, os computadores não são só desenhados para o windows e sim também para outros Sistemas Operativos. Agora, já podem remover esse autocolante e colar outros mais interessantes e "porreiros". Existe um livro que inclui autocolantes relacionados com projectos OpenSource que podemos usar para colocar no computador.

O livro é um PDF que podem conseguir de várias formas:

Aqui seguem as intruções:

Remover o autocolante proprietário do computador Imprimir uma página do livro em papel fotográfico autocolante. Com umas tesouras, recortar o autocolante. Colocar o autocolante no computador.

Com estas simples instruções, transformamos o nosso computador ainda mais nosso.

15 anos de Linux

"I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386 (486) AT clones."

Linus Torvalds

Esta foi a frase com que Linus Torvalds anunciou o nascimento iminente do Linux à 15 anos atrás. Desde o seu nascimento até aos dias de hoje, o Linux cresceu de uma forma que nem o próprio criador poderia ter imaginado. Desde supercomputadores, telemóveis e na maioria do hardware existente, GNU/Linux encontra-se neste momento em várias formas e "sabores", e continua a crescer. Fornece a plataforma perfeita para o movimento open source e ofereceu computação grátis, rápida e segura a utilizadores em todo o mundo.

1991-1992: Os primeiros anos
Em 25 de agosto de 1991, Linus Torvalds colocou um post da Usenet em comp.os.minix. Esta é a data considerada como o nascimento do Linux. A primeira versão do Linux, 0.01, veio umas semanas depois. Em Dezembro, saíu a versão 0.10.

As primeiras versões do Linux requeriam que estivesse presente um sistema operativo no computador para que fosse possível fazer boot com o Linux. Esta fase foi ultrapassada com o aparecimento do Lilo (LInux LOader). Remover a necessidade de haver outro sistema operativo foi um passo em frente para fazer do Linux um sistema separado. No inicio, o Linux não tinha nenhum programa, o que fazia dele apenas um exercicio interessante de Geeks informáticos.
Enquanto estes eventos aconteciam, a Free Software Foundation desenvolvia o seu próprio sistema operativo, o GNU (Gnu’s Not Unix) desde 1984. Este era um S.O completo, excepto para um componente muito importante, o Kernel. A solução era óbvia, excepto que nesta altura, o microkernel do Linux não era GPL. No inicio de 1992, o Linux foi distribuído sobre a licensa GPL e começaram os trabalhos para a junção  do Linux com o GNU. Esta é a razão porque muita gente, correctamente, insiste em que o Linux deveria chamar-se GNU/Linux. O GNU e o Linux eram, e continuam a ser, projectos separados, mas ambos continuam a trabalhar em conjunto. Programas como o GCC e outras ferramentas GNU são muito importantes, pois o GCC é usado para compilar, e assim criar quase todos os programas no computador.

Algumas datas chave:

  • Janeiro 1991: O estudante de 21 anos, Linus Torvalds, um estudante de eng. informática na universidade de Helsinki, compra um 386 a 33Mhz para jogar Prince of Persia e começa a desemvolver um sistema operativo semelhante ao Unix para o seu PC, usando livros escritos por Andy Tanenbaum e Maurice J. Bach.
  • Junho 1991: Richard Stallman publica a segunda edição da GNU General Public License (GNU/GPL), o que permite aos utilizadores utilizarem código de outros utilizadores desde que mantenham a mesma licensa quando libertarem o código do programa.
  • Agosto 1991: Torvalds diz ao mundo, atraves da Usenet comp.os.minix que está a desenvolver um S.O, mas que não vai ser grande e profissional como o GNU. O nome de código é Freax.
  • Setembro 1991: A primeira versão (0.01) é agora chamada de Linux e é libertada com suporte para teclados da marca Finnish.
  • Dezembro 1991: A versão 0.11 do Linux adiciona suporte para drives de disquetes. O Linux agora é um sistema independente e não depende do Minix.
  • Dezembro 1991: Andrew Tridgell, um estudante australiano começa a trabalhar num projecto para aceder às partilhas Microsoft, usando o protocolo SMB (Server Message Block).
  • Fevereiro de 1992: O projecto GNU adopta uma licença Linux GPL. Stallman começa uma jornada, tentando que toda a gente diga "Gnuslashlinux (GNU/Linux)" em vez de apenas Linux.
  • Março de 1992: Orest Zborowski escolhe Linux como base para a sua plataforma com arquitectura X386 – renomeado mais tarde para XFree86. Em Abril, o Linux 0.96 corre X Windows.

1993-1996: Os primeiros utilizadores

Nos dias de hoje, as pessoas usam Linux (ou talvez GNU/Linux) para se referirem à completa colecção de programas e sistema operativo. Não foi sempre assim. Inicialmente, o Linux estava apenas disponível como o kernel: instalava-se o kernel e usava-se qualquer outro software para construir um sistema funcional. A solução (tal como é conhecida hoje) era juntar tudo num pacote para instalação e distribuia-se.
Existe alguma controvérsia sobre qual a primeira distribuição de Linux. O Slackware, de Patrick Volkerding, é aceite como sendo a distriuição mais antiga das existentes, mas muitos dizem que a Yggdrasil foi a primeira. Em fevereiro de 1993 foi lançada em CD, tendo funcionalidades avançadas como plug-and-play, detecção de hardware e uma variante em Live CD.
No meio do ano de 1993, o desenvolvimento de distribuições de Linux era um campo em crescimento, e as tecnologias de empacotamento em CD-ROM, suporte de hardware e gráficos foram levadas ao limite pela comunidade de estudantes e programadores que seguiam o desenrolar do Linux, comunicando-se pela Usenet.
Em agosto de 1993, Ian Murdock anunciou a "conclusão iminente" de uma nova distribuição chamada Debian Linux Release. A distribuição chegou a uma versão estável no inicio de 1994, com a versão 0.91, a primeira a conter um sistema de gestão de pacotes. O Debian foi, e continua a ser um projecto desenvolvido pela comunidade.
Um outro projecto lançado também em 1993, que rumou noutra direcção que o Debian, foi o Red Hat. A Red Hat, fundada por Marc Ewing, tinha como objectivo produzir um Linux melhor. No ano seguinte, lançou a primeira distribuição: Red Hat 0.9 beta. Para espanto da comunidade, o Red Hat tinha um custo. O Red Hat 0.9 foi provávelmente a primeira distribuição a ter um instalador gráfico e ferramentas gráficas de configuração. Considerada a mais importante destas ferramentas, era a possibilidade de configuração da rede num configurador gráfico (e ainda é).
Em 1996, é visto o aparecimento do S.u.S.E Linux 4.2. A SUSE começou em 1992 como uma consultora em Unix. Embora não seja derivado do Red Hat, o SuSE adquiriu algumas das funcionalidades do Red Hat, como o RPM e alguma da sua estrutura de ficheiros.

Algumas datas chave:

  • Agosto 1993: Ian Murdock lança o projecto Debian.
  • Janeiro – Março de 1994: Debian 0.91 e Slackware 1.1.2 são lançados. Red Hat é lançado por Marc Ewing com a versão 1.0
  • Março 1994: Linus Torvalds anuncia o lançamento do Linux 1.0, tendo o código fonte o tamanho de 1MB. O primeiro patch para o S.O aparece alguns dias depois.
  • Abril – Outubro 1994: A SUSE lança a sua primeira versão beta – S.u.S.E Linux 4.2. Linus Torvalds gradua-se pela Universidade de Helsinki. Caldera Systems é fundada em Lindon, Utah, por Ransom Love e Bryan Sparks, para produzir o Caldera OpenLinux.
  • Abril 1995: A primeira versão do Apache Web Server (0.9.2) é lançada ao publico.
  • Novembro 1995: A primeira versão do Linux para a arquitectura Alpha. Foi gerida por Linus numa máquina Alpha cedida por Jon ‘Maddog’ Hall.
  • Janeiro 1996: Linus coloca o Linux a funcionar na arquitectura MIPS. Corre num R4x00.
  • Maio 1996: Durante uma discussão para as possibilidades de uma mascote para o S.O, Torvalds sugere um pinguim, que pode ser alterado mais rápidamente que um icon inanimado como o Windows. Larry Ewing sugere um desenho.
  • Junho 1996: Linux 2.0 é lançado. O código fonte ocupa 5MB e o ficheiro logo.gif contém uma imagem do Tux, o Pinguim.


1997-2001: A explosão

"De repente, Linux estava em todo o lado… e havia a internet"
O periodo de 1997 a 2001 viu os dias loucos das empresas da internet (dotcom), onde qualquer pessoa com uma ideia meio louca para fazer dinheiro online poderia receber um capital ridiculo, ou assim parecia. Esta foi a altura onde o Linux começou realmente a crescer. O Hacker de Kernel Alan Cox lembra: "Linus começou a bola de neve em 1996. Em 1995 era um projecto tecnologico secreto interessante, em 2000 era um grande negócio. A explosão das dotcom não durou muito, mas ajudou na utilização da internet e ajudou o Linux a crescer.
A relação entre o Linux e a internet é simbiótica. O aumento de ligações internet, tanto para casa como para empresas, significou que os ISPs e companhias de alojamento precisavam de mais servidores: Linux em hardware barato (i386) era a solução ideal. O dinheiro extra serviu para financiar mais projectos open source. Ao mesmo tempo, o aumento de pessoas online significava mais pessoas interessadas em Linux. Com o aumento do interesse, havia mais pessoas a contribuir para o movimento, ora desenvolvendo, ora preenchendo relatórios de erros, o que ajudava no teste do software. A forma como qualquer pessoa se pode envolver num projecto é a força do Linux e do Open Source em geral.
Alguns nomes bem conhecidos presentemente destacaram-se na altura. O Mandrake apareceu, iniciado em 1998 como uma versão alterada do Red Hat. A SuSE, que lançou o seu Linux empresarial na versão 4.2 em 1996, começou a ser visto por muitos como a Red Hat Europeia. Esta não era uma altura só de Linux para servidores: Versões para o Desktop estavam a tornar-se viáveis. Embora o X Windows tenha estado disponivel desde 1992 e disponivel em muitas distribuições, foi no lançamento de versões para o desktop que o colocaram numa posição vantajosa, permitindo a troca do Windows.
À semelhança do que aconteceu muitas vezes na história do Linux, o KDE começou como um post na Usenet. Num artigo de Outubro de 1996, em comp.os.linux, titulado "New Project: Kool Desktop Environment (KDE)", um alemão chamado Matthias Ettrich colocou algumas reservas sobre os ambientes gráficos existentes. Ettrich escolheu usar Qt toolkit para construir o KDE. Isto tinha imensas vantagens para os programadores, mas trazia um grave problema – não era Open Source.
Assim, levou-se a uma divisão: havia quem se quisesse manter nos principios do GNU e do software gratuito, e outros que não se importavam de trabalhar com um software não Open Source, mas gratuito.
Os que quiseram manter-se fieis ao GNU, começaram outro projecto, o Gnome.
O Gnome começou com Miguel de Icaza e Federico Mena em Agosto de 1997.
Assim que os projectos começaram a amadureçer, a guerra KDE vs Gnome começara na internet.
Os problemas com o licenciamento já terminaram à muito, pois o Qt foi lançado segundo a sua licença (Q public license – 1998), com as versões de Unix a mudar para a GPL em 2000. Presentemente, ambas as organizações participam na Freedesktop.org e disfrutam de uma grande compatibilidade. As chamas da guerra KDE vs Gnome estão apagadas, mas a rivalidade mantém-se.

Algumas datas chave:

  • Fevereiro 1997: Richard Stallman opõe-se a Matthias Ettrich no uso do Qt para o KDE.
  • Agosto 1997: Miguel de Icaza começa o projecto do Gnome (GNU Network Object Modelling Environment).
  • Abril 1998: Netscape, numa tentativa desesperada de se manter relevante face ao Internet Explorer, disponibiliza o código do Netscape Navigator 5.
  • Julho 1998: Debian 2.0 e KDE 1.0 são disponibilizados. A base de dados empresarial Informix é convertida para Linux.
  • Setembro de 1998: Os controversos documentos Halloween (Halloween documents) são roubados da Microsoft, detalhando os métodos que esta pretende empregar para combater o Linux e o Open Source.
  • Dezembro 1999: Para demonstrar que o Linux não é imune à doença do dotcom, várias empresas de Linux quebram records em ofertas publicas de acções.
  • Abril 2000: Minix, o pai do Linux, é tornado Open Source. Também em abril, a famosa revista Inglesa Linux Format é lançada no mercado.
  • Setembro 2000: Seguindo o lançamentodo Qt para Linux com licença GPL, Stallman e a Free Software Foundation perdoam aqueles que contribuiram para o KDE, violando a GPL.
  • Janeiro 2001: É lançado o Kernel 2.4 para substituir a versão 2.2 cheia de bugs.

2001-2004: Tempos conflituosos
Se há alguma companhia que mostra que fortunas rápidas podem mudar, em qualquer direcção, essa companhia é a MandrakSoft (agora Mandriva). A sua inspiração e co-fundador, Gaël Duval, começou com linux traduzindo alguns HOWTOs e documentação Linux. No ano seguinte, disponibilizou uma distribuição completa. Mandrake Linux 5.1 foi lançado em Julho 1998 como uma versão KDE do Red Hat, mantendo a mesma versão que a disponibilizada pela Red Hat, na qual foi baseada.
O Mandrake depressa formou a sua identidade, graças a um compreensivel e amigável ao utilizador, conjunto de ferramentas de configuração, e um dos instaladores mais simples de utilizar na altura.
Com distribuições como Debian e Slackware apelativas aos puristas/entusiastas de Linux/open source, e distribuições como Red Hat e SuSE para os utilizadores comerciais, havia apenas um sector que faltava cobrir. Isso aconteceu em 2001 com a saída do Lindows. O nome indicava exactamente onde a distribuição se pretendia colocar. O objectivo de Robertson era introduzir uma distribuição capaz de fazer tudo que o windows fazia, permitindo que corresse as maiores aplicações existentes para windows, bem como o software para Linux (embora o nome da distribuição fosse forçada a mudar para Linspire pelos advogados de Redmond). Este projecto não foi muito bem aceite pelos puristas de Linux, mas eles não eram os utilizadores alvo.
Faziam-se nesta altura previsões sobre para onde caminhava o Linux. O Linux cresce mais através da evolução que pela revolução. Cada ano fica melhor, cada ano tem mais utilizadores, cada ano tem mais consciência. Embora, e dada a popularidade do Firefox nestes dias, talvez fosse verdade quando diziam que 2006 seria o ano do desktop de Linux.

Algumas datas chave:

  • Março 2002: Daniel Robbins lança o Gentoo 1.0, uma distribuição de Linux que constroi todo o software a partir do código fonte, para garantir que é optimizado para o computador.
  • Maio 2002: OpenOffice.org 1.0 baseado no Star Office da Sun, é anunciado.
  • Julho 2003: A Red Hat anuncia que vai deixar de vender copias do Red Hat, e lançar o Fedora, uma distribuição orientada à comunidade para servir de testes para os seus produtos empresariais.
  • Agosto 2003: A Novel compra a Ximian e, exactamente três meses depois, anuncia o seu plano de entrar no mundo do Linux empresarial comprando a SuSE.
  • Julho 2004: Microsoft chega a acordo com o Lindows, pagando à companhia $24 milhões e acordando com o uso de certas bibliotecas multimédia. Lindows passa a chamar-se Linspire.
  • Outubro 2004: Ubuntu, o projecto do milionário e turista espacial Mark Shuttleworth, é lançado. Este projecto é baseado em Debian e os programadores pretendem cumprir o mesmo prazo que o Gnome, ou seja, uma nova versão cada seis meses.
  • Novembro 2004: Firefox 1.0 é lançado. O Browser é baseado no Mozilla, que nasceu das cinzas do projecto open source da Netscape, o Navigator 5.


2005-2006: De volta aos básicos
A comunidade responde de volta

Distribuições como Red Hat e Debian são produzidas por equipas de programadores, mas às vezes um programador pode desenvolver uma distribuição (mesmo sendo derivada de outra) que têm um grande impacto na comunidade. Isto é especialmente verdade quando falamos no Slackware de Patrick Volkerding. Não só é a mais antiga distribuição, como também serve de "pai" para algumas grandes distribuições e "avô" de muitas outras.

Outra distribuição criada por apenas um homem que deixa impressão, por razões diferentes, é o Knoppix, escrito por Klaus Knopper. Para quem não conhece, o Knoppix é uma distruição que vem num CD que corre directamente do CD, sem instalar nada no disco rígido do computador.
A identidade do primeiro Live é sujeita a debate, dependendo do que se considere uma distribuição. Uma versão em CD de uma consola para recuperar o sistema pode ser considerada uma distribuição? E o que dizer do Live CD de avaliação do SuSE ?
Apesar de tudo, o Knoppix é reconhecido com o primeiro Live CD, pois arranca um desktop gráfico com um vasto conjunto de aplicações. O que fez com que o Knoppix fosse reconhecido foi a sua detecção de hardware.

Como muitos projectos, o Knoppix foi criado para preencher uma lacuna. Assim, e com a vontade dos fabricantes, é o uso de Linux em pequenos dispositivos, como o Nokia 770. A companhia por detrás disto, a Trolltech, criadora do Qt, jogou um papel importantissimo com a sua plataforma, a Qtopia.

Boas distribuições de Linux são muitas vezes conduzidas e desenvolvidas pela comunidade: aparecem, as pessoas experimentam, dizem aos amigos e eles também as experimentam. Se a distribuição é boa, pode espalhar-se depressa. Isto é o que se passou com o Knoppix e com o Ubuntu. Hoje, o Ubuntu está no topo das distribuições na listagem da distrowatch.com, com 50% mais de popularidade que o segundo.

Algumas datas chave:

  • Janeiro 2005: O professor do MIT Nicholas Negroponte anuncia ao forúm mundial económico, um projecto ambicioso de construir portáteis de $100 para as crianças do terceiro mundo. Muitos assumem que apenas o Linux poderia oferecer beneficios para tornar o projecto realidade.
  • Fevereiro 2005: O segundo responsável pelo Kernel, Andrew Morton, anuncia que uma futura versão do 2.6 irá integrar software Xen de virtualização.
  • Abril 2005: O Mandrake junta-se à distribuição brasileira Conectiva e torna-se Mandriva.
  • Agosto 2005: A Novell lança o OpenSuSE, e à semelhança da Red Hat, é uma distribuição para servir de testes para os seus produtos empresariais. Com isto, a Novell espera lançar-se na comunidade de desenvolvimento e espalhar a mensagem do Linux.
  • Janeiro 2006: Richard Stallman e a sua equipa começa um processo de 12 meses para re-escrever a licença GNU/GPL para lidar com direitos digitais e patentes de software. Linus Torvalds sugere que o Kernel não irá mudar para a nova licença.
  • Março 2006: O fundador do Mandrake, Gaël Duval deixa a Mandriva e começa um novo projecto chamado Ulteo.
  • Maio 2006: O Google anuncia a sua primeira aplicação para Linux, Picassa for Linux. No mês seguinte, o fantástico Google Earth é lançado como uma aplicação completamente nativa.
  • Junho 2006: Ubuntu 6.06 LTS chega. Esta é a primeira distribuição que é anunciada como preparada para empresas.

O futuro
O que poderemos esperar nos próximos anos?
Que problemas no desenvolvimento de Linux podem estar reservados? Poderemos fazer previsões? Quem poderia imaginar que há 15 anos atrás um talentoso hacker, que mexeu no computador do pai, um Vic-20, poderia criar algo que teria um efeito tão profundo? Quem poderia adivinhar que um milionário Sul Africano, com um desejo de melhorar a educação das crianças em África, poderia roubar o mercado das distribuições?
O Linux é guiado pelas necessidades da comunidade. Ao contrário de um modelo de negócios, onde uma companhia decide o que pode vender para conseguir lucro, e faz o melhor para convençer os consumidores, o software gratuito permite aos utilizadores ter o que eles desejam. É esta liberdade que faz com que o futuro do Linux seja tão excitante…e imprevisivel.
Vamos esperar e ver…
Longa vida ao Linux.

Esta noticia foi retirada e traduzida da fantástica revista Linux Format 86, Edição de Dezembro 2006.

Usando Software gratuito para melhorar as nossas habilidades

Existem muitas razões óbvias pelas quais o software gratuito é bom para nós, tal como a possibilidade de escolha, o preço e os direitos de autor. Adicionalmente, existem outras razões, mas mais abstractas que também devem ser consideradas. O software gratuito deve ser utilizado para adquirir habilidades profissionais e pessoais.
Considerem o software mais genérico e comum que usam no dia a dia. Estas soluções genéricas não oferecem resistência à sua utilização, mas dão-nos uma visão mais abrangente do que realmente precisamos, e às vezes uma solução mais especializada é precisa. Que melhor forma para experimentar outras ferramentas e outras técnicas que usar software gratuito?
Para um problema particular, existem dezenas, senão centenas, de opções por onde experimentar. Um maior numero de opções não nos leva com certeza a uma melhor experiência educacional nem a uma melhor solução. No entanto, enquanto vamos testando essas novas opções e ferramentas, estamos a pesquisar, a experimentar e no processo, a desenvolver habilidades fundamentais de aprendizagem.
Enquanto procuramos por um software em particular, em primeiro lugar, temos que identificar o problema que desejamos resolver. Após identificado o problema, pesquisamos pelas soluções existentes e seleccionamos quais vamos experimentar. Experimentamos todos da mesma forma e comparamos os resultados para identificar qual o que se adapta melhor às nossas necessidades. Decidimos se já encontrámos a nossa solução ou se precisamos de repetir todo o processo, alterando os métodos e/ou o software escolhido. Finalmente, publicaremos os resultados com as nossas conclusões.
Estes passos dificilmente se assemelham aos métodos científicos, mas estão presentes os passos básicos para a investigação e ganho de conhecimento. No final, obtemos sabedoria e experiência que são melhores que qualquer opinião cega e sem apoio.
Ás vezes, deparamo-nos com uma área que não possui a solução correcta para as nossas necessidades, e no entanto temos uma ideia sólida do que poderia funcionar. Usando ferramentas livres, documentação e o apoio da comunidade, poderemos construir o nosso próprio software usando os nossos conhecimentos adquiridos pelo nosso interesse e necessidades. Ao libertar o software ao publico, estaremos a partilhar conhecimento e experiência.

Se estamos a preencher uma lacuna existente, encontraremos outras pessoas na comunidade Open Source que partilham o nosso interesse e querem ajudar. Iremos trabalhar com diversas pessoas que têm a sua personalidade, cada qual diferente, fazendo com que a experiência seja ainda melhor. Trabalharemos em grupo, permitindo adquirir capacidade de adaptação, onde iremos encontrar diversidades de opiniões e aprender novas metodologias. Independentemente do sucesso do projecto,  o processo de colaboração por si só já valeu a pena, fornecendo novos conhecimentos e um grau de profissionalismo impossível de encontrar em mais algum lado.
O aspecto idealístico do crescimento pessoal do software gratuito é unico. Pode-se encontrar este tipo de potêncial em mais algum tipo de software? Estes caminhos teóricos para a metodologia ciêntifica, experiência, sabedoria, colaboração, altruísmo e profissionalismo não devem ser esquecidos.

In Free Software Magazine

Perdidos no Kernel

Ja toda a gente, com certeza, ouviu falar em Linux. Mais ainda, quem anda metido neste mundo louco e fantástico da informática, ouviu falar com certeza em kernel. Para os menos atentos, ou mais distraí­dos, não é só o Linux que possui kernel. O windows também possui uma coisa destas. o kernel é o encarregado de fazer a comunicação entre o sistema operativo e o hardware, seja ele do computador ou periféricos a ele ligado. Podem perguntar

– Mas e os drivers que vêm com os periféricos?

Boa pergunta. A resposta é que os drivers colocam-se no "caminho" da comunicação entre o sistema operativo e o kernel, criando assim uma "ponte" entre os dois.

A particularidade do kernel de Linux é que este é modular e acessí­vel a toda a gente, para alterar como bem lhe apetecer, para suportar mais ou menos coisas.

O tamanho do kernel é gigantesco, contendo muita, muita coisa. São milhares de ficheiros .c e .h para compilar e criar assim uma API e drivers para comunicação.

Na universidade do Oregon, o grupo de Linux criou um mapa do kernel. É uma coisa realmente fantástica de se ver, e muito confusa. Nesta página existe ainda a possibilidade de fazer zoom até uma zona especí­fica e saber ao pormenor qual o ficheiro responsável por determinada acção. Tá muito bem conseguido. Vão fazer uma visita, e não se sintam intimidados ao ver.

Categorias

Olá. Desde há algum tempo que começei realmente a levar esta coisa do blog mais a sério. Fui escrevendo mais vezes e artigos com mais importância (penso eu). Assim sendo, decidi que era altura de começar a escrever os artigos e a dar-lhes uma categoria. Assim sendo, decidi separar os artigos por categorias, sendo eles colocados na que melhor se enquadra ao assunto escrito.

As categorias que decidi criar são as seguintes:

  • Opensource – Qualquer assunto que tenha a ver com Opensource, desde noticias, a software.
  • Opinião – Nestas entradas estou a dar a minha opinião sobre algum assunto que eu penso que tenha importância.
  • Linux – Tudo relacionado com este fantástico Sistema Operativo
  • Musica – As musicas que eu penso que irão gostar. Pelo menos eu gosto.
  • Código – Algumas dicas e/ou código para melhorar a vida

Espero que assim seja melhor para mim e para quem venha ler este blog, poder escolher logo o que vai querer ler.

A Estremadura lidera o caminho

A região da Estremadura lidera o caminho na adopção de software gratuito. O governo desta região anunciou que vai migrar todos os computadores do serviço publico para Linux até ao final do ano. Já foram migradas escolas e universidades nesta região autónoma espanhola. O interessante é que a migração não foi feita para nenhum distribuição "conhecida" mas sim para uma criada por programadores da região. Chama-se GnuLinex e é baseada em Debian.

No processo todo, o governo regional espera poupar 18 milhões de Euros. Além da adopção de tecnologias OpenSource, o governo vai também mandatar o uso do formato de OpenDocument do OpenOffice para todos os documentos. Para melhorar, um grupo de empresas, incluindo o El Corte Inglês, estão de olhos postos na migração, para avaliar os potenciais do projecto. Esta série de migrações não fica por aqui, sendo a Estremadura o ultimo de um conjunto de outros. No ano passado, Bristol e Birmingham City anunciaram também projectos em larga escala para reduzir a sua dependência no Windows e no MS Office. Bristol anunciou que a mudança para o StarOffice poupou aos contribui­ntes £1.4 milhões.

In Linux Format 85 – November 2006

Estes projectos são noticias muito boas e que deixam a comunidade OpenSource e a sua filosofia muito contentes. Gostava imenso que Portugal também tivesse conhecimento destes projectos e que os seus responsáveis optassem por algo semelhante. Felizmente, o Ministério da Justiça já possui algo semelhante. O projecto chama-se LISA e o seu objectivo, como descrito no site:

Adoptar ferramentas de software livre nos servicçs do Ministério da Justiça com o intuito de reduzir custos e acelerar o processo de adopção de novas tecnologias de informação.

O mais interessante é que também criaram a sua própria distribuição, chamando-se esta Linius. O site é também um mirror para outros projectos OpenSource e distribuições de Linux.
Pode ser que outros ministérios sigam este exemplo. Dois ministérios que deviam seguir este exemplo eram os da saúde e da educação…
Existem programas nas escolas primárias para dar formação às crianças nesta idade escolar. Este projecto é da responsabilidade do ministério da educação. Infelizmente para nós, é-lhes ensinado Windows e Office. Desde pequenos que são ensinados a trabalhar em aplicações da Microsoft. No Reino Unido o ensino de informática às crianças também é feito na primária, mas sabem o que dão? Pois é, às crianças em idade escolar, é-lhes ensinado a trabalhar em Linux e não em Windows.

Pode ser que os nossos responsáveis se apercebam disto e alterem o nosso plano tecnológico, se é que ele não é mais do que assinar protocolos com a Microsoft.