Gentoo Linux

FLISOL Ceaŕa | Festival Latinoamericano de Instalação de Software Livre

Histórico

Gentoo veio inicialmente de uma distribuição chamada Enoch Linux (atualmente morta). Daniel Robbins ao cria-lo tinha como principal objetivo aproveitar ao máximo a máquina na qual estava instalado utilizando-se da idéia de compilar todo e qualquer pacote do sistema. Após estudar o FreeBSD por alguns meses, Robbins trouxe algumas características para o sistema de autoconstrução de pacotes que se chama Portage. Sua primeira versão foi lançada em 31/03/2002.

Introdução

Meta-distribuição é o termo que melhor o caracteriza já que ele é definido a partir das necessidades do usuário, constrói cada pacote e é absolutamente flexível e configurável. Com essa filosofia o sistema abrange muitos tipos de arquiteturas como: x86,x86-64, IA-64, PA-RISC; PowerPC, PowerPC 970, SPARC, MIPS, DEC Alpha, ARM, zSeries/s390, e SuperH. Seu uso pode ser de um Desktop, Servidor, Estação de desenvolvimento e etc. Nos mais de 10000 pacotes oficiais do repositório existem:

  • - Pacotes de suporte à hardware: Nvidia, Ati, Audigy, etc;
  • - Últimas versões estáveis do KDE,Xfce, Gnome, Fluxbox, etc;
  • - Suporte à versões diferentes do kernel;
  • - Etc.

    Instalação

    Existem 2 tipos de CDs para que seja feita a instalação: Minimal e o LiveCD. Abaixo suas descrições:

    Minimal

    Possui aproximadamente 60mb de espaço, e vem com quase nada necessário para instalar o sistema, mas precisa de uma conexão com a internet.

    LiveCD

    Preenche quase completamente um CD-ROM normal, vem com vários pacotes para construir seus sistema e pode não ser necessário conexão.

    Após baixar e gravar os cds, o mais aconselhado é que seja seguido o Handbook oficial no site do Gentoo. Basta escolher sua arquitetura e segui-lo. Existem muitas escolhas a serem feitas durante a instalação, algo normal no Gentoo. Fique claro que é possível instalar a partir desses cds oficiais, de uma distribuição previamente instalada, outro LiveCD como: Slax,Ubuntu, pela rede e outros.

    Administração

    Existem alguns programas que ajudam à administração do sistema. São eles: Portage,Eselect e os programas do pacote gentoolkit(equery, euse, revdeprebuild...) Abaixo a descrição de alguns.

    Portage

    O que faz este sistema ser diferente dos outros é exatamente seu sistema Portage, que é similar ao BSD Ports. Ele é escrito em Python, uma linguagem de alto-nível interpretada. Suas funcionalidades são similares ao do APT, Yum?, e outros sistemas de gerenciamento de pacotes.O Portage instala, remove, procura, checa, configura pacotes que estão nos repositórios do Gentoo ou pacotes adicionados por você.

    Existem também interfaces gráficas para trabalhar com o Portage como o Kuroo (KDE) e o Porthole (Gnome).

    Comandos básicos

    Uso:
    # emerge [opções] [alvo]

    Abaixo uma melhor descrição dos comandos mais utilizados:

    Opções

    --ask (-a) >> Pergunta antes de iniciar instalação ou remoção.

    --config >> Configura alguns pacotes específicos que podem ser configurados diretamente pelo portage.

    --depclean >> Determina pacotes que estão instalados e não possuem razão explícita para estarem lá.

    --help (-h) >> Disponibiliza uma breve ajuda do comando emerge.

    --info >> Expõe informações importantes de configuração do Portage. Útil quando for tirar dúvidas no fórum se ocorrer alguma excessão.

    --newuse (N) >> Pede uma rechecagem da variável USE.

    --pretend (-p) >> Fingir instalar um pacote a fim de ver pacotes dependentes, tamanho do download e etc.

    --resume >> É auto explicativo.

    --search (-s) >> Procurar por nomes de pacotes.

    --searchdesc (-S) >> Procurar nas descrições dos pacotes.

    --skipfirst >> Pula o primeiro pacote a ser instalado.

    --update (-u) >> Atualiza os pacotes necessários.

    --verbose (v) >> Detalha melhor os passos do Portage.

    --version (-V) >> Mostra a versão do Portage.

    Alvo

    Os alvos do comando emerge podem ser:

    Pacote(s)

    # emerge gentoolkit
    # emerge mozilla-firefox mplayer konqueror

    World

    World compõe todos os pacotes.

    # emerge --update world (Atualiza todos os pacotes)

    System

    System compõe apenas os pacotes do sistema básico

    # emerge -e system (Recompila o "system" todo)

    Equery

    Comandos básicos

    belongs >> Descobrir de que pacote veio um executável.

    check >> Verificar integridade de um pacote.

    depends >> Listar dependências de um pacote.

    depgraph >> Mostra um gráfico de dependências diretas e indiretas.

    files >> Lista arquivos pertencentes à um pacote.

    hasuse >> Mostra que pacotes tem uma certa USE.

    list >> Lista pacote(s) que estejam instalados.

    size >> Mostra tamanho de pacote(s).

    uses >> Lista as variáveis USE utilizadas por um certo pacote.

    which >> Mostra o caminho do arquivo .ebuild de um pacote.

    Exemplos:

    # equery size mozilla-firefox (Mostra o tamanho do browser mozilla-firefox)
    # equery hasuse opengl (Lista arquivos que possuam a USE opengl)
    # equery belogns /usr/bin/mplayer (Mostra o pacote de onde foi compilado)

    Genkernel

    Genkernel é uma ferramenta que permite pessoas que não tem costume de compilar o kernel do linux o façam. Além disso ele autodetecta as opções necessárias para seu hardware. Não é 100% perfeito, mas ajuda bastante.
    Comandos Básicos

    Uso:
    # genkernel [opções] [alvo]

    Opções

    Abaixo apenas algumas delas:

    --menuconfig >> antes de compilar o kernel abre a janela de configuração do kernel.

    --install >> auto-descritivo.

    --help >> Disponibiliza mais opções.

    Alvo

    all >> Constrói kernel, módulos, e o initrd.

    bzImage >> Constrói apenas o kernel.

    kernel >> Constrói o kernel e os módulos.

    initrd >> Constrói o initrd.

    Eselect

    Eselect é uma ferramenta de administração e configuração nos Gentoo. Alguns pacotes são configurados através dele e são considerados módulos do eselect. Alguns módulos do eselect: Kernel, Dicionários do OpenOffice, Implementação do OpenGL, Runlevels, etc.
    Comandos Básicos:

    Em geral, é usado da seguinte forma:
    # eselect [opções globais] [nome do módulo] [opção do módulo]

    Cada módulo possui suas opções próprias. O módulo kernel, por exemplo, trata de escolher que kernel você está usando (caso use o genkernel)
    # eselect kernel >> Mostra as opções do módulo kernel
    # eselect kernel show >> Mostra o kernel que está sendo utilizado.
    # eselect kernel list >> Lista que kernel você pode escolher.

    Considerações Finais

    Basicamente Gentoo Linux é um sistema que se molda ao administrador e além disso traz consigo ferramentas como as que foram descritas acima para facilitas sua configuração e além disso possui uma comunidade bastante ativa. Um exemplo disso são os Fórums do Gentoo e o Gentoo Wiki. Então para quem não o utiliza: Experimente!

    Curiosidades

  • - Gentoo é uma espécie de pinguim, tal como o Tux que é o mascote do Linux. Alias, não por acaso é a espécie que nada mais rápido. Seu nome científico é: Pygoscelis papua.
  • - A mascote do Gentoo é uma vaca chamada Larry.

    Referências

  • - Gentoo.org Site Oficial
  • - Gentoo-portage.com - Site do repositório oficial
  • - Gentoo Wiki - Muita informação útil

    Eduardo Gurgel Pinho

    Este artigo foi publicado nos seguintes sites:

  • - GELSoL
  • - Vivaolinux
  • - Tux-CE
  • Show de bola cara. Parabéns

    Show de bola cara.
    Parabéns pelo artigo e obrigado pela colaboração. ;]


    Copyright (c) 2006-2007 - Comunidade de Software Livre Tux-CE.
    Conteúdo licenciado sob a licença GNU Free Documentation License,
    assim como as páginas derivadas Fórum e Blog