Aviso :
Este documento não é válido e não é mais mantido.
|
O método de instalação alternativa do Gentoo Linux
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 |
# 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 |
# 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
# ./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
|
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
- 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!
O conteúdo deste documento está licenciado pela licença Creative Commons -
Attribution / Share Alike.
|