Instalando o Gentoo partindo do stage 3, passo a passo
02, jul, 2009
Para aqueles que desejam instalar o Gentoo Linux e não possuam uma experiência com o inglês ou mesmo não querem ler dezenas de páginas do handbook, escrevi este documento com o intuito de facilitar a instalação do Gentoo. O documento está mais para uma receita de bolo, com passo a passo de como instalar o sistema básico e, caso queira, o servidor X. Não entrei em muitos detalhes sobre cada item, fazendo apenas alguns comentários, para que o documento não ficasse muito extenso.
Aguardo críticas e sugestões para manter o documento atualizado, uma vez que o handbook em nossa língua não sofre mais atualizações.
*Para aqueles que desejarem, baixem este documento no formado PDF clicando aqui.
v. 1/7/2009
Por Tales A. Mendonça
Agradecimentos ao jmbsvicetto, desenvolvedor do Gentoo.
obs.: Para quem for utilizar ~arch, use o guia(http://www.gentoo.org/doc/en/openrc-migration.xml) para fazer a atualização/migração para Baselayout2 e OpenRC. Os itens deste documento que serão alterados são: 15, 17.1 e 22.1.
1. Baixar o ISO mínimo de instalação
Link para download: http://gentoo.c3sl.ufpr.br/releases/ (Escolha a sua arquitetura e logo em seguida selecione current/install-*<arch>*-minimal-[versão].iso).
Após baixar o arquivo, verifique se a imagem(ISO) não está corrompida. Se estiver tudo OK, queime em um CD.
1.1. Carregando o LiveCD
Digite gentoo para carregar o sistema normalmente ou escolha outras opções(F1) disponíveis.
obs.: Digitando gentoo no boot do CD, o sistema será carregado com suporte para o kernel 2.6
2. Layout do teclado
Escolha o tipo de layout do teclado compatível com sua máquina. No nosso caso, a opção é 4(br-a), que representa o ABNT2.
3. Configurando a rede
Configure a rede para prosseguir com a instalação. O padrão é a rede iniciar utilizando DHCP, que já deverá estar configurada, caso não esteja, utilize o comado net-setup eth0 para configurá-la.
obs: Substitua eth0 pela sua interface de rede.
Para testar a rede, use o comando ping www.google.com, por exemplo.
4. Configurando os discos
Utilizar o cfdisk é uma boa escolha, ao invés do fdisk.
Partições que serão criadas:
EXT2 /boot 100MB /dev/sda1
SWAP swap 502MB (memória RAM atual é de 512MB) /dev/sda1
EXT4 / restante do disco /dev/sda2
obs.: Não é preciso criar uma partição /boot separada, a não ser que você esteja configurando um servidor(para obter mais segurança e não corromper o diretório de boot).
Nota.: Após criar as partições no cfdisk, será definido um nome+número das partições (sda1, sda2, sda3, sdb4, sdd…).
4.1. Criar os tipos de arquivos, EXT2, EXT4 e SWAP(área de troca)
(Criando o sistema de arquivos EXT2)
# mke2fs /dev/sda1
(Criando o sistema de arquivos EXT3)
# mke2fs -j /dev/sda3
(Criando o sistema de arquivos EXT4)
mkfs.ext4 /dev/sda2
(Criando e ativando a partição swap)
mkswap /dev/sda1 swapon /dev/sda1
4.2. Montando as partições criadas para instalar o stage e o portage
(Montando o sistema raiz(/))
mount /dev/sda2 /mnt/gentoo
(Criando a partição boot)
# mkdir /mnt/gentoo/boot
(Montando a partição boot dentro do raíz)
# mount /dev/sda1 /mnt/gentoo/boot
5. Instalando o stage 3
obs.: Configure a data, com o comando date, se a mesma estiver incorreta.
5.1. Baixando o stage 3 direto da internet
cd /mnt/gentoo links http://gentoo.c3sl.ufpr.br/releases/
Navegue até ../<arquitetura>/current e baixe o arquivo stage3-i686-[versão].tar.bz2 com a versão mais nova. Aguarde, o arquivo tem ~119 MB.
obs.: Eu defini baixar e fazer todo o procedimento com o stage compilado para arquitetura i686. Fique avontade para escolher um mais adequado.
(Após baixar, verifique se o arquivo não está corrompido. O arquivo.DIGESTS também deve ser baixado)
md5sum -c stage3-i686-*.tar.bz2.DIGESTS
(Descompactando o stage3)
tar -xvjpf stage3-*.tar.bz2
(Removendo o source baixado. Você não irá mais precisar dele, talvez em outra instalação.)
rm -f stage3-*.tar.bz2*
6. Instalando o portage
(Entre no diretório raíz, caso não esteja)
cd /mnt/gentoo
(Baixe a versão mais recente do portage no link abaixo)
links http://gentoo.c3sl.ufpr.br/releases/snapshots/current/
(Verifique se o arquivo está corrompido. O arquivo.md5sum também deve ser baixado)
md5sum -c portage-latest.tar.bz2.md5sum(Extraindo os arquivos do portage)
tar -xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
(Removendo o source baixado. Você não irá mais precisar dele, talvez em outra instalação.)
rm -f portage-latest.tar.bz2*
7. Configurando as opções de compilação no “/etc/make.conf”
nano -w /mnt/gentoo/etc/make.conf
CHOST="i686-pc-linux-gnu" # Mais informações sobre a variável CHOST(http://www.gentoo.org/doc/en/change-chost.xml). CFLAGS="-march=native -O2 -pipe" CXXFLAGS="${CFLAGS}" LINGUAS="pt_BR" ACCEPT_KEYWORDS="x86" # Troque x86 pela arquitetura que deseja usar. ACCEPT_LICENSE="*" # Aceita automaticamente licença de programas como o java e o VirtualBox
obs.: A opção -march=native é válida apenas para versões do gcc 4.3 em diante. Caso o seu gcc seja uma versão anterior a 4.3, você deverá informar a arquitetura correta correspondente ao seu CPU. Se tiver em dúvida ou indeciso em qual utilizar, deixe como -march=i686 e todos os seus pacotes serão compilados para arquitetura i686.
Se for utilizar distcc(http://www.gentoo.org/doc/en/distcc.xml), não utilize -march=native.
(Configurando mirrors para a variável GENTOO_MIRRORS)
mirrorselect -i -o >> /mnt/gentoo/etc/make.conf
(Configurando um mirror para a variável SYNC)
mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf
8. Copiando o DNS do liveCD para a partição montada
cp -L /etc/resolv.conf /mnt/gentoo/etc/
9. Montando os sistemas de arquivos
(Montando o sistema de arquivos /proc)
mount -t proc none /mnt/gentoo/proc
(Montando o sistema de arquivos /dev)
mount -o bind /dev /mnt/gentoo/dev
10. Entrando no novo ambiente com chroot
chroot /mnt/gentoo /bin/bash
(Criando um novo ambiente com variáveis de ambiente)
env-update >> Regenerating /etc/ld.so.cache...
(Carregando as variáveis de ambiente na memória)
source /etc/profile
(*Opcional. Apenas para indicar que está em um ambiente chroot)
export PS1="(chroot) $PS1"
11. Configurando o portage
(Atualiza a lista de pacotes do portage)
emerge --sync12. Atualizando o perfil *Opcional
Atualiza ou troca de profile.
(Listando os profiles disponíveis)
eselect profile list
(Escolhendo um profile. n = número do profile)
eselect profile set n13. Configurando a variável USE
(Aqui você pode encontrar todas as flags da variável USE disponíveis)
less /usr/portage/profiles/use.desc
(Segue um exemplo da USE que deve ser configurada no /etc/make.conf)
nano -w /etc/make.conf
(A variável USE abaixo irá construir um ambiente voltado para o ambiente kde)
USE="-gtk -gnome qt4 kde dvd alsa cdr"
(Mais um exemplo. O sistema será voltado tanto para kde como para o gnome)
USE="avi cdr crypt cups dvd dbus encode gnome gtk gtk2 hal jpeg kde mp3 mpeg ncurses nls opengl png qt4 sdl spell tcpd truetype X truetype unicode"
Dica: Configure apenas as USE globais no ‘/etc/make.conf’.
14. Configurar localidade no glibc *Opcional
nano -w /etc/locale.gen
(Configurando para o nosso idioma)
pt_BR ISO-8859-1 pt_BR.UTF-8 UTF-8
15. Configurando o timezone
(Procure por um timezone compatível com a sua localidade)
ls /usr/share/zoneinfo
(copiando o timezone Sao_Paulo para o “/etc/localtime”)
cp /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
16. Instalando o fonte do kernel
emerge -av gentoo-sources17. Utilizando o genkernel para compilar o kernel
obs.: O genkernel serve apenas para ajudar no processo de compilação e instalação do kernel, mas cabe a você configurá-lo manualmente de acordo com o hardware da sua máquina.
(Instalando o genkernel)
emerge -av genkernel(Copiando a configuração do kernel usada no liveCD para onde o genkernel irá procurar a configuração do kernel padrão. arch = arquitetura, exemplo: x86)
# zcat /proc/config.gz > /usr/share/genkernel/*<arch>*/kernel-config-2.6
zcat /proc/config.gz > /usr/share/genkernel/arch/*<arch>*/kernel-config
(Compilando o kernel com o genkernel)
genkernel --menuconfig --oldconfig --splash --install all
obs.: Para a opção “–splash” funcionar, deve ser ativada no kernel.
17.1. Adicionando módulos no arranque do sistema
(*Opcional, Adicionar módulos para serem carregados na inicialização do sistema)
nano -w /etc/modules.autoload.d/kernel-2.6
# Módulos carregados durante o boot
nvidia
vboxdrv18. Configurando as partições(fstab)
(Editando o fstab para configuração)
nano -w /etc/fstab
obs.: Opções como CD/DVD podem ser removidas pois o DBUS é responsável por gerenciar mídias removíveis.
# --- Início da Configuração --- #
/dev/sda1 /boot ext2 defaults,noatime 1 2
/dev/sda1 none swap sw 0 0
/dev/sda2 / ext4 noatime 0 1
# --- Fim da Configuração --- #
19. Configurando o hostname(nome da máquina)
nano -w /etc/conf.d/hostname
20. Configurando a rede
(Editando o arquivo para configuração da rede)
nano -w /etc/conf.d/net
# --- Início da Configuração --- # config_eth0=( "192.168.1.2 netmask 255.255.255.0 brd 192.168.0.255" ) routes_eth0=( "default via 192.168.1.254" ) #config_eth0=( "dhcp" ) # Para utilizar como dhcp é preciso instalar o cliente dhcp(emerge -av dhcpcd) # --- Fim da Configuração --- #
obs.: Mais informações podem ser encontradas no arquivo ‘/etc/conf.d/net.example’.
20.1. Iniciando a rede no arranque
rc-update add net.eth0 default
21. Configurando os hosts *Opcional
nano -w /etc/hosts
22. Informações sobre o sistema
(Configura a senha do root)
passwd(Configura informações como: gerenciador gráfico, editor, ambiente gráfico padrão)
nano -w /etc/rc.conf
(Configura o layout do teclado)
nano -w /etc/conf.d/keymaps
KEYMAP="-u br-abnt2"
22.1. Configura o relógio
(Configura o relógio buscando informações direto da internet)
nano -w /etc/conf.d/clock
CLOCK="UTC" TIMEZONE="America/Sao_Paulo" CLOCK_SYSTOHC="yes"
23. Instalando ferramentas necessárias para o sistema
23.1. Guarda informações do sistema; um registrador do sistema
(Instalando o syslog-ng)
emerge syslog-ng
(Carregando o syslog-ng no boot)
rc-update add syslog-ng default
23.2. Executando tarefas programadas
(Instalando o vixie-cron)
emerge vixie-cron
(Carregando o vixie-cron no boot)
rc-update add vixie-cron default
23.3. Encontrando qualquer arquivo no sistema de forma rápida
(Instalando o slocate)
emerge slocate
23.4. Instalando o PPP *Opcional
Instale apenas se você for utilizar conexão discada, exemplo o velox.
(Instalando o ppp)
emerge o ppp
24. Instalando o gerenciador de boot
(Instalando o gerenciador de boot grub)
emerge -av grubSegue um exemplo da configuração do grub, comentado:
nano -w /boot/grub/grub.conf
#--- Início da Configuração---# default 0 # Dispositivo padrão de carregamento timeout 10 # Tempo de espera até que uma das opções de boot seja escolhida e carregada. splashimage=(hd0,0)/boot/grub/splash.xpm.gz # Carrega a tela de splash title Gentoo Linux 2.6.28-r5 root (hd0,1) # hd0,0 = /dev/sda1, hd0,1 = /dev/sda2 kernel /boot/kernel-genkernel-x86-2.6.28-gentoo-r5 real_root=/dev/sda3 # Opções opcionais relacionadas com a saida do genkernel # vga=791 splash=silent,theme:default console=tty1 quiet #initrd /boot/initramfs-genkernel-x86-2.6.24-gentoo-r5 # *Opcional # Use as opções abaixo caso tenha um dual-boot #title Windows XP #rootnoverify (hd0,5) #makeactive #chainloader +1 #--- Fim da Configuração ---#
(Criando um mtab no ambiente chroot)
grep -v rootfs /proc/mounts > /etc/mtab
(Instalando o grub)
grub-install --no-floppy /dev/sda
25. Recarregando o sistema
*Aqui você já terá o sistema básico do Gentoo instalado, ou seja, o mínimo do mínio para o sistema ser carregado. Sem Servidor X, claro, o mesmo nem foi instalado.
exit && reboot
livecd root # cd
livecd root # umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo
livecd root # reboot
** Resumindo, neste pondo você terá nada mais do que um sistema butável.
*** IMPORTANTE: Para manter o sistema limpo de pacotes desnecessários, rode os 3 comandos abaixo após a instalção e de preferência 1 vez por mês, para manter um sistema íntegro e atualizado.
(Atualiza todo o sistema)
emerge -NDuatv world(Remove pacotes desnecessários. Cuidado com este comando, ele poderá remover o seu kernel se o mesmo não estiver atualizado)
emerge -av --depclean
(Reconstrói a estrutura do sistema, procurando por pacotes(bibliotecas) quebrados)
revdep-rebuild
Primeiras Configurações após o primeiro boot…
*Opcional – Instalando e configurando o ccahe
“O ccache é um cachê para compilações rápidas. Quando você compila um programa, ele fará cachê de resultados intermediários para que, quando você recompilar o mesmo programa, o tempo de compilação seja drasticamente reduzido. Em compilações comuns isso pode resultar em compilações de 5 a 10 vezes mais rápidas.”
emerge -av ccache(Adicionar ccache na variável FEATURES no make.conf)
FEATURES="${FEATURES} ccache"
(Definir o tamanho do ccache no make.conf)
CCACHE_SIZE="2G"
(Definir o diretório que será utilizado para fazer cache)
CCACHE_DIR="/var/tmp/ccache"
(O local ‘/var/tmp/ccache’ é o diretório padrão do ccache no portage)
*Atualizar o GCC
emerge -uav1 gcc
(Lista os profiles do gcc disponíveis)
gcc-config -l(Substituir “i686-pc-linux-gnu-4.3.2″ para a versão
do GCC e ajustes de CHOST para o que foi atualizado)
gcc-config i686-pc-linux-gnu-4.3.2 source /etc/profile
(Reconstruindo a biblioteca libtool)
emerge -av1 libtool(Reconstruindo o sistema para usufruir do novo compilador)
emerge -NDuaetv world26. Adicionando um usuário
useradd -m -G users,wheel,audio,video,usb,cdrom -c "Mari Mendonça" mari passwd mari
27. Ajustando a linguagem padrão do sistema
(O arquivo 02locale não existe, mas será criado agora)
nano -w /etc/env.d/02locale
(Adicione o conteúdo abaixo)
LANG="pt_BR.UTF-8" LC_COLLATE="C"
(exportando as variáveis para o sistema)
export LANG="pt_BR.UTF-8" export LC_COLLATE="C"
(Carregando o sistema com as variáveis exportadas)
env-update && source /etc/profile
*Pacotes recomendáveis instalar
app-portage/gentoolkit
app-portage/eix
app-portage/autounmask
** Configurando o X
1. Coloque o hal para ser iniciado no boot
rc-update add hald default
2. Comece colocando algumas variáveis de ambiente no /etc/make.conf
(Configura os dispositivos. Configure de acordo com os seus dispositios)
INPUT_DEVICES="evdev keyboard mouse"
(Configura o driver de video, para utilizar mais de um, coloque com espaço)
VIDEO_CARDS="nv nvidia"
(Instalando o Xorg-server)
emerge -av xorg-server2. Configurando o xorg.conf
(Gera o xorg.conf de forma automática)
Xorg -configureou
(Passo a passo para configurar o xorg já gerando um xorg.conf)
xorgconfig
(Testa para ver se está tudo funcionando bem, mouse e teclado)
X -config /root/xorg.conf.new
(Cuidado ao testa-lo de uma vez pois poderá travar o seu X e precisará reiniciar o computador)
(copia o arquivo do xorg.conf para o seu devido lugar)
cp /root/xorg.conf.new /etc/X11/xorg.conf
(Configure de acordo que achar melhor)
Fonte: Handbook do gentoo.org
2 Comentários para esta publicação
1 Trackback or Pingback for this entry
-
Instalando o gentoo, agora em texto :) » LINN – Liquuid Is Not a Nerd o/
julho 26th, 2009 on 9:24 am[...] filho não é meu, é do Tales vale a pena ler : http://tales.linuxhard.org/blog/instalando-o-gentoo-partindo-do-stage-3-passo-a-passo/ Tags: gentoo, instalacao, stage 3 Leave a [...]
julho 22nd, 2009 on 11:05 am
Tutorial bacana!!! Brevemente farei uma instalação Gentoo na minha máquina, para aprender mais a estrutura e o fluxo de funcionamendo de uma distro avançada como o Gentoo!
julho 26th, 2009 on 9:21 am
Inspirado no seu post, fiz um vídeo : http://www.liquuid.net/?p=242 , nada comparado com seu nivel de detalhamento da instalação, mas válido como material de apoio.