Manual:X86/Instalação/Sistema
Informação do sistema de arquivos
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
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.
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
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:
- 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.
- O segundo campo mostra o ponto de montagem no qual a partição deve ser montada;
- O terceiro campo mostra o tipo de sistema de arquivo usado pela partição;
- 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;
- O quinto campo é usado pelo
dump
para determinar se ele deve checar a necessidade de backup. É normalmente deixado como 0 (zero); - 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).
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:
/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:
/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:
# 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:
# 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.
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)
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.
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:
É 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.
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:
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:
- Corrija o arquivo /etc/conf.d/net com o nome correto da interface de rede (tal como
enp3s0
em vez deeth0
). - Crie um novo link simbólico (como /etc/init.d/net.enp3s0).
- Remova o link simbólico antigo (rm /etc/init.d/net.eth0).
- Adicione o novo ao runlevel default.
- 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
# 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.