Gentoo Logo

Aviso : Este documento não é válido e não é mais mantido.


O método de instalação alternativa do Gentoo Linux

Conteúdo:

1.  Sobre este documento

Se o método padrão de instalação carregando-a-partir-do-cd não funcionar para você (ou você simplesmente não gostar dele), a ajuda está aqui. Este documento serve para fornecer um repositório de técnicas de instalação alternativas do Gentoo Linux para aqueles que precisam delas. Ou, se você preferir, ele serve como um lugar para colocar seu métodos de instalação estranhos. Se você tem um método de instalação que você acha útil, ou inventou um jeito divertido de instalar o Gentoo, não hesite em escrevê-lo e relatá-lo no Bugzilla.

2.  Carregando o CD de Instalação com o Smart BootManager

Baixe o Smart BootManager disponível em http://btmgr.sourceforge.net/download.html. A fonte ou binários de Linux e versões .exe de windows estão disponíveis junto com vários pacotes de línguas. No entanto, no momento, o método preferido é usar o formato binário, já que a fonte não irá compilar com versões mais novas do NASM.

Compile o pacote da fonte ou pegue o binário. Existem várias opções que podem ser utilizadas durante a criação de seu disquete de inicialização, como visto abaixo.

Listagem de código 2.1: Opções do Smart BootManager

sbminst [-t theme] [-d drv] [-b backup_file] [-u backup_file]

   -t theme     select the theme to be used, in which the theme could be:
                   us = English theme       de = German theme 
                  hu = Hungarian theme     zh = Chinese theme 
                  ru = Russian theme       cz = Czech theme
                  es = Spanish theme       fr = French theme 
                   pt = Portuguese theme 

                 
  -d drv       set the drive that you want to install Smart BootManager on;
                for Linux:
                  /dev/fd0 is the first floppy driver, 
                  /dev/hda is the first IDE harddisk driver.
                   /dev/sda is the first SCSI harddisk driver.
                for DOS:
                   0   is the first floppy drive
                   128 is the first hard drive;

   -c             disable CD-ROM booting feature;

   -b backup_file backup the data that will be overwritten for
                  future uninstallation;

   -u backup_file uninstall Smart BootManager, should be used alone;

   -y             do not ask any question or warning.

Listagem de código 2.2: Usando o sbminst para construir o disquete de inicialização

# sbminst -t us  -d /dev/fd0

Nota: Troque fd0 com seu respectivo dispositivo de disquetes se o nome do seu for diferente.

Agora coloque o disquete no dispositivo de disquetes do computador que você quer carregar o CD de Instalação, junto com o CD de Instalação no CD-ROM e ligue o computador.

Você verá o diálogo do Smart BootManager. Selecione CD-ROM e aperte ENTER para carregar o CD de Instalação. Uma vez carregado proceda com as instruções de instalação padrão.

Mais informações sobre o Smart BootManager podem ser encontradas em http://btmgr.sourceforge.net/

3.  Instalação do Knoppix

Nota: O Knoppix está apenas disponível para usuários de x86.

Carregar do LiveCD do Knoppix é um jeito de ter um sistema totalmente funcional enquanto você estiver compilando o Gentoo. O Tux Racer ajudará a passar o tempo enquanto você espera e você pode usar OpenOffice para trabalhar.

Aviso: Esteja avisado que se você salvar qualquer coisa no diretório de home do Knoppix enquanto estiver esperando o Gentoo instalar, não estará disponível quando você reiniciar o Gentoo. Certifique-se de salvar arquivos importantes no disco rígido ou em outro computador!

Carregue o CD do Knoppix. Se você tiver Knoppix 3.6-3.8.2, você precisará especificar knoppix26 como opção de inicialização para carregar um kernel 2.6. Se você perder este passo, quando você fizer chroot receberá um erro dizendo que seu kernel é velho demais. Se, entretanto, você tiver Knoppix 3.9+, este passo é desnecessário, já que o kernel 2.6 é o padrão.

Por padrão o Knoppix carrega um desktop KDE. Abra um konsole e faça su - para poder mudar sua senha. Isto permite configurar a senha de administrador (root) para o Knoppix. Você pode agora configurar o sshd para logi remoto, de acordo com sua preferência.

Listagem de código 3.1: Criando o ponto de montagem /mnt/gentoo

# mkdir /mnt/gentoo

Neste ponto, você pode continuar com o documento de instalação padrão na parte 4. No entanto, quando for pedido para montar o sistema de proc, faça o seguinte comando ao invés do enunciado:

Listagem de código 3.2: Fazendo bind-mount do pseudo sistema de arquivos proc

# mount -o bind /proc /mnt/gentoo/proc

Também, esteja ciente de que algumas FEATURES (funções) do Portage não irão funcionar no Knoppix. Tenha cuidado especial com userpriv e usersandbox. Se você obtiver muitos erros, uma saída pode ser desativar algumas ou todas funções opcionais.

4.  Instalando do stage1 sem acesso a rede

Grave uma iso de CD de Instalação.

Pegue o último snapshot do portage de http://distro.ibiblio.org/pub/linux/distributions/gentoo/snapshots/ (ou seu servidor favorito). Ou coloque a tarball em uma partição existente do computador em que você está instalando, ou grave-o em um CD.

Siga as instruções do Manual de instalação do Gentoo até chroot /mnt/gentoo no capítulo 6. Se você só tem um CD-ROM lembre-se de usar a opção docache durante a inicialização para que você possa desmontar o CD de Instalação e montar seu CD com o snapshot do portage.

Abra um novo console (Alt-F2), nós vamos continuar com o documento de instalação até rodar o script boostrap.sh.

Aviso: Lançamentos mais antigos do CD de Instalação pedem que você a senha usando o comando passwd, antes de fazer log-in manualmente.

Volte ao primeiro console (Alt-F1, fora do chroot) e monte um segundo CD em /mnt/gentoo/mnt/cdrom2. Copie a tarball do portage do cdrom2 e extraia-a em /mnt/gentoo/usr.

Listagem de código 4.1: Monte o cd de snapshot

# umount /mnt/cdrom
# mkdir /mnt/gentoo/mnt/cdrom2
# mount /dev/cdroms/cdrom0 /mnt/gentoo/mnt/cdrom2
# cp /mnt/gentoo/mnt/cdrom2/portage-$date.tar.bz2 /mnt/gentoo/usr
# cd /mnt/gentoo/usr
# tar -xvjpf portage-$date.tar.bz2

Volte ao console F2. Agora se você tentar rodar bootstrap.sh ele irá falhar porque não consegue baixar os arquivos. Nós vamos baixar os arquivos em algum outro lugar e colocá-los em /usr/portage/distfiles (no console F2).

Você precisa de uma lista de pacotes de stage1: glibc, baselayout, texinfo, gettext, zlib, binutils, gcc, ncurses mais suas dependências.

Nota: Note que você precisa das versões de cada pacote sincronizadas com sua árvore do portage.

Listagem de código 4.2: Pegando uma lista de pacotes

(Não se esqueça do 2 na frente do >)
# emerge -fp glibc baselayout texinfo gettext zlib binutils gcc ncurses 2> stage1.list
# mount -t vfat /dev/fd0 /mnt/floppy
# cp /mnt/gentoo/stage1.list /mnt/floppy
# umount /mnt/floppy

Leve o disquete ao computador que tem acesso rápido. Se você olhar o arquivo stage1.list, você verá que ele fornece várias URLs para baixar. Infelizmente, ele também lista várias URLs possíveis para cada pacote também, que não é o que você quer. Tire todas menos uma das URLs primeiro:

Listagem de código 4.3: Limpando as URLs

(Este script depende do formato de saída dado pelo emerge que pode
mudar no futuro sem aviso - use com cuidado!)
# cut -f 1 -d ' ' stage1.list > stage1.download

Agora use o wget para baixar todas fontes listadas:

Listagem de código 4.4: Usando o wget para baixar seus pacotes fonte

# wget -N -i stage1.download

Quando você houver baixado todos os arquivos, coloque-os no computador e copie-os para /mnt/gentoo/usr/portage/distfiles. Você então poderá rodar bootstrap.sh. Repita o mesmo procedimento de pegar com o wget para o estágio 2 e 3.

5.  Instalação sem disco usando inicialização de PXE

Requisitos

Você precisará de uma placa de rede no cliente sem disco que usa o protocolo PXE para iniciar, como muitas placas 3com. Você também precisará de uma BIOS que suporte inicialização de PXE.

Configuração de servidor de base

Crie os diretórios: a primeira coisa a fazer-se é criar os diretórios onde seu sistema sem disco será gravado. Crie um diretório chamado /diskless que contenha um diretório para cada cliente sem disco. Para o resto deste guia trabalharemos no cliente 'eta'.

Listagem de código 5.1: configuração de diretório

# mkdir /diskless
# mkdir /diskless/eta
# mkdir /diskless/eta/boot

Configuração de DHCP e TFTP: o cliente irá obter informações de inicialização usando DHCP e irá baixar todos arquivos necessários usando TFTP. Simplesmente faça emerge do DHCP e configure-o para suas necessidades básicas. Então, adicione o seguinte em /etc/dhcp/dhcpd.conf.

Nota: Isto fornece um endereço IP estático para o cliente e o caminho para a imagem de inicialização PXE, aqui pxegrub. Você tem que substituir o endereço de MAC com a placa de Ethernet do cliente e o diretório onde você irá colocar os arquivos de cliente com o que você irá usar.

Para DHCPd, rode emerge dhcp (ou qualquer outro servidor de DHCP de sua escolha). Certifique-se de que a interface correta está selecionada em /etc/conf.d/dhcp.

Listagem de código 5.2: dhcp.conf

option option-150 code 150 = text ;
ddns-update-style none ;
host eta {
hardware ethernet 00:00:00:00:00:00;
fixed-address ip.add.re.ss;
option option-150 "/eta/boot/grub.lst";
filename "/eta/boot/pxegrub";
}

Para o TFTP, faça emerge app-admin/tftp-hpa. No /etc/conf.d/in.tftpd, coloque o seguinte:

Listagem de código 5.3: in.tftpd

INTFTPD_PATH="/diskless"
INTFTPD_USER="nobody"
INTFTPD_OPTS="-u ${INTFTPD_USER} -l -vvvvvv -p -c -s ${INTFTPD_PATH}"

Configure o GRUB: para fornecer inicialização de PXE eu uso GRUB. Você tem que compilá-lo você mesmo para ativar a compilação de imagem PXE ... mas isto é fácil. Primeiro, pegue a última versão do código fonte do GRUB (emerge -f grub irá colocar a tarball em /usr/portage/distfiles). Copie a tarball em /diskless e construa com capacidade de binário pxe. Uma vez que o binário estiver construído, copio-o para o diretório de inicialização do cliente sem disco. Então edite seu arquivo de configuração grub.lst.

Listagem de código 5.4: configuração do grub

# tar zxvf grub-0.92.tar.gz
# cd grub-0.92
# ./configure --help
(Nas opções você verá uma lista de drivers de interface de rede.
Selecione o driver compatível com a placa de rede seu cliente. Aqui em diante
referenciado como $nic)
# ./configure --enable-diskless --enable-$nic
# make
# cd stage2
# cp pxegrub /diskless/eta/boot/pxegrub
# nano -w /diskless/eta/boot/grub.lst

Listagem de código 5.5: grub.lst

default 0
timeout 30

title=Gentoo sem disco
root (nd)
kernel /eta/bzImage ip=dhcp root=/dev/nfs nfsroot=end.ere.ço.ip:/diskless/eta

# Para a opção nfsroot, o endereço IP é o do servidor e o diretório é
aquele onde os arquivos do cliente sem disco estão localizados (no servidor).

Configure o NFS: O NFS é fácil de configurar. A única coisa que você tem que fazer é adicionar uma linha no arquivo de configuração /etc/exports:

Listagem de código 5.6: /etc/exports

# nano -w /etc/exports
# /etc/exports: arquivos de sistema NFS sendo exportados.  Veja exports(5).
/diskless/eta eta(rw,sync,no_root_squash)

Atualize seu hosts: uma coisa importante a fazer agora é modificar seu arquivo /etc/hosts para assistir suas necessidades.

Listagem de código 5.7: /etc/hosts

127.0.0.1 localhost

192.168.1.10 eta.example.com eta
192.168.1.20 sigma.example.com sigma

Criando o sistema no servidor

Você deve reiniciar o servidor com um CD de Instalação do Gentoo, embora você possa muito bem continuar imediatamente se você sabe como proceder com as instruções de instalação do Gentoo de uma instalação existente. Siga o procedimento de instalação como explicado no guia de instalação do Gentoo MAS com as seguintes diferenças: Quando você montar o sistema de arquivos, faça o seguinte (onde hdaX é a partição onde você criou o diretório /diskless). Você não precisa montar quaisquer outras partições já que todos arquivos irão residir no diretório /diskless/eta.

Listagem de código 5.8: montando o sistema de arquivos

# mount /dev/hda3 /mnt/gentoo

Tarballs de estágio e chroot: neste exemplo usamos uma tarball de stage3. Monte /proc em seu diretório sem disco e faça chroot nele para continuar com a instalação. Então siga o manual de instalação até a configuração do kernel.

Aviso: Tenha cuidado quando você extrair uma tarball de estágio. Você não quer extrair em cima de sua instalação existente.

Listagem de código 5.9: extraindo a tarball de estágio

# cd /mnt/gentoo/diskless/eta/
# tar -xvjpf  /mnt/cdrom/gentoo/stage3-*.tar.bz2
# mount -t proc /proc /mnt/gentoo/diskless/eta/proc
# cp /etc/resolv.conf /mnt/gentoo/diskless/eta/etc/resolv.conf
# chroot /mnt/gentoo/diskless/eta/ /bin/bash
# env-update
# source /etc/profile

Configuração do kernel: quando você fizer o make menuconfig de sua configuração de kernel, não se esqueça de ativar as seguintes opções com as outras recomendadas no guia de instalação.

Listagem de código 5.10: opções de menuconfig

- Suporte a sua placa de rede
(No kernel, *não* como módulo!)

- Em "Networking options" :

[*] TCP/IP networking
[*] IP: kernel level autoconfiguration
[*] IP: DHCP support
[*] IP: BOOTP support


- Em "File systems --> Network File Systems" :

<*> NFS file system support
[*] Provide NFSv3 client support
[*] Root file system on NFS

Salve o kernel no seu / com chroot (não em /boot) de acordo com o ajuste de pxegrub definido anteriormente. A seguir configure o /etc/fstab de seu cliente sem rede.

Listagem de código 5.11: /etc/fstab

# nano -w /etc/fstab
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0
proc /proc proc defaults 0 0
tmpfs /dev/shm tmpfs nodev,nosuid,noexec 0 0

Você também deve prevenir que o cliente rode uma verificação de sistema de arquivos:

Listagem de código 5.12: Prevenindo que o cliente rode uma verificação de sistema de arquivos

# touch /fastboot
# echo "touch /fastboot" >> /etc/conf.d/local.start

Instale nfs-utils já que seu cliente depende muito dele:

Listagem de código 5.13: Instalando nfs-utils

# emerge nfs-utils

Gerenciador de inicialização. Não instale outro gerenciador de inicialização porque já temos um - pxegrub. Simplesmente termine a instalação e reinicie o servidor. Inicie os serviços que você precisará para iniciar o novo cliente: DHCP, TFTPD e NFS.

Listagem de código 5.14: Iniciando os serviços

# /etc/init.d/dhcp start
# /etc/init.d/in.tftpd start
# /etc/init.d/nfs start

Carregando o novo cliente

Para que o novo cliente carregue devidamente, você precisará configurar a bios e a placa de rede para usar PXE como o primeiro método de boot - antes do CD-ROM ou disquete. Para ajuste com isso consulte os manuais de seu hardware ou website do fabricante. A placa de rede deve obter um endereço IP usando DHCP e baixar a imagem de GRUB PXE usando TFTP. Então, você deve ver um belo menu de inicialização do GRUB em preto e branco onde você irá selecionar o kernel a carregar e apertar Enter. Se tudo estiver ok, então o kernel deverá carregar, montar o sistema de arquivos raiz (root) usando NFS e fornecê-lo com um prompt de log-in. Divirta-se.

6.  Instalando o Gentoo de uma distribuição de Linux existente

Requisitos

Para instalar o Gentoo de sua distribuição de Linux existente você precisa do comando chroot instalado, e ter uma cópia de uma tarball de instalação do Gentoo ou ISO que você quer instalar. Uma conexão de rede é preferível se você quiser mais do que vem na sua tarball. (A propósito, uma tarball é apenas um arquivo terminando em .tbz ou .tar.gz). O autor usou o RedHat Linux 7.3 como o sistema operacional hóspede, mas isso não é muito importante. Vamos começar!

Visão geral

Nós iremos primeiro alocar uma partição para o Gentoo mudando o tamanho de nossa partição de Linux existente, montar a partição, descompactar a tarball na montagem, fazer chroot dentro do pseudo-sistema e começar a construir. Uma vez que o processo de bootstrap estiver completo, nós iremos fazer algumas configurações finais no seu sistema para ter certeza de que ele inicia, e então estamos prontos para reiniciar e usar o Gentoo.

Como devemos abrir espaço para o Gentoo?

A partição raiz (root) é o sistema de arquivos montado em /. Rodar mount rapidamente em meu sistema mostra do que estou falando. Nós também iremos usar df (disk free) para ver quanto espaço tenho restante e como mudarei seu tamanho. Note que não é obrigatório mudar o tamanho de sua partição raiz (root)! Você pode mudar o tamanho de qualquer outra coisa suportada pelo nosso modificador de partições, mas vamos falar disso mais adiante.

Listagem de código 6.1: Informação de sistema de arquivos

# mount
/dev/hdb2 on / type ext3 (rw)
none on /proc type proc (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
none on /dev/shm type tmpfs (rw,nodev,nosuid,noexec)
# df -h 
Filesystem           Size Used Avail Use% Mounted on 
/dev/hdb2            4.0G 1.9G  2.4G  82% /
none		      38M    0    38M   0% /dev/shm 

Como podemos ver, a partição montada como / chamada /dev/hdb2 tem 2.4 gigabytes livres. No meu caso, irei modificá-la para deixá-la com 400Megas de espaço livre, portanto alocando 2 gigabytes para o Gentoo. Nada mal, posso ter várias coisas instaladas. No entanto, penso que mesmo um gigabyte é suficiente para a maioria dos usuários. Bom, vamos particionar essa coisa!

Utilizando o parted para modificar a partição

O parted é um utilitário fornecido pela GNU foundation, um antigo e respeitável projeto grande cujo software você está usando neste momento. Existe uma ferramenta, no entanto, que é extremamente útil agora. É chamada parted, partition editor, e podemos obtê-la em http://www.gnu.org/software/parted/

Nota: Também existem outras ferramentas para modificar partições, mas o autor não tem certeza/interesse se o PartitionMagic(tm) ou outro software deste tipo fazem o que devem. É trabalho do leitor ver se funcionam.

Veja na página o tipo de sistema de arquivos que você quer modificar e veja se o parted pode lidar com ele. Se não, você está com azar, você terá que destruir alguma partição para abrir espaço para o Gentoo, e reinstalar de novo. Vá em frente baixando o software, instale-o. Aqui nós temos um problema. Nós queremos redimensionar nossa partição raiz (root) do Linux, então devemos carregar de um disquete de inicialização um sistema linux minimalístico e usar o parted anteriormente copiado para um disquete para modificar /. No entanto, se você puder desmontar a partição dentro do Linux você tem sorte, você não precisa fazer o seguinte. Simplesmente compile o parted e rode-o em uma partição desmontada que você escolher redimensionar. Aqui está como eu fiz em meu sistema.

Importante: Certifique-se que as operações que você quer fazer em sua partição são suportadas pelo parted!

Pegue o disco de inicialização/raiz do mininux (uma mini distribuição de Linux 2.4 - grátis) em http://mininux.free.fr/uk/, crie um disquete como sugerido na documentação que acompanha o pacote de software e insira um novo disquete no dispositivo para o próximo passo.

Nota: Note novamente que o Linux é sinônimo de "Aqui há mais um jeito de fazer isso". Seu objetivo é rodar o parted em uma partição desmontada para que ela possa fazer seu trabalho. Você pode usar outro disco de inicialização/raiz diferente do mininux. Você pode até não precisar fazer este passo, isto é, somente desmontar o sistema de arquivos que você quer reparticionar em sua sessão do Linux e rodar o parted nela.

Listagem de código 6.2: Utilitário de criação de disco

# mkfs.minix /dev/fd0
480 inodes
1440 blocks
Firstdatazone=19 (19)
Zonesize=1024
Maxsize=268966912

Nós iremos agora proceder com a construção do parted. Se não estiver já baixado e descompactado, faça-o agora e faça cd no diretório correspondente. Agora rode os seguintes comandos para construir o utilitário e copiá-lo para seu disquete.

Listagem de código 6.3: Construindo o disquete de utilitários

#  mkdir /floppy; mount -t minix /dev/fd0 /floppy && 
export CFLAGS="-O3 -pipe -fomit-frame-pointer -static" && ./configure 
&& make && cp parted/parted /floppy && umount /floppy 

Parabéns, você está pronto para reiniciar e redimensionar sua partição. Faça isso somente depois de olhar rapidamente a documentação do parted no website do GNU. A modificação deve durar menos de 30 minutos para os maiores discos-rígidos, tenha paciência. Reinicie seu sistema com o disco de inicialização do mininux (só coloque ele dentro), e uma vez que você fizer log-in, troque o disco no dispositivo com seu disco de utilitários que criamos acima e digite /dev/fd0 /floppy para ter o parted em /floppy. Aí vamos. Rode parted e você poderá redimensionar sua partição. Uma vez que este longo processo terminar, nós estamos prontos para nos divertir realmente, instalando o Gentoo. Reinicie de volta ao seu antigo sistema Linuxa agora. Faça a operação no dispositivo contendo a partição que queremos redimensionar. Por exemplo, se nós quisermos redimensionar /dev/hda3, o dispositivo é /dev/hda.

Listagem de código 6.4: Comandos para rodar uma vez logados no sistema do mininux

# mount /dev/fd0 /floppy 
# cd /floppy; ./parted [drive you wish to operate on]
(parted)  print 
Disk geometry for /dev/hdb: 0.000-9787.148 megabytes
Disk label type: msdos
Minor    Start       End     Type      Filesystem  Flags
1          0.031   2953.125  primary   ntfs        
3       2953.125   3133.265  primary   linux-swap  
2       3133.266   5633.085  primary   ext3        
4       5633.086   9787.148  extended              
5       5633.117   6633.210  logical               
6       6633.242   9787.148  logical   ext3        
(parted)  help resize 
  resize MINOR START END        resize filesystem on partition MINOR

        MINOR is the partition number used by Linux.  On msdos disk labels, the
        primary partitions number from 1-4, and logical partitions are 5
        onwards.
        START and END are in megabytes
(parted)  resize 2 3133.266 4000.000 

Importante: Seja paciente! O computador está trabalhando! Veja o LED de seu gabinete para ver que ele realmente está trabalhando. Isto deve levar entre 2 e 30 minutos.

Uma vez que você tenha redimensionado, carregue seu sistema linux antigo como descrito. Então volte para O Manual do Gentoo: Preparando os discos e siga as instruções. Quando fizer chroot, use os seguintes comandos para limpar seu ambiente:

Listagem de código 6.5: Limpando o ambiente durante o chroot

# env -i HOME=$HOME TERM=$TERM chroot /mnt/gentoo /bin/bash
# /usr/sbin/env-update
# source /etc/profile

Divirta-se!



Imprimir

Atualizado 7 de agosto de 2005

A versão original desta tradução não é mais mantida

Resumo: Este guia é feito como um repositório de métodos de instalação alternativa do Gentoo, para aqueles com necessidades de instalação especiais como a falta de um cdrom ou um computador que não carrega cds.

Gerald Normandin Jr.
Colaborador

Travis Tilley
Colaborador

Oleg Raisky
Colaborador

Alex Garbutt
Colaborador

Alexandre Georges
Colaborador

Magnus Backanda
Colaborador

Faust A. Tanasescu
Colaborador

Daniel Ahlberg
Colaborador

Sven Vermeulen
Editor

Ken Nowack
Revisor

Tiemo Kieft
Editor

Benny Chuang
Editor

Jonathan Smith
Editor

Marcelo Góes
Tradutor

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.