Gentoo Installation · 10 min read · Feb 06, 2026
O Servidor Perfeito - Gentoo 2007.0 - Página 2
3 O Sistema Base
3.1 Inicializando o disco de instalação
Insira seu CD de Instalação Mínima do Gentoo em seu sistema e inicialize a partir dele. Você pode definir algumas opções no carregador de inicialização, mas se você apenas deixá-lo, ele continuará e inicializará o Linux por conta própria.

(Ele usará por padrão um console framebuffer, mas no interesse de capturas de tela menores, eu mudei a opção para usar VGA pressionando F1 e escolhendo o kernel gentoo-nofb.)
Uma carga de texto será exibida na tela enquanto o kernel inicializa e o CD de instalação detecta seu hardware. Em seguida, você será apresentado a uma escolha de mapa de teclas.

Se você estiver usando um teclado dos EUA, pode apenas deixá-lo, ou pressionar Enter e este prompt irá expirar com essa escolha. Eu moro na Grã-Bretanha, então quero o mapa de teclas do Reino Unido.
Mais texto é exibido…

Até que você fique em um prompt de root.

As chances são de que ele encontrou um servidor DHCP durante a detecção e você já está conectado à internet. No entanto, queremos especificar nosso próprio endereço IP imediatamente, então digitamos,
net-setup eth0E passamos pelas opções conforme apropriado:









Agora você está de volta ao prompt de root, como sugerido, você pode querer apenas verificar se sua rede subiu corretamente.
ifconfig
E quaisquer outros comandos que você queira fazer para se certificar de que você tem uma conexão com a internet. Por exemplo (do Manual do Gentoo):
ping -c 3 www.gentoo.orgAgora defina seu hostname temporariamente. Vamos ler isso mais tarde para automatizar algumas etapas posteriores da instalação.
hostname server1.example.com3.2 Fazendo login no ambiente de instalação remotamente
Defina a senha de root. Isso é apenas para o sistema de instalação, não para o sistema final instalado:
passwdE inicie o sshd:
/etc/init.d/sshd startAs chaves do host serão criadas e o daemon sshd será iniciado. Agora você pode fazer login no sistema de instalação do conforto do seu programa de terminal habitual em seu próprio computador. Obviamente, se você preferir, ou tiver que, pode omitir esta etapa e continuar usando o console.
ssh [email protected]Obviamente, isso só funcionará se server1.example.com resolver em seu sistema.

3.3 Configurando o disco do sistema
Esta parte provavelmente será muito diferente em outras arquiteturas. Consulte o Manual do Gentoo se você não estiver em x86 ou amd64, ou se quiser fazer algo diferente do layout padrão sugerido no manual x86.
Para particionar o disco, use parted. Vamos direto ao ponto e configurar o esquema de partição sugerido do Gentoo, e o parted nos permite fazer isso de uma maneira que pode ser mostrada concisamente em texto:
parted /dev/hdaVocê receberá um prompt (parted). Neste prompt, insira os seguintes comandos:
mklabel msdos
mkpartfs primary ext2 0 32
mkpartfs primary linux-swap 32 545
mkpart primary 545 -0
set 1 boot on
printVocê deve ver algo como:
Disco /dev/hda: 5906MB
Tamanho do setor (lógico/físico): 512B/512B
Tabela de Partições: msdos
Número Início Fim Tamanho Tipo Sistema de arquivos Flags
1 32.3kB 32.9MB 32.9MB primary ext2 boot
2 32.9MB 545MB 512MB primary linux-swap
3 545MB 5906MB 5361MB primary
(parted) Digite quit para sair e salvar as alterações.
Já criamos os sistemas de arquivos ext2 e swap nas partições 1 e 2, então só queremos criar o sistema de arquivos ext3 na partição 3.
mke2fs -j /dev/hda3E vamos ativar o swap para nosso ambiente de instalação:
swapon /dev/hda2E montar o sistema de arquivos no qual estamos prestes a instalar.
mount /dev/hda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/hda1 /mnt/gentoo/boot3.4 Preparando o caminho para o Stage 3
Confirme que a data e a hora estão corretas para seu sistema. Se não estiverem, as coisas podem ficar confusas mais tarde.
dateQui Ago 30 13:58:36 UTC 2007O que de fato, na época em que fiz isso, estava um pouco errado, então corrija algo assim:
date 083013542007Agora precisamos baixar o Tarball do Stage 3 e o snapshot do Portage. Em vez de brincar com links ou lynx, vamos apenas usar alguns comandos:
mirrorselect --interactive --output > /tmp/mirror
Selecione os espelhos que forem apropriados para você e selecione OK. Quando você sair, uma linha será escrita em /tmp/mirror com suas seleções. Nós só queremos o primeiro, então:
source /tmp/mirror
MIRRORS=($GENTOO_MIRRORS)
MIRROR=${MIRRORS[0]}
cd /mnt/gentoo
wget ${MIRROR}releases/x86/current/stages/stage3-$(arch)-2007.0.tar.bz2 \
|| wget ${MIRROR}releases/x86/current/stages/stage3-x86-2007.0.tar.bz2
wget ${MIRROR}snapshots/portage-latest.tar.bz2Na verdade, não há uma maneira segura de determinar as partes específicas da arquitetura da URL do stage3 acima, então se você não estiver em x86, consulte o Manual do Gentoo.
Descompacte o tarball do stage.
tar --extract --verbose --bzip2 --preserve-permissions --file stage3-*.tar.bz2Descompacte o snapshot do portage.
tar --extract --verbose --bzip2 --file portage-latest.tar.bz2 --directory /mnt/gentoo/usrVocê pode excluir esses downloads agora, se estiver com pouco espaço.
rm portage* stage*Agora, vou fazer algo quase herético para a comunidade Gentoo e deixar o etc/make.conf em paz! Esse é o arquivo onde coisas como os CFLAGS são configurados, e onde você pode configurá-lo para ser o mais otimizado possível. Eu não vou tocá-lo. Você deve pelo menos verificá-lo para sanidade. Se estiver insano, você pode ter baixado o arquivo de stage errado. Em particular, em x86, a flag -mtune=i686 é definida por padrão mesmo no arquivo stage3 x86 simples, o que pode ser inadequado se você estiver instalando em hardware antigo. Mas ao usar $(arch) estamos esperando evitar quaisquer problemas desse tipo.
vi /mnt/gentoo/etc/make.confVamos apenas adicionar algumas informações que precisamos. Primeiro, os espelhos dos quais o Gentoo vai se baixar. Já buscamos os espelhos de download uma vez, então para economizar a escolha deles novamente, vamos pegar essa seleção e adicionar uma seleção para o espelho rsync.
cat /tmp/mirror >> /mnt/gentoo/etc/make.conf
mirrorselect --interactive --rsync --output >> /mnt/gentoo/etc/make.conf
Agora vamos copiar algumas coisas para /mnt/gentoo a fim de chrootar nele e continuar a instalação. Também vamos copiar a configuração de rede atual para que o sistema instalado tenha a mesma coisa. Este pequeno script escreverá a configuração atual do eth0 no novo formato /etc/conf.d/net.
#!/bin/bash
cat /etc/resolv.conf > /mnt/gentoo/etc/resolv.conf
echo "HOSTNAME=\"$(hostname -f)\"" > /mnt/gentoo/etc/conf.d/hostname
eth0=$(ifconfig eth0 | grep "inet addr")
ip=$(echo $eth0 | cut -f2 -d' ' | cut -f2 -d:)
broadcast=$(echo $eth0 | cut -f3 -d' ' | cut -f2 -d:)
netmask=$(echo $eth0 | cut -f 4 -d' ' | cut -f2 -d:)
gw=$(route -n | grep -e '^0.0.0.0' | unexpand -a | cut -f3)
nservers=$(grep -e '^nameserver' /etc/resolv.conf | cut -f2 -d' ')
sdomains=$(grep -e '^search' /etc/resolv.conf | cut -f2- -d' ')
echo 'modules=( "ifconfig" )' > /mnt/gentoo/etc/conf.d/net
echo "config_eth0=( \"${ip} netmask ${netmask} broadcast ${broadcast}\" )" >> /mnt/gentoo/etc/conf.d/net
echo "routes_eth0=( \"default via ${gw}\" )" >> /mnt/gentoo/etc/conf.d/net
echo "dns_domain_eth0=\"$(hostname -d)\"" >> /mnt/gentoo/etc/conf.d/net
echo "dns_servers_eth0=\"${nservers}\"" >> /mnt/gentoo/etc/conf.d/net
if [ -n "$sdomains" ] ; then echo "dns_search_eth0=\"${sdomains}\"" ; fi >> /mnt/gentoo/etc/conf.d/netDepois, /mnt/gentoo/etc/conf.d/net deve parecer assim, com os valores corretos, é claro.
modules=( "ifconfig" )
config_eth0=( "192.168.1.5 netmask 255.255.255.0 broadcast 192.168.1.255" )
routes_eth0=( "default via 192.168.1.1" )
dns_domain_eth0="example.com"
dns_servers_eth0="192.168.1.1"Usar este formato fará com que o script de inicialização da rede do Gentoo use os dados contidos nele para escrever um novo /etc/resolv.conf, além de configurar a rede em si, para que no futuro haja apenas um arquivo a manter correto. (Copiamos o /etc/resolv.conf do sistema de instalação puramente para uso dentro do ambiente chroot até inicializarmos o sistema instalado.)
Tendo feito isso, podemos completar os preparativos para chroot e entrar.
3.5 Opcional: Instalando temporariamente o vim no ambiente Stage3
O sistema Stage 3 do Gentoo não tem vi. Em vez disso, a prática padrão é usar o editor incluído nano. Se você realmente preferir ter vi, faça o seguinte agora:
VIM=$(which vim)
VIMDIR=$(dirname ${VIM})
cp --dereference ${VIM} /mnt/gentoo${VIM}
ln --symbolic ${VIM} /mnt/gentoo$(dirname ${VIM})/vi(As bibliotecas das quais depende já estão no lugar.)
No entanto, as instruções a seguir presumirão que você não fez isso. Se você fez, você é inteligente o suficiente para substituir o comando que deseja.
3.6 Entrando no ambiente chroot Stage3
mount -t proc none /mnt/gentoo/proc
mount -o bind /dev /mnt/gentoo/dev
chroot /mnt/gentoo /bin/bash
env-update
source /etc/profile
export PS1="(chroot) $PS1"Agora que estamos no ambiente chroot, vamos atualizar o portage para o estado atual.
emerge --syncSe você se preocupa em usar o console da máquina, pode querer definir o mapa de teclas em /etc/conf.d/keymaps. Caso contrário, você pode deixá-lo.
nano --nowrap /etc/conf.d/keymapsAgora definimos nosso fuso horário. Confira o conteúdo de /usr/share/zoneinfo para ver qual fuso horário usar. (Não vamos alterar USE ou o make.profile padrão.) Por exemplo,
cp /usr/share/zoneinfo/Europe/London /etc/localtimeDefina o fuso horário em /etc/conf.d/clock. Basta definir a variável TIMEZONE para o arquivo que você copiou para /etc/localtime anteriormente. Por exemplo,
nano --nowrap /etc/conf.d/clockTIMEZONE="Europe/London"(Não se esqueça de descomentar a linha.)
Você pode precisar definir CLOCK como local. Geralmente não se faz isso, mas é geralmente necessário se você estiver instalando no VMWare e possivelmente em outros ambientes virtuais.
3.7 Instalar o kernel
emerge gentoo-sourcesVamos apenas fazer uma instalação genkernel, para instalar o kernel padrão do Gentoo. Isso é parcialmente para simplicidade deste howto. Se você estiver confortável em construir seus próprios kernels, faça isso seguindo as notas do Manual do Gentoo no Capítulo 7.
emerge genkernel
zcat /proc/config.gz > /usr/share/genkernel/x86/kernel-config-2.6O segundo comando copia a configuração do kernel do disco de instalação para ser nosso kernel atual. Se chegamos até aqui, é uma boa aposta que essa configuração de kernel funciona para nós.
Aqui podemos encurtar algo e nos poupar um passo mais complicado mais tarde. Queremos adicionar suporte a quota à configuração do kernel. O que faremos aqui é adicioná-lo ao arquivo de modelo de configuração que o genkernel usa, para que não percamos a alteração quando atualizarmos o kernel.
nano --nowrap /usr/share/genkernel/x86/kernel-config-2.6Procure por # CONFIG QUOTA is not set e mude para o seguinte (adicionando as duas linhas subsequentes):
CONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not set
CONFIG_QFMT_V2=y Então podemos continuar:
genkernel allIsso pode levar algum tempo. Está construindo suporte para tudo. Eu disse que isso seria uma construção Gentoo genérica.
Nota: se você estiver instalando em um disco SCSI ou SATA, é melhor nesta fase fazer,
genkernel --menuconfig alle selecionar o driver de baixo nível apropriado para a interface SCSI ou SATA à qual seu disco do sistema está conectado, para ser compilado no kernel monolítico em vez de como um módulo. Acredito que deve funcionar se você não fizer isso (carregando o módulo do driver do initrd assim como o disco de instalação), mas atualmente parece que não funciona.
3.8 Configurar sistemas de arquivos
nano --nowrap /etc/fstabAssumindo que você está no mesmo esquema de partição que eu, ou seja: seguindo este guia, substitua /dev/BOOT por /dev/hda1; /dev/ROOT por /dev/hda3; e /dev/SWAP por /dev/hda2. O arquivo alterado deve parecer assim:
[...]
#
# NOTA: Se sua partição BOOT for ReiserFS, adicione a opção notail a opts.
/dev/hda1 /boot ext2 noauto,noatime 1 2
/dev/hda3 / ext3 noatime 0 1
/dev/hda2 none swap sw 0 0
/dev/cdrom /mnt/cdrom audo noauto,ro 0 0
#/dev/fd0 /mnt/floppy auto noauto 0 0
[...] 3.9 Iniciar rede na inicialização.
rc-update add net.eth0 default
rc-update add hostname default3.10 Instalar serviços do sistema
emerge syslog-ng vixie-cron
rc-update add syslog-ng default
rc-update add vixie-cron default3.11 Carregador de inicialização
emerge bootloaderIsso instalará o carregador de inicialização padrão para sua arquitetura. O seguinte presume que você está em x86 ou amd64 e que este carregador de inicialização é o grub. Como esta é uma instalação ultra-genérica de PC, vamos enganar e apenas escrevê-lo. Se o resto deste guia se encaixa no seu sistema, assim deve ser; caso contrário, consulte o Manual do Gentoo, capítulo 10.
echo -e "default 0\ntimeout 5\n\ntitle=GentooLinux\nroot (hd0,0)" > /boot/grub/grub.conf
echo "kernel `ls /boot/kernel*` root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev" >> /boot/grub/grub.conf
echo "initrd `ls /boot/initramfs*`" >> /boot/grub/grub.conf
grep --invert-match rootfs /proc/mounts > /etc/mtab
grub-install --no-floppy /dev/hda3.12 Finalização e reinicialização
rc-update add sshd default
passwdE dê uma senha ao root. Assim, podemos fazer login depois sem ter que ir ao console. Supondo que tudo tenha funcionado.
Saia do chroot e reinicie.
exit
cd
umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo
rebootClaro, você pode precisar remover o CD da unidade. Isso dependerá de qual é a sua ordem de inicialização; mas você pode muito bem se livrar dele; não é mais necessário.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.