Manual:X86/Instalação/Sistema

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:X86/Installation/System and the translation is 100% complete.
X86 Manual
Installation
Sobre a instalação
Escolhendo a mídia
Configurando a rede
Preparando os discos
Instalando o stage3
Instalando o sistema base
Configurando o kernel
Configurando o sistema
Instalando as ferramentas
Configurando o gerenciador de boot
Finalizando
Trabalhando com o Gentoo
Introdução ao Portage
USE flags
Recursos do Portage
Sistema initscript
Variáveis de ambiente
Trabalhando com o portage
Arquivos e diretórios
Variáveis
Misturando ramos de software
Ferramentas adicionais
Árvore customizada do Portage
Recursos avançados
Configuração de rede
Iniciando
Configuração avançada
Uso de rede modular
Rede sem fio
Adicionando funcionalidade
Gerenciamento dinâmico

Nomes de sistemas de arquivos e UUIDs

Tanto o MBR (BIOS) quanto o GPT incluem suporte para nomes e UUIDs do tipo "sistema de arquivo". Esses atributos podem ser definidos em /etc/fstab como alternativa para o comando mount usar quanto tentar encontrar e montar dispositivos de blocos. Nomes de sistemas de arquivos e UUIDs são identificados pelos prefixos LABEL e UUID e podem ser vistos com o comando blkid.

root #blkid
Aviso
Se o sistema de arquivo em uma partição é eliminado, o nome do sistema de arquivos os valores UUID serão alterados ou removidos.

Por sua unicidade, leitores usando tabelas de partição do tipo MBR são recomendados usar UUIDs em vez de nomes para definir os volumes a serem montados em /etc/fstab.

Importante
UUIDs of the filesystem on a LVM volume and its LVM snapshots are identical, therefore using UUIDs to mount LVM volumes should be avoided.

Nomes de partição e UUIDs

Usuários que tomaram a rota GPT tem algumas opções mais 'robustas' disponíveis para definir as partições em /etc/fstab. Nomes de partições e UUIDs podem ser usados em dispositivos formatados com GPT para identificar de forma única as partições dos dispositivos de bloco, independentemente de qual sistema de arquivos foi escolhida para a partição em si. Nomes e UUIDs são identificados pelos prefixos PARTLABEL e PARTUUID respectivamete e podem ser facilmente visualizados no terminal executando o comando blkid:

Output for an amd64 EFI system using the Discoverable Partition Specification UUIDs may like the following:

root #blkid

Enquanto nem sempre seja verdade para nomes de partições, usar uma UUID para identificar uma partição em fstab provê uma garantia que o carregador de boot não irá se confundir quando procurar um dado volume, mesmo se o dispositivo de arquivo de bloco mudar no futuro. Usar os velhos padrões de arquivos de dispositivos de bloco (/dev/sd*N) para definir partições no fstab é arriscado para sistemas que são reiniciados frequentemente e tem dispositivos de blocos SATA adicionados e removidos regularmente.

A nomeação de dispositivos de arquivo de bloco depende de um número de fatores incluindo como e em qual ordem os discos estão conectados ao sistema. Eles podem também aparecer em ordem diferente dependendo de quais dispositivos são detectados pelo kernel durante os estágios iniciais de boot. Com isto em mente, a não ser que alguém tenha intenção de constantemente ajustar a ordem dos discos, usar os dispositivos de arquivos de bloco padrão é uma abordagem simples e direta.

Sobre o fstab

No Linux todas as partições usadas pelo sistema devem ser listadas em /etc/fstab. Esse arquivo contém os pontos de montagem das partições (onde elas se encontram na estrutura do sistema de arquivos), como elas devem ser montadas, quais opções especiais (automáticas ou não, se os usuários podem montá-las ou não, etc.)

Criando o arquivo fstab

Nota
If the init system being used is systemd, the partition UUIDs conform to the Discoverable Partition Specification as given in Preparing the disks, and the system uses UEFI, then creating an fstab can be skipped, since systemd auto-mounts partitions that follow the spec.

O arquivo /etc/fstab usa uma sintaxe do tipo tabela. Cada linha consiste de seis campos separados por espaço (espaço, tabulação ou ambos). Cada campo tem seu próprio significado:

  1. O primeiro campo mostra o dispositivo especial de bloco ou sistema de arquivo remoto a ser montado. Diversos tipos de identificadores de dispositivos para nós de dispositivos especiais de bloco, incluindo o caminho para os arquivos de dispositivos, nomes e UUIDs de sistemas de arquivos, nomes de partição e UUIDs.
  2. O segundo campo mostra o ponto de montagem no qual a partição deve ser montada;
  3. O terceiro campo mostra o tipo de sistema de arquivo usado pela partição;
  4. O quarto campo mostra as opções de montagem usadas pelo mount quando ele montar a partição. Como cada tipo de sistema de arquivos tem suas opções de montagem próprias, os usuários são encorajados a ler a página de manual do mount (man mount) para uma listagem completa. Opções múltiplas são separadas por vírgulas;
  5. O quinto campo é usado pelo dump para determinar se ele deve checar a necessidade de backup. É normalmente deixado como 0 (zero);
  6. O sexto campo é usado pelo fsck para determinar a ordem na qual os sistemas de arquivos devem ser checados se o sistema de arquivo foi desativado adequadamente. O sistema de arquivo raiz deve conter 1 enquanto os demais devem conter 2 (ou 0 se a checagem não for necessária).
Importante
O arquivo /etc/fstab default fornecido pelo Gentoo não é um arquivo fstab válido mas apenas um modelo.
root #nano -w /etc/fstab

DOS/Legacy BIOS systems

Vamos dar uma olhada em como criar as opções para a partição /boot/. Isto é apenas um exemplo, e deve ser modificado de acordo com as decisões de particionamento feitas anteriormente na instalação. Em nosso exemplo de particionamento para x86, o /boot/ é normalmente a partição /dev/sda1, com um sistema de arquivos ext2. Ela precisa ser checada durante o boot, então poderíamos escrever:

FILE /etc/fstabUma linha /boot de exemplo para /etc/fstab
/dev/sda1   /boot     ext2    defaults        0 2

Alguns usuários podem não querer sua partição /boot/ montada automaticamente para aumentar a segurança do sistema. Essas pessoas devem substituir defaults por noauto. Isso significa que esses usuários precisarão montar manualmente essa partição toda vez que precisarem usá-la.

Adicione regras que correspondam ao esquema de particionamento decidido anteriormente e acrescente regras para dispositivos como drives de CD-ROM e, é claro, se forem usadas outras partições ou drives, para esses também.

Abaixo é mostrado um exemplo mais elaborado de um arquivo /etc/fstab:

FILE /etc/fstabUm exemplo de /etc/fstab completo
/dev/sda1    /boot        ext2    defaults,noatime     0 2
/dev/sda2    none         swap    sw                   0 0
/dev/sda3    /            ext4    noatime              0 1
/dev/cdrom   /mnt/cdrom   auto    noauto,user          0 0

/dev/cdrom /mnt/cdrom auto noauto,user 0 0 }}

UEFI systems

Below is an example of an /etc/fstab file for a system that will boot via UEFI firmware:

FILE /etc/fstabA full /etc/fstab example for an UEFI system
# Adjust for any formatting differences and/or additional partitions created from the "Preparing the disks" step
/dev/sda1   /efi        vfat    umask=0077     0 2
/dev/sda2   none             sw                   0 0
/dev/sda3   /            xfs    defaults,noatime              0 1
</div>

<div lang="en" dir="ltr" class="mw-content-ltr">
/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0

DPS UEFI PARTUUID

Below is an example of an /etc/fstab file for a disk formatted with a GPT disklabel and Discoverable Partition Specification (DPS) UUIDs set for UEFI firmware:

FILE /etc/fstabGPT disklabel DPS PARTUUID fstab example
# Adjust any formatting difference and additional partitions created from the "Preparing the disks" step.
# This example shows a GPT disklabel with Discoverable Partition Specification (DSP) UUID set:
PARTUUID=c12a7328-f81f-11d2-ba4b-00a0c93ec93b   /efi        vfat    umask=0077                   0 2
PARTUUID=0657fd6d-a4ab-43c4-84e5-0933c84b4f4f   none            sw                           0 0
PARTUUID=44479540-f297-41b2-9af7-d131d5f0458a   /           xfs    defaults,noatime              0 1

Quando auto é usado no terceiro campo, ele faz com que o comando mount tente reconhecer o tipo de sistema de arquivo. Isso é recomendado para mídias removíveis uma vez que podem ser formatadas com algum sistema de arquivo qualquer. A opção user no quarto campo faz possível a montagem do CD para usuários não root.

To improve performance, most users would want to add the noatime mount option, which results in a faster system since access times are not registered (those are not needed generally anyway). This is also recommended for systems with solid state drives (SSDs). Users may wish to consider lazytime instead.

Dica
Due to degradation in performance, defining the discard mount option in /etc/fstab is not recommended. It is generally better to schedule block discards on a periodic basis using a job scheduler such as cron or a timer (systemd). See Periodic fstrim jobs for more information.

Certifique-se que o arquivo /etc/fstab está correto, salve-o e saia do editor para continuar.

Informação de rede

It is important to note the following sections are provided to help the reader quickly setup their system to partake in a local area network.

For systems running OpenRC, a more detailed reference for network setup is available in the advanced network configuration section, which is covered near the end of the handbook. Systems with more specific network needs may need to skip ahead, then return here to continue with the rest of the installation.

For more specific systemd network setup, please review see the networking portion of the systemd article.

Informação de host e domínio

Uma das escolhas que o usuário deve fazer é dar nome ao seu PC. Isso parece bem fácil, mas muitos usuários têm dificuldades em encontrar um nome apropriado para seu PC com Linux. Para acelerar as coisas, saiba que essa decisão não é definitiva - ela pode ser alterada mais tarde. Nos exemplos abaixo, é usado o nome de host "tux" dentro do domínio "homenetwork".

Set the hostname (OpenRC or systemd)

root #echo tux > /etc/hostname

systemd

To set the system hostname for a system currently running systemd, the hostnamectl utility may be used. During the installation process however, systemd-firstboot command must be used instead (see later on in handbook).

For setting the hostname to "tux", one would run:

root #hostnamectl hostname tux

View help by running hostnamectl --help or man 1 hostnamectl.

Network

There are many options available for configuring network interfaces. This section covers a only a few methods. Choose the one which seems best suited to the setup needed.

DHCP via dhcpcd (any init system)

Most LAN networks operate a DHCP server. If this is the case, then using the dhcpcd program to obtain an IP address is recommended.

To install:

root #emerge --ask net-misc/dhcpcd

To enable and then start the service on OpenRC systems:

root #rc-update add dhcpcd default
root #rc-service dhcpcd start

To enable the service on systemd systems:

root #systemctl enable dhcpcd

With these steps completed, next time the system boots, dhcpcd should obtain an IP address from the DHCP server. See the Dhcpcd article for more details.

netifrc (OpenRC)

Dica
This is one particular way of setting up the network using Netifrc on OpenRC. Other methods exist for simpler setups like Dhcpcd.

Configurando a rede

Durante a instalação do Gentoo Linux, a rede já foi configurada. Porém, a configuração foi para o CD de instalação e não para o ambiente instalado. Agora a configuração de rede será feita para o sistema Gentoo Linux instalado.

Nota
Informações mais detalhadas sobre configuração de rede, incluindo tópicos avançados como bonding, bridging, 802.1Q VLANs e redes sem fio são cobertas na seção de Configuração de Rede no Gentoo.

Toda a configuração de rede está reunida no arquivo /etc/conf.d/net. Ele usa uma sintaxe direta mas talvez não muito intuitiva. Mas não tema, tudo está explicado abaixo. Um exemplo completamente comentado que cobre muitas configurações diferentes está disponível em /usr/share/doc/netifrc-*/net.example.bz2.

Primeiro instale o pacote net-misc/netifrc:

root #emerge --ask --noreplace net-misc/netifrc

O DHCP é usado por default. Para o DHCP funcionar, é necessário instalar um cliente DHCP. Isso é descrito adiante em Ferramentas do Sistema Necessárias.

Se a conexão de rede precisa ser configurada por causa de opções específicas do DHCP ou porque o DHCP não é utilizado, então edite /etc/conf.d/net:

root #nano -w /etc/conf.d/net

Configure ambas as variáveis config_eth0 e routes_eth0 para entrar com a informação de endereço IP e de roteamente:

Nota
É assumido que a interface de rede é chamada eth0. Isso, porém, é muito dependente do sistema. É recomendado assumir que a interface é nomeada da mesma forma que quando o sistema foi inicializado pela mídia de instalação se a mídia de instalação for razoavelmente recente. Mais informações podem ser encontradas em Nomes de Interface de Rede.
FILE /etc/conf.d/netStatic IP definition
config_eth0="192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255"
routes_eth0="default via 192.168.0.1"

Para usar DHCP, defina config_eth0:

FILE /etc/conf.d/netDefinindo DHCP
config_eth0="dhcp"

Por favor veja os arquivos /usr/share/doc/netifrc-*/net.example.bz2 para uma lista de todas as opções disponíveis. Certifique-se de também ler a página de manual (man page) se opções específicas do DHCP precisarem ser configuradas.

Se o sistema tem várias interfaces de rede, então repita os passos acima para config_eth1, config_eth2, etc.

Agora salve a configuração e saia para continuar.

Iniciando automaticamente a rede durante o boot

Para que as interfaces de rede sejam ativadas durante o boot, elas precisam ser adicionadas no runlevel default.

root #cd /etc/init.d
root #ln -s net.lo net.eth0
root #rc-update add net.eth0 default

Se o sistema tem várias interfaces de rede, então os arquivos net.* precisam ser criados assim como fizemos com o net.eth0.

Se após a inicialização do sistema descobrirmos que o nome que usamos para a interface de rede (que está atualmente documentada como eth0) está errado, então execute os seguintes passos para corrigir isso:

  1. Corrija o arquivo /etc/conf.d/net com o nome correto da interface de rede (tal como enp3s0 em vez de eth0).
  2. Crie um novo link simbólico (como /etc/init.d/net.enp3s0).
  3. Remova o link simbólico antigo (rm /etc/init.d/net.eth0).
  4. Adicione o novo ao runlevel default.
  5. Remova o antigo usando rc-update del net.eth0 default.

O arquivo hosts

Agora informe ao Linux sobre seu ambiente de rede. Isso é definido no arquivo /etc/hosts e é utilizado na resolução de nomes de hosts em endereços IP para os hosts que não são resolvidos pelo servidor de nomes.

root #nano -w /etc/hosts
FILE /etc/hostsPreenchendo as informações de rede
# This defines the current system and must be set
127.0.0.1     tux.homenetwork tux localhost
  
# Optional definition of extra systems on the network
192.168.0.5   jenny.homenetwork jenny
192.168.0.6   benny.homenetwork benny

Salve e saia do editor para continuar.

Opcional: Fazendo o PCMCIA funcionar

Usuários de PCMCIA devem agora instalar o pacote sys-apps/pcmciautils.

root #emerge --ask sys-apps/pcmciautils

Informações do sistema

Senha do root

Configure a senha do root usando o comando passwd.

root #passwd

A conta de root é uma toda poderosa, então escolha uma senha forte. Depois uma conta de usuário comum será criada para operações diárias.

Configuração de início e boot

OpenRC

Gentoo (ao menos quando usa OpenRC) usa /etc/rc.conf para configurar os serviços, início, desligamento do sistema. Abra /etc/rc.conf e aproveite todos os comentários no arquivo. Reveja as configurações e mude onde for necessário.

root #nano -w /etc/rc.conf

Em seguida, abra /etc/conf.d/keymaps para manipular a configuração de teclado. Edite-o para configurar e escolher o teclado correto.

root #nano -w /etc/conf.d/keymaps

Tenha um cuidado especial com a variável keymap. Se o mapa de teclado errado for selecionado, resultados estranhos aparecerão durante a digitação.

Finalmente, edite /etc/conf.d/hwclock para definir as opções de relógio. Edite-o de acordo com suas preferências.

root #nano -w /etc/conf.d/hwclock

Se o relógio de hardware não estiver usando UTC é necessário incluir clock="local" no arquivo. Senão o sistema pode apresentar comportamento errático do relógio.

systemd

First, it is recommended to run systemd-machine-id-setup and then systemd-firstboot which will prepare various components of the system are set correctly for the first boot into the new systemd environment. The passing the following options will include a prompt for the user to set a locale, timezone, hostname, root password, and root shell values. It will also assign a random machine ID to the installation:

root #systemd-machine-id-setup
root #systemd-firstboot --prompt

Next users should run systemctl to reset all installed unit files to the preset policy values:

root #systemctl preset-all --preset-mode=enable-only

It's possible to run the full preset changes but this may reset any services which were already configured during the process:

root #systemctl preset-all

These two steps will help ensure a smooth transition from the live environment to the installation's first boot.