Índice das dicas

Gentoo, BSD e Solaris

Por Carlos E. Morimoto em 7 de janeiro de 2009 às 20h05

19

Hoje em dia existem mais de 500 distribuições Linux, já contanto apenas as distribuições ativas. Apesar disso, 98% delas são personalizações de outras distribuições já existentes, de forma que, se você começar a estudar um pouco sobre a árvore genealógica das distribuições, vai perceber que quase todas as distribuições existentes são derivadas de apenas três distribuições principais: Debian (que deu origem ao Ubuntu, Kubuntu, Knoppix e inúmeras outras), Red Hat (que deu origem ao Fedora, Mandriva e contribuiu indiretamente na evolução do SUSE) e o Slackware (que deu origem ao Slax Vector e algumas outras).

Você pode estar se perguntando em qual das famílias se encaixa o Gentoo, que é outra distribuição bastante comentada. A resposta é que ele não se encaixa em nenhuma.

O Gentoo inaugurou uma nova linhagem trazendo uma abordagem diferente das demais distribuições para a questão da instalação de programas e instalação do sistema. Tradicionalmente, novos programas são instalados através de pacotes pré-compilados, que são basicamente arquivos compactados, contendo os executáveis, bibliotecas e arquivos de configuração usados pelo programa. Estes pacotes são gerenciados pelo apt-get, urpmi, yun ou outro gerenciador de pacotes adotado pela distribuição em uso. Compilar programas a partir dos fontes passa a ser então um último recurso para instalar programas recentes, que ainda não possuem pacotes disponíveis.

O Gentoo utiliza o Portage, um gerenciador de pacotes que segue a idéia dos ports do FreeBSD, que é outro sistema Unix, similar ao Linux em diversos aspectos. Os pacotes não contém binários, mas sim o código fonte do programa, junto com um arquivo com parâmetros que são usados na compilação. Você pode ativar as otimizações que quiser, mas o processo de compilação e instalação é automático. Você pode instalar todo o KDE, por exemplo, com um "emerge kde". O Portage baixa os pacotes com os fontes (de forma similar ao apt-get), compila e instala.

O ponto positivo desta abordagem é que você pode compilar todo o sistema com otimizações para o processador usado na sua máquina. Isso resulta em ganhos de 2 a 5% na maior parte dos programas, mas pode chegar a 30% em alguns aplicativos específicos.

A parte ruim é que compilar programas grandes demora um bocado, mesmo em máquinas atuais. Instalar um sistema completo, com o X, KDE e OpenOffice demora uma tarde inteira em um Athlon X2 e pode tomar um final de semana numa máquina mais antiga. Você pode usar o Portage também para atualizar todo sistema, usando os comandos "emerge sync && emerge -u world" de uma forma similar ao "apt-get upgrade" do Debian.

Nas versões atuais do Gentoo, você pode escolher entre diferentes modos de instalação. No stage 1 tudo é compilado a partir dos fontes, incluindo o Kernel e as bibliotecas básicas. No stage 2 é instalado um sistema base pré-compilado e apenas os aplicativos são compilados. No stage 3 o sistema inteiro é instalado a partir de pacotes pré-compilados, de forma similar a outras distribuições. A única exceção fica por conta do Kernel, que sempre precisa ser compilado localmente, mesmo ao usar o stage 2 ou 3. Entre eles, o stage 1 é naturalmente a instalação mais demorada, mas é onde você pode ativar otimizações para todos os componentes do sistema.

Já existe um conjunto crescente de distribuições baseadas no Gentoo, como vários live-CDs, com games e versões modificadas do sistema, alguns desenvolvidos pela equipe oficial, outros por colaboradores. Uma das primeiras distribuições a utilizar o Gentoo como base foi o Vidalinux.

Embora seja uma das distribuições mais difíceis, cuja instalação envolve mais trabalho manual, o Gentoo consegue ser popular entre os usuários avançados, o que acabou por criar uma grande comunidade de colaboradores em torno do projeto. Isto faz com que o Portage ofereça um conjunto muito grande de pacotes, quase tantos quanto no apt-get do Debian, incluindo drivers para placas nVidia e ATI, entre outros drivers proprietários, e exista uma grande quantidade de documentação disponível, com destaque para o Gentoo-Wiki, que inclui inúmeras dicas e receitas que podem ser úteis também em outras distribuições, sobretudo ao tentar configurar algum periférico problemático: http://www.gentoo-wiki.com

Além do Linux, existem outros sistemas Unix open-source, com destaque para o FreeBSD, OpenBSD, NetBSD e o OpenSolaris. Embora o kernel e alguns dos utilitários básicos do sistema sejam diferentes, os softwares usados (tais como o KDE, Gnome, Open Office e assim por diante) são basicamente os mesmos, o que torna os sistemas muito similares. Temos aqui, por exemplo, um screenshot do OpenSolaris, rodando o Gnome:

Se fosse feito um teste cego com uma instalação do Free BSD ou do Solaris, configurados com o Gnome e outros softwares, a maioria dos usuários pensaria se tratar de apenas mais uma distribuição Linux. Um bom exemplo é o PC-BSD (http://www.pcbsd.org), uma distribuição do FreeBSD baseada no KDE.

Por bizarro que possa parecer, é possível rodar o KDE e outros aplicativos até mesmo sobre o Windows, substituindo a interface e os aplicativos padrão. É o tipo de exercício que não tem muita utilidade prática, já que se a idéia é usar o KDE, é muito mais fácil simplesmente baixar uma distribuição Linux que já venha com ele pré-instalado, como o Mandriva One, mas isso mostra até que ponto vai a criatividade dos desenvolvedores. :)

19 comentáriosPor Carlos E. Morimoto. Revisado 23 de março de 2011 às 11h25

Comentários

 
por Diogo (anônimo) em 19 de janeiro de 2009 às 09h07
O método de instalação oficial do gentoo agora é o stage 3, fazem uns dois anos que os stages 1/2 não são mais "suportados" oficialmente. O que se faz para conseguir um sistema todo compilado com otimizações é rodar um "emerge --emptytree system" e depois "emerge --emptytree world" e proto, seu sistema foi inteiro recompilado com as otimizações escolhidas.
 
por Marvin (anônimo) em 17 de janeiro de 2009 às 13h20
Arch é i686 .... muito Otimizado pras maquinas mais novas ...
 
por fabiano (anônimo) em 13 de janeiro de 2009 às 20h37
Olá morimoto, gostaria de saber e ate mesmo pedir. Pq vc não comenta escreve (tutoriais e etc) d mais sobre o Solaris?

Obrigado!
 
por Paulo C Silva (anônimo) em 11 de janeiro de 2009 às 22h33
Tenho o kurumin 7 isntalado junto com o xp ecomprei o cd do gentoo que ven junto de revista, no live cd funciona mas não conegui instalar no hd , mas tambem não notei nada a mais interesante
 
por Domus (anônimo) em 10 de janeiro de 2009 às 21h32
Ótimo artigo, lá sé vão 5 anos de gentoo firme forte, a instalação do meu micro hoje é atualizada e perdura já uns 4 anos sem formatar o HD.
 
por Fabiano (anônimo) em 10 de janeiro de 2009 às 20h40
Excelente post. Como sempre, aprendo muito com o blog. Sugiro mais postagens sobre esse assunto. Obrigado.
 
por Sebastião (anônimo) em 10 de janeiro de 2009 às 17h01
Ola Morimoto.Gostei muito do seu artigo.Admiro demais o seu trabalho e sua inteligencia.
 
por MaxRaven (anônimo) em 9 de janeiro de 2009 às 23h19
A idéia original do Arch é baseada no CRUX e sua importância para a distribuição é reconhecida no próprio site da distribuição bem como durante a instalação, onde ele é citado. Mas é claro que com o tempo as coisas vão se distanciando, novos conceitos vão sendo propostos, vão se mudando as coisas, até se chegar ao ponto de se reconstruir totalmente, mas eles, pelo menos, não deixam de reconhecer e agradecer o passado.
 
por Jorge (anônimo) em 9 de janeiro de 2009 às 21h57
E o Solaris?
 
por Lauro César (anônimo) em 9 de janeiro de 2009 às 18h28
"O Arch Linux é derivado do CRUX Linux."

Pelo que sei, atualmente, o Arch não é baseado em nehuma outra distro. Originalmente, ele era baseado no Crux, mas hoje ele é "feito do zero" (LFS).