Primeira coisa que temos de fazer é baixar o live-cd que será usado na instalação, caso os Srs já possuam algum podem usa-lo.
Não irei ensinar a baixar e queimar um live-cd pois creio que já passamos desta fase, como dizia o apóstolo Paulo: "Quando menino fazia coisas de menino, agora como homem faço coisas de homem."
Se estamos querendo instalar o
Gentoo, o mínimo que se espera é que tenhamos o conhecimento básico para tal, isso inclui saber baixar e queimar uma imagem.iso.
Abra o
gparted que vem embarcado em 99,99% dos live-cds e crie uma, duas, três, ou mais partições.
Uma partição se os Srs forem usar somente /, duas se forem usar / e /swap ou / e home, e três ou mais se forem criar mais pontos de montagens além dos já citados.
Dentro do ambiente live, abram o terminal, "invoquem" o root (se informem como fazer de acordo como live que estão usando, mas geralmente é sudo su), e vamos pra guerra.
Usem o comando fdisk para verificar se está tudo certo com as partições criadas no gparted.
# fdisk -l
Uma vez verificados, vamos criar os pontos de montagem e montá-los:
# mkdir /mnt/gentoo
# mount /dev/sdX /mnt/gentoo (o X aqui será subsistido pelo número da sua partição /)
# mkdir /mnt/gentoo/boot (se criou uma partição para /boot separada)
# mount /dev/sdX /mnt/gentoo/boot
# mkdir /mnt/gentoo/home (se criou uma partição para a /home separada)
# mount /dev/sdX /mnt/gentoo/home
# mkswap /dev/sdaX (o X significa a partição swap, caso os Srs usem uma)
# swapon /dev/sdaX
Depois de ter feito os procedimentos acima temos nossas partições montadas, e nossa swap ativada, agora vamos baixar e descompactar o stage e o portage.
Naveguem até ponto de montagem do Gentoo.
# cd /mnt/gentoo
Depois rode os comandos abaixo.
# wget http://gentoo.c3sl.ufpr.br/releases/amd64/autobuilds/current-stage3-amd64/stage3-amd64-20180510T214502Z.tar.xz (para o stage)
# wget http://gentoo.c3sl.ufpr.br/releases/snapshots/current/portage-latest.tar.bz2 (para o portage)
O links acima estão setados para ambientes 64bits, caso os senhores utilizem um sistema 32bits entrem no site abaixo e façam o download compatível com vossa arquitetura.
Uma vez baixados vamos extrai-los.
# tar xpf current-stage3-amd64/stage3-amd64-20180510T214502Z.tar.xz (para o stage)
# tar -jxpvf portage-latest.tar.bz2 -C /mnt/gentoo/usr (para o portage)
Não altere o comando da extração, tendo em vista que os mesmos tem de ser extraídos preservando suas respectivas permissões.
Depois, se os senhores desejarem podem apagar os arquivos do stage e portage baixados.
Agora iremos preparar o ambiente, para entrarmos e começarmos a instalação.
# cp -L /etc/resolv.conf /mnt/gentoo/etc/ (copiando o resolv.conf para o novo ambiente garantimos o acesso a internet quando usarmos o chroot)
# mount -t proc proc /mnt/gentoo/proc
# mount --rbind /sys /mnt/gentoo/sys
# mount --rbind /dev /mnt/gentoo/dev
Para garantir plena funcionalidade no nosso novo ambiente precisamos tornar alguns pontos de montagem disponíveis nele, fizemos isso através dos comandos acima.
- /proc/ que é um pseudo sistema de arquivos (ele se parece com arquivos normais, mas na verdade é gerado "no voo"), do qual o kernel do Linux expõe informação para o ambiente.
- /sys/ que é um pseudo sistema de arquivos, como o /proc/ o qual era para substituir, sendo mais estruturado que o /proc/.
- /dev/ é um sistema de arquivos normal, parcialmente gerenciado pelo gerenciador de dispositivos do Linux (normalmente o udev), que contém todos os arquivos de dispositivos.
A localidade /proc/ será montada em /mnt/gentoo/proc/, enquanto as outras duas são montadas como "bind". Isso significa que, por exemplo, /mnt/gentoo/sys/ será, na verdade, /sys/ (sendo na verdade apenas um segundo ponto de entrada para o mesmo sistema de arquivos), enquanto /mnt/gentoo/proc/ é uma nova montagem ("instância", para usar o termo) do sistema de arquivo.
A parte acima foi totalmente retirada do Handbook do Gentoo, portanto não é de minha autoria, abaixo segue o link:
Caso os senhores pretendam usar o "demoníaco" systemd, será necessário aplicar mais esses dois comandos.
# mount --make-rslave /mnt/gentoo/sys
# mount --make-rslave /mnt/gentoo/dev
Vamos entrar de vez no novo ambiente através do chroot.
# chroot /mnt/gentoo /bin/bash (entramos de vez no ambiente Gentoo agora)
# export PS1="(chroot) $PS1" (para não nos confundirmos e esquecer onde estamos)
# source /etc/profile (para carregar as informações do /etc/profile no novo ambiente)
Agora vamos escolher um profile, isso é essencial para carregar as flags use necessárias, sem ter de incluir manualmente na compilação do pacote ou de forma global no make.conf.
# eselect profile list (lista os profiles disponíveis)
# eselect profile set "número do profile" (marca o profile desejado)
Por exemplo:
[13] default/linux/amd64/17.0/selinux (stable)
[14] default/linux/amd64/17.0/hardened (stable)
[15] default/linux/amd64/17.0/hardened/selinux (stable)
[16] default/linux/amd64/17.0/desktop (stable) *
[17] default/linux/amd64/17.0/desktop/gnome (stable)
[18] default/linux/amd64/13.0/desktop/plasma (stable)
Se quisermos o profile desktop é só setarmos o profile 16.
# eselect profile set 16
Se quisermos o profile Gnome é só setarmos o profile 17.
# eselect profile set 17
Após isso iremos configurar a linguagem.
# echo "pt_BR ISO-8859-1" >> /etc/locale.gen
# echo "pt_BR.UTF-8 UTF-8" >> /etc/locale.gen
# nano /etc/env.d/02locale
Cole o as linhas abaixo e salve.
LANG="pt_BR.UTF-8"
LC_COLLATE="C"
Agora vamos atualizar e salvar.
# env-update && source /etc/profile
# locale-gen
Uma vez setado o profile desejado, vamos editar o arquivo
/etc/portage/make.conf.
# nano /etc/portage/make.conf
Esse arquivo é fundamental para que o Gentoo cumpra seu papel e funcione bem pois ele é o responsável de passar para o portage as instruções para a compilação. Sugiro que os Srs tirem um tempo e leiam a wiki do Gentoo referente ao make.conf.
Por hora podem usar o meu como exemplo, o meu é uma mescla de vários que eu garimpo pela internet.
CFLAGS="-march=native -fomit-frame-pointer -O2 -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"
FEATURES="parallel-fetch parallel-install sandbox "
ACCEPT_KEYWORDS="amd64"
MAKEOPTS="-s -j5" #número de nucleos +1, se tem quatro núcleos vira 5
ACCEPT_LICENSE="*" #aceitar automaticamente as licenças
AUTOCLEAN="yes" #limpar automaticamente
GENTOO_MIRRORS="http://gentoo.c3sl.ufpr.br/ http://gentoo.lcc.ufmg.br"
INPUT_DEVICES="evdev keyboard synaptics mouse"
VIDEO_CARDS="amdgpu radeonsi" #se usa intel, troque por intel, ou nvidia etc
AUDIO_CARDS="intel" #troque pela sua placa de áudio
USE="xft -gpm" #aqui você coloca as flags globais que você deseja ou não na compilação dos pacotes
EMERGE_DEFAULT_OPTS="--ask --jobs=5 --load-average=5 --autounmask-write=y --with-bdeps=y --quiet-build=y --keep-going=y" #instruções extras para compilação
FEATURES="ccache parallel-fetch parallel-install sandbox"
CCACHE_DIR="/var/tmp/ccache"
CCACHE_SIZE="2G"
LINGUAS="pt_BR" #pacotes compilados para o português Brasil
Configurado o make.conf, vamos sincronizar a árvore do portage.
# emerge --sync
E atualizar o sistema:
# emerge -auDNtv @world