Pular para o conteúdo

Introdução

O Debian versão 9.5 foi lançado em julho de 2018 (a versão 9 foi lançada em junho de 2017) é uma distribuição GNU[1]/Linux[2] de uso geral, iniciada em janeiro de 1994 sob a versão 0.91.

O Debian tem ainda grande tradição em moderação quanto a inclusão de novidades em seus lançamentos, para tanto tem três versões estão continuamente em manutenção, a estável, a teste, e a instável.

estável (ou stable)

Imagem do personagem Stretch do filme Toy History 3A distribuição estável contém a última versão oficialmente lançada do Debian.

Esta é a versão de produção do Debian, a que nós primeiramente recomendamos que seja usada.

A atual distribuição estável do Debian é a versão 9, codinome stretch. Ela foi inicialmente lançada como versão 9 em 17 de junho de 2017 e sua última atualização, versão 9.5, foi lançada em 14 de julho de 2018.

testing

imagem do personagem Buster do filme Toy History 3A distribuição testing contém pacotes que ainda não foram aceitos na versão estável, mas estão na fila para tanto. A principal vantagem de usar esta distribuição é que ela possui versões mais recentes de software.

A atual distribuição testing é a buster.

instável (ou unstable)

imagem do personagem Sid de A Era do GeloA distribuição instável é onde o desenvolvimento ativo do Debian ocorre. Geralmente, esta distribuição é utilizada por desenvolvedores e por aqueles que gostam de viver no limite.

A distribuição instável é sempre chamada sid.

 

O Debian conta com mais de 51.000 pacotes instaláveis contendo softwares pré-compilados o que torna a instalação fácil.

Veremos aqui aspectos de sua instalação.

Instalação

Toda instalação pode ser dividida em três períodos, antes, durantes e depois da instalação.

  • O antes inclui definir a distribuição a utilizar, criar o plano de instalação, obter a distribuição, ultimar preparativos da instalação.
  • A própria instalação, ou o durante, consiste em algumas, ou muitas, operações que visam particionar e formatar discos rígidos, transferir a imagem do sistema para o disco, efetuar configurações básicas.
  • O depois pode ser resumido a fazer ajustes conforme necessidades específicas de aplicação, instalar pacotes adicionais e efetuar configurações mais detalhadas.

O objetivo deste texto é instalar o Debian 9.5.

Os requisitos de instalação estão na Tabela 1 a seguir:

Tabela 1: Requisitos de instalação do Debian 9.5
Tipo de Instalação RAM (mínimo) RAM (recomendado) Disco Rígido
Sem desktop 128 megabytes 512 megabytes 2 gigabytes
Com Desktop 256 megabytes 1 gigabyte 10 gigabytes
Fonte: Manual de Instalação Debian Disponível em: <https://www.debian.org/releases/stable/amd64/ch03s04.html.pt>, acesso em 22/out./2018

Um requisito adicional da instalação é acesso à Internet para obtenção de pacotes de repositório remoto conforme requeridos.

 

Pré-instalação

A Tabela 2 a seguir explicita algumas informações que poderão ser necessárias ou solicitadas durante a instalação do Debian

Tabela 2: Informações necessárias para instalação
Hardware Informação Que Pode Necessitar
Discos Rígidos Quantos possui.
A sua ordem no sistema.
IDE (também conhecido como PATA), SATA ou SCSI.
Espaço livre disponível.
Partições.
Partições onde outros sistemas operativos estão instalados.
Interfaces de rede Tipo/modelo de interfaces de rede disponíveis.
Impressora Modelo e Fabricante.
Placa de Vídeo Tipo/modelo e fabricante.
Fonte: Manual de Instalação Debian Disponível em: <https://www.debian.org/releases/stable/amd64/ch03s03.html.pt>, acesso em 22/out./2018

Configurações de rede

Se o seu computador estiver ligado a uma rede permanente (i.e., uma ligação Ethernet ou equivalente — não uma ligação dialup/PPP), que seja administrada por outro, deve perguntar ao administrador da rede do sistema as seguintes informações:

  • O seu hostname (você poderá ser decidir à sua maneira).
  • O seu nome de domínio.
  • O endereço IP do seu computador.
  • A máscara de rede para utilizar na sua rede.
  • O endereço IP do gateway do sistema para onde o seu sistema deve ser encaminhado, se a sua rede tiver um gateway.
  • O sistema na sua rede que você deverá utilizar como servidor DNS (Domain Name Service).

No URL <https://www.debian.org/mirror/list> estão disponibilizados os endereços de diversos espelhos para o download do Debian onde é possível escolher o mais apropriado para baixar a imagem do “disco de instalação”. Tomando como base a imagem de 14 de julho de 2018, seu tamanho é de 640 M bytes (671.088.640 bytes) o que dependendo da velocidade de conexão e do espelho selecionado pode demorar entre 40 segundos e até 1 hora, ou mais, de download.

Esta imagem pode ser gravada em um CD ou DVD. Se seu sistema for um Windows 7™, ou mais recente, as mídias ópticas podem ser gravadas sem programas adicionais.

O planejamento da instalação envolve determinar o particionamento pretendido das unidades de disco, o padrão de teclado disponível para o console, localização geográfica e fuso horário pretendidos para uso e operação.

A seguir de forma simplificada apresentam-se os itens planejados para esta instalação:

Tabela 3: Plano de instalação simplificado
  1. Teclado ABNT2
  2. Localização do sistema América do Sul, Brasil, São Paulo
  3. Fuso horário UTC -3:00
  4. Particionamento do disco de 58G bytes:
    • Partição 1 sda1       física      57 GB          /             ext4        bootable
    • Partição 2 sda2       lógica     1 GB
    • Partição 5 sda5       lógica     1 GB                          swap

Nota: Para efeito deste artigo foi adotado um particionamento extremamente simplista

 

Efetuando a instalação

Carregando a mídia com a imagem da distribuição e iniciando o computador será apresentado um menu de seleção de ações, como mostra a Figura 1 a seguir.

Figura  1: Boot do CD de instalação do Debian

Imagem do menu inicial do CD de instalação

As cinco opções de menu do CD de instalação do Debian

As Opções e suas ações são:

  • Graphical install executa a instalação em ambiente gráfico.
  • Install executa a instalação em modo texto.
  • Advanced options acessa diferentes opções de instalação para peritos.
  • Help acessa as telas de ajuda.
  • Install with speech synthesis instala em modo texto incluindo síntese de voz.

Utilizando a segunda opção do menu inicia-se a instalação do Debian.

A partir daqui serão pouco mais de xx passos para concluir a instalação e então passar à pós instalação.

Inicialmente é oferecida a escolha de idioma para o processo de instalação, que será também o idioma padrão do sistema, como ilustrado na Figura 2 a seguir.

Figura  2: Seleção de idioma

imagem do menu de seleção de idioma

Configuração de Localização

Uma vez que, foi indicado o idioma Português brasileiro, a rotina de instalação passa a sugerir uma lista de países lusófonos para selecionar em qual o sistema estará localizado, como a Figura 3 ilustra.

Figura  3: Seleção de localização no mundo

imagem do menu de países de localização do sistema

Deve-se reparar que o idioma da interface já passou a ser exibido em português conforme a seleção efetuada logo anteriormente.

Observe que se o idioma de instalação se mantivesse com inglês, o menu de localização seria diferente, conforme mostrado na Figura 4.

Figura  4: Seleção de localização padrão

imagem do menu de países de localização completo

Configuração de layout do teclado

Ao selecionar português e Brasil, nas telas anteriores, o teclado pega carona e se configura, mas sempre é bom saber qual a opção mais apropriada no Debian para teclado ABNT2, como mostra a Figura 5.

Figura 5: Configuração de layout de teclado

imagem do menu de layout do teclado

Nesse ponto inicia uma coleta e transferência de diversos componentes do Debian, como ilustra a Figura 6.

Figura  6: Coleta e carregamento de componentes do Debian

imagem do andamento da carga de componentes do sistema

Configuração da rede

Em seguida a instalação chega ao ponto de efetuar a configuração automática básica da rede, situação em que se a rede tiver um servidor DHCP ativo, será toda automática e o programa instalador, solicitará duas informações ao operador da instalação, conforme ilustram as Figuras 7 e 8. Primeiro o hostname para a máquina e depois o domínio de rede.

Figura  7: Definição de hostname

imagem da solicitação de nome da máquina

Figura  8: Definição de domínio

imagem da solicitação de nome do domínio

Definição de senha do superusuário (root)

É um fator de segurança que a senha do root seja forte e neste ponto da instalação é solicitado o fornecimento (e confirmação) da senha do root.

São recomendações comuns que a senha tenha algumas características como: ter dez ou mais caracteres; conter letras maiúsculas, minúscula e números, além de caracteres especiais.

A Figura 9 mostra esse momento da instalação.

Figura  9: Configuração de senha do root

imagem da seleção e senha de root

Configurar usuários adicionais

A seguir é solicitado que seja cadastrado ao menos um usuário adicional, sendo quatro telas em sequência, a primeira solicitando nome real do usuário, a segunda sua senha, a terceira a confirmação e a quarta o username, como mostra a Figura 10 a seguir, toda a sequência sob o título “Configurar usuários e senhas”.

Figura  10: Configuração de usuários e senhas

Solicitação de nome de novo usuário

O próximo passo é configurar o fuso horário como mostra a Figura 11.

Figura  11: Configuração de zona de tempo

imagem da seleção de time-zone

Particionamento de discos

O particionamento de discos pode ser efetuado automaticamente pelo programa instalador do Debian, que oferece três maneiras automatizadas de particionamento:

  • Usar o disco inteiro;
  • Usar o disco inteiro configurando LVM;
  • Usar o disco inteiro configurando LVM e criptografia;
  • Manual.

Conforme ilustra a Figura 12.

Figura  12: Particionamento de discos fase 1

Seleção de modo de particionamento de disco

O próximo passo é indicar o disco a ser particionado e em seguida escolher o esquema de particionamento entre: disco inteiro numa só partição /; duas partições, uma exclusiva para /home e /; quatro partições, /home, /var, /tmp e /. Estas opções estão representadas na Figura 13.

Figura  13: Distribuição de partições

imagem da escolha de particionamento automático

Nas duas próximas telas será confirmado o esquema de particionamento escolhido e em seguida a confirmação de gravação no disco. Esta última confirmação é devida ao risco de perda irreversível de dados que pode vir a ocorrer em caso de gravação da tabela de partição por engano.

Após isso a instalação básica do sistema prossegue até a próxima fase de configuração do apt.

Configuração do apt

A configuração do apt envolve a leitura dos pacotes contidos no(s) disco(s) de instalação. Após ler o disco no leitor é exibida uma tela questionando se mais discos devem ser lidos, como mostra a Figura 14.

Figura  14: Leitura de discos adicionais

imagem do questionamento de ler mais mídias

Neste ponto o instalador questiona de é desejado usar um espelho de rede de repositório (prática comum em instituições com muitos sistemas executando Debian).

Seguindo adiante com a configuração do apt e complementos, o instalador perguntará, se é desejado participar das estatísticas de utilização de pacotes instaláveis conforme mostra a Figura 15. Esta é uma decisão é 100% do operador da instalação.

Figura  15: Participação do concurso de pacotes

imagem do questionamento de participação nas estatísticas de uso de pacotes

O próximo passo é escolher o software a ser instalado. Será apresentado um menu, conforme a Figura 16, no qual, em uma visão minimalista, escolhe-se apenas a opção “utilitários do sistema padrão” e ao prosseguir os pacotes selecionados serão instalados.

Figura  16: Seleção de software para instalação

imagem do menu de seleção de pacotes de software a instalar

Vencida esta etapa o instalador chega a fase de instalação do gerenciador de partida (boot) e será questionado se o ‘GRUB’ deve ser instalado no registro mestre de inicialização (MBR) ou em outra locação (veja mais sobre isso em https://ubuntuforum-pt.org/index.php?topic=4055.0). Feita a escolha será solicitado informar em qual disco será instalado o GRUB, como mostra a Figura 17 adiante.

Figura  17: Seleção de disco físico para instalação

imagem da seleção de local de instalação do GRUB

Após estas interações a instalação do software selecionado prossegue até sua conclusão efetiva.

Ao chegar ao termo da instalação é apresentada uma mensagem solicitando a retirada do disco de instalação da unidade e permitido que se continue com a reinicialização da máquina para então carregar o Debian do disco rígido do sistema.

Primeiro Boot

Ao reiniciar é apresentado o menu de seleção de sistema para boot, conforme a Figura 18 ilustra.

Figura  18: Primeiro boot pós instalação

imagem da tela de boot do sistema instalado

Como só há o Debian instalado, não surgem outras opções de sistema para inicializar. Passado o tempo de espera pela opção de iniciação, será apresentado o prompt de login do sistema. Após a realização do primeiro login (neste caso como root) serão mostrados o banner da versão do kernel e alguns avisos legais.

Figura  19: Primeiro login

imagem do primeiro login

A primeira ação importante é editar o arquivo sources.list[3] onde estão relacionados os repositórios de pacotes para instalação e atualizações do sistema. Para tanto utilize o comando vi /etc/apt/sources.lst (pode ser usado o nano ao invés do Vi).

Figura  20: Configuração final do arquivo /etc/apt/sources-list

imagem do arquivo sources.list configurado

A Figura 20 acima, exemplifica uma configuração possível para o arquivo sources-list.

Em seguida a isso será promovida uma atualização do Debian recém instalado, com os comandos:

Código  1: Comandos para atualização do Debian
apt update
apt -y -f full-upgrade
apt -y autoremove

 

Pós-instalação

Dependendo da aplicação para o sistema diferentes pós-instalações podem ser executadas, incluindo a instalação de pacotes específicos.

A seguir algumas possibilidades de configuração pós-instalação que não necessariamente direcionam, ou limitam, a aplicabilidade de um sistema.

  • Endereço IP fixo
  • Pacote adicionais
    • tree
    • dos2unix
    • openssh-server
    • sudo
  • Ajustes no FS para trabalho em equipe
  • Ajustes do skel e seus componentes
  • Geração de chaves de autenticação RSA para usuários

Segue um breve extrato destes ajustes de configuração, no entanto, para todos os efeitos o plano de configuração deveria conter mais algumas informações relacionadas a seguir.

Plano de Instalação complemento

Endereçamento IP: Interface de rede 1

Tabela 4: Complemento do plano de instalação
Item Valor
IP Modo: Estático
Endereço IP: 192.168.0.8
Máscara: 255.255.255.0
Broadcast: 192.168.0.255
Gateway: 192.168.0.1
DNS1: 8.8.8.8
DNS2: 8.8.4.4
DNS3: 192.168.0.1

Instalação de pacotes adicionais: tree; vi; sudo e open-ssh

Ajustar máscara de rede para trabalho colaborativo em equipe (UMASK = 002)

Ajustar alguns aliáses mínimos (ll=ls -lA) para novos usuários

IP Fixo

Por padrão as interfaces de rede iniciam operando em DHCP visando sistemas desktop, então se faz necessário configurar as interfaces de rede para que operem sob IP estático.

É usual utilizar IP estático em servidores, que leva a utilização das ferramentas mais tradicionais de configuração.

Editar a configuração padrão contida no arquivo /etc/network/interfaces. Após a edição o arquivo deve resultar semelhante ao mostrado na Figura 21, assumindo que o sistema utiliza a denominação de nomes de interface previsíveis, não haverá uma interface com nome do tipo eth0, senão com o nome do tipo enp0s3.

Figura  21: Aspecto do arquivo interfaces após a edição

imagem do conteúdo do arquivo interfaces

O arquivo /etc/resolv.conf, poderá conter o seguintes valores:

Código  2: Conteúdo de resolv.conf
nameserver 192.168.0.1
nameserver 8.8.8.8
nameserver 8.8.4.4

Ativar a configuração usando a sequência de comandos:

Código  3: Comandos para reconfigurar a interface de rede
Ifdown enp0s3
Ifup enps0

Instalação de pacotes adicionais

Como já é de conhecimento o Debian utiliza o Advanced Packaging Tool (apt) para gerenciamento de pacotes e atualizações, na fase final de instalação foi executada a sincronização com os repositórios do Debian. Esta sincronização deve ser realizada com certa frequência para que eventualmente não se perca uma atualização importante, principalmente das qualificadas como de segurança.

O Debian foi instalado de maneira muito enxuta e, portanto, não conta com alguns itens que podem vir a ser de extrema utilidade na administração e uso do sistema, devido a isso é recomendado que alguns pacotes adicionais sejam instalados, já outros são apenas recomendáveis.

Um pacote de grande importância é o openssh.

openssh – Serviço de ssh para acesso remoto ao sistema

Instala-se com o comando apt -y install ssh

Outro pacote muito relevante é o sudo que será de grande valia na administração do sistema.

sudo – Troca de usuário para root e executa comando (switch to root and do it)

Instala-se com o comando apt -y install sudo

Quando instalar o sudo torna-se desejável adicionar um usuário, aquele eleito para ser o administrador do sistema, ao grupo sudo, com o comando mostrado a seguir

Código  4: Comando de adição de usuário a grupo
addgroup user sudo

Eventualmente algumas dependências podem não estar instaladas, então com a adição da opção -f pode-se forçar a resolução, portanto, instalação de dependências.

Os pacotes recomendáveis são tree e dos2unix.

vim – Editor de texto melhorado (a instalação não inclui a versão improved)

Instala-se com o comando apt -y install vim.

tree – Comando que exibe de forma visual a árvore de diretórios

Instala-se com o comando apt -y install tree.

locate – Procura arquivos por nome.

Instala-se com o comando apt -y install locate.

Nota: pré-carga do banco de dados com o comando updatedb.

dos2unix – Comando de conversão do padrão de fim de linha DOS/Mac/Unix

Instala-se com o comando apt -y install dos2unix.

Ajustes do skel e seus componentes

O diretório /etc/skel, e seu conteúdo, é o modelo para replicação ao criar um novo usuário, portanto personalizar este diretório pode simplificar consideravelmente o esforço de inclusão de novos usuários, que por sua vez poderão personalizar seus diretórios home a seu gosto.

O arquivo .bashrc pode ser editado para ter o seguinte conteúdo aproximado:

Código  5: Alterações sugeridas para o arquivo .bashrc no skel
(aproximadamente da linha 75 em diante)

# Habilita suporte a cores de ls e adiciona aliases uteis
if [ -x /usr/bin/dircolors ]; then
        test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
        #alias ls='ls --color=auto'
 
        alias grep='grep --color=auto'
        alias fgrep='fgrep --color=auto'
        alias egrep='egrep --color=auto'
fi
 
# Erros e avisos coloridos no GCC
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
 
# Mais alguns aliases de ls
alias ll='ls -AlF'
alias la='ls -A'
alias l='ls -CF'

Ajustes no FS para trabalho em equipe

O comportamento padrão do sistema de arquivos (file system ou fs) pode não ser apropriado para o trabalho em equipes, situação que pode ser alterada com a edição do arquivo /etc/login.defs e com a reconfiguração de direitos de usuários concedendo direito de escrita a grupos.

Código  6: Comandos de configuração de UMASK e direitos no file system (FS)
# vi etc/login.defs

Fazendo:

      UMASK       0002

# find /home -mindepth 2 | xargs chmod -R g+rw
# find /home -mindepth 2 -type d | xargs chmod -R g+rwxs

Nesta altura da pós-instalação pode ser recomendável efetuar um reboot da máquina para que todas estas alterações entrem em operação efetiva.

Geração de chaves de autenticação RSA para usuários

Criar chaves RSA pública e privada dos usuários de uso geral é uma forma de poder utiliza-los em processos automatizados devido à dispensa de fornecimento de senha em acessos remotos.

Para gerar as chaves há o comando ssh-keygen, e para implantar a chave pública em outro servidor há o comando ssh-copy-id.

Gerar o par de chaves de cada usuário estando logado como o usuário, com o comando:

Código  7: Comando de geração de chaves de autenticação RSA
# ssh-keygen -t rsa

Ainda logado com cada usuário, implantar as chaves públicas nos servidores remotos devidos com o comando:

Código  8: Comando de implantação de chave RSA pública em servidor remoto
ssh-copy-id -i ~/.ssh/id_rsa.pub login@servidor

É importante observar que o arquivo id_rsa contém a chave RSA privada e que deve ficar protegido contra acessos indevidos, por isso apenas o proprietário pode ter direitos de leitura sobre ele.

É igualmente importante ressaltar que este processo de autorização de acesso é unidirecional e para que seja iniciado pelo outro servidor deve ser implantada sua chave pública no servidor local.

 

Conclusão

Agora com o sistema instalado e operativo, contando com um mínimo de componentes, pode ser configurado para aplicações específicas diversas.

 

 


[1] GNU é um sistema operacional e uma extensa coleção de softwares de computador. O GNU é composto inteiramente de software livre, a maioria dos quais é licenciada sob a Licença Pública Geral (GPL) do Projeto GNU. O GNU é um acrônimo recursivo para "GNU Não é Unix!".

[2] The Linux kernel is an open-source monolithic Unix-like computer operating system kernel

[3] No URL <https://debgen.simplylinux.ch/>, é possível fazer a geração automática de conteúdo para diversas configurações

 

 

Introdução

A cada dia que passa torna-se mais e mais comum termos uma rede de computadores presente em nosso ambiente, seja de trabalho, de laser, e mesmo doméstico.

Em qualquer dessas situações a acessibilidade com a Internet é mandatória, no entanto, por vezes certo nível de isolamento torna-se necessário pelos mais diversos motivos: segurança de dados; restrição de acesso a sites indesejados; isolamento de máquinas sensíveis a ataques de hackers; etc.

Para dar sustentação para soluções a essas necessidades algumas máquinas tem de ser equipadas com mais de uma interface de rede, que por sua vez exigirão configurações distintas.

É comum ser necessário uma máquina dessas necessitar de uma interface configurada para utilização de IP fixo e outra de IP dinâmico. Este artigo abordará a configuração de uma máquina com Arch Linux, que supra exatamente esta necessidade, sendo extensível a mesma solução para mais interface na mesma máquina quando necessário.

 

Configuração

Prévias da Instalação

O Arch Linux admite um utilitário de linha de comando para operações de inspeção e configuração de rede denominado netctl que trabalha conjuntamente ao systemd.

Inicialmente deve ser instalado o pacote do netctl, para tanto utiliza-se o comando mostrado a seguir:

Código  1: Instalação do pacote netctl

$ sudo pacman -S netctl

Listagem 1: Instalação do pacote netctl

$ sudo pacman -S netctl
[sudo] senha para administrator:
resolvendo dependências...
procurando por pacotes conflitantes...
Pacotes (1) netctl-1.18-1
Tamanho total instalado:  0,09 MiB

:: Continuar a instalação? [S/n] s
(1/1) verificando chaves no chaveiro          [##################] 100%
(1/1) verificando integridade do pacote       [##################] 100%
(1/1) carregando arquivos do pacote           [##################] 100%
(1/1) verificando conflitos de arquivo        [##################] 100%
(1/1) verificando espaço em disco disponível  [##################] 100%

:: Processando alterações do pacote...
(1/1) instalando netctl                       [##################] 100%
Dependências opcionais para netctl
    dialog: for the menu based wifi assistant
    dhclient: for DHCP support (or dhcpcd)
    dhcpcd: for DHCP support (or dhclient) [instalado]
    wpa_supplicant: for wireless networking support [instalado]
    ifplugd: for automatic wired connections through netctl-ifplugd
    wpa_actiond: for automatic wireless connections through netctl-auto
    ppp: for PPP connections
    openvswitch: for Open vSwitch connections

:: Executando hooks pós-transação...
(1/2) Reloading system manager configuration...
(2/2) Arming ConditionNeedsUpdate...

 

Os arquivos de configuração de rede ficam na árvore /etc/netctl, e no subdiretório examples há algo entorno de 20 modelos de arquivos de configuração, cada um para uma categoria de situações possíveis como: conexão ethernet de IP dinâmico, ethernet de IP estático, conexão sem fio com segurança WPA de IP estático e etc. Verifique a variedade com o comando mostrado abaixo:

Código  2: Verificando modelo de configuração

$ ls /etc/netcl/examples/

Observe as possibilidades, neste artigo serão utilizados os modelos ethernet-dhcp e ethernet-static na configuração de duas interfaces de rede do sistema.

Listagem 2: Modelos disponíveis em netctl

$ ls /etc/netctl/examples/
bonding          macvlan-dhcp    tunnel         wireless-wep
bridge           macvlan-static  tuntap         wireless-wpa
ethernet-custom  mobile_ppp      vlan-dhcp      wireless-wpa-config
ethernet-dhcp    openvswitch     vlan-static    wireless-wpa-configsection
ethernet-static  pppoe           wireless-open  wireless-wpa-static

 

A seguir é mandatório determinar os nomes das interfaces de rede disponíveis no sistema. Com o comando a seguir obtém-se uma relação das interfaces reconhecidas presentes.

Código  3: Examinando interface de rede instaladas

$ ip link

E resposta recebe-se um relatório com esta aparência

Listagem 3: Relatório de interfaces de rede

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:e1:48:19 brd ff:ff:ff:ff:ff:ff
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:26:74:49 brd ff:ff:ff:ff:ff:ff


Observa-se que as interfaces recebem a nova nomenclatura de interfaces previsíveis[1] no plano de instalação pode/deve ser prevista a aplicação de cada uma das interfaces, conforme exemplificado a seguir

Tabela 1: Plano de instalação e configuração

Interface Denominação Tipo Aplicação
1 enp0s3 IP Fixo Rede local como servidor
2 enp0s8 IP Dinâmico Rede externa e/ou Internet

 

Desta forma a interface enp0s3 será configurada para operar em IP fixo e a interface enp0s8 para operar em IP dinâmico.

Configuração da Interface com IP Fixo

Tomando por base o modelo de arquivo de configuração para ethernet estático (/etc/netctl/examples/ethernet-static) cria-se em /etc/netctl/ um arquivo para a configuração da interface a ser ajustada, segundo o plano de instalação enp0s3. Constitui boa prática denominar o arquivo com o “nome” da interface. Conteúdo do arquivo enp0s3[2].

Listagem 4: Conteúdo do arquivo de configuração da interface enp0s3

Description='Conexao estatica basica de ethernet'
Interface=enp0s3
Connection=ethernet
IP=static
Address=('192.168.0.9/24')
Gateway=('192.168.0.1')
DNS=('8.8.8.8' '8.8.4.4' '192.168.0.1')
TimeoutUp=10
SkipNoCarrier=yes

Nota: A linha SkipNoCarrier consta para não sinalizar falha caso o cabo não esteja conectado.

O valor da cláusula Interface= é a designação da interface sendo configurada.

Para iniciar automaticamente a interface no momento de boot efetuar o primeiro comando da sequência abaixo, e para iniciar imediatamente a interface efetuar o segundo comando da sequência.

Código  4: Comandos de habilitação e iniciação da interface de rede enp0s3

$ sudo netctl enable enp0s3
$ sudo netctl start enp0s3

Desativação do serviço DHCP cliente

A parada e desabilitação do serviço DHCP se efetua com os comandos abaixo.

Código  5: Sequência de comandos de desativação do serviço cliente DHCP

$ sudo systemctl stop dhcpcd
$ sudo systemctl disable dhcpcd

Configuração da Interface com IP Dinâmico

Tomando por base o modelo de arquivo de configuração para ethernet dinâmico (/etc/netctl/examples/ethernet-dhcp) cria-se em /etc/netctl/ um arquivo para a configuração da interface a ser ajustada, segundo o plano de instalação enp0s8. Constitui boa prática denominar o arquivo com o “nome” da interface. Conteúdo do arquivo enp0s8.

Listagem 5: Conteúdo do arquivo de configuraçãoda interface enp0s8

Description='A basic dhcp ethernet connection'
Interface=enp0s8
Connection=ethernet
IP=dhcp
#DHCPClient=dhcpcd
#DHCPReleaseOnStop=no
## for DHCPv6
#IP6=dhcp
#DHCP6Client=dhclient
## for IPv6 autoconfiguration
#IP6=stateless
SkipNoCarrier=yes

Nota: A linha SkipNoCarrier consta para não sinalizar falha caso o cabo não esteja conectado.

O valor da cláusula Interface= é a designação da interface sendo configurada.

Para iniciar automaticamente a interface no momento de boot efetuar o primeiro comando da sequência abaixo, e para iniciar imediatamente a interface efetuar o segundo comando da sequência.

Código  6: Comandos de habilitação e iniciação da interface de rede enp0s8

$ sudo netctl enable enp0s8
$ sudo netctl start enp0s8

Reiniciar e confirmar configurações

Após cumpridas as etapas referidas acima, reinicie o sistema para comprovar com o comando ip addr que a configuração efetuada é ativada no boot do sistema.

Abaixo o aspecto esperado do relatório do comando.

Listagem 6: Relatório da configuração de interfaces de rede

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
 inet6 ::1/128 scope host 
    valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
 link/ether 08:00:27:e1:48:19 brd ff:ff:ff:ff:ff:ff
 inet 192.168.0.9/24 brd 192.168.0.255 scope global enp0s3
 valid_lft forever preferred_lft forever
 inet6 2804:14c:113:8052:a00:27ff:fee1:4819/64 scope global dynamic mngtmpaddr
    valid_lft 3599sec preferred_lft 3599sec
 inet6 fe80::a00:27ff:fee1:4819/64 scope link
    valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
 link/ether 08:00:27:26:74:49 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.87/24 brd 192.168.0.255 scope global noprefixroute enp0s8
    valid_lft forever preferred_lft forever
 inet6 2804:14c:113:8052:a00:27ff:fe26:7449/64 scope global dynamic mngtmpaddr
    valid_lft 3599sec preferred_lft 3599sec
 inet6 fe80::a00:27ff:fe26:7449/64 scope link
    valid_lft forever preferred_lft forever

 

Conclusão

Com as configurações esplanadas é possível gerir sistemas com inúmeras interfaces de rede, viabilizando a constituição de diversas aplicações que necessitam mais de uma interface de rede na máquina, como firewalls, proxy-servers, gateways, entre tantas outras possibilidades.

 

Referências

Arch Linux. ArckWiki. Disponível em <https://wiki.archlinux.org/index.php/Main_page>, acesso em 10 de out. de 2018

BRITO, Samuel Henrique Bucke. Nova nomenclatura de Interfaces Previsíveis no Linux. BLOG LabCisco, 2015.  Disponível em <http://labcisco.blogspot.com/2015/11/nova-nomenclatura-de-interfaces.html>, acesso em 10 de out. de 2018

GKIOKA, Ioanna; JAHODA, Mirek; HERVES, Jana; et. al. 8.3. UNDERSTANDING THE PREDICTABLE NETWORK INTERFACE DEVICE NAMES. In: Networking Guide. Red Hat Customer Portal. Disponível em <https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-understanding_the_predictable_network_interface_device_names>, acesso em 11 de out. de 2018

KUMAR, Senthil. How To Configure Static And Dynamic IP Address In Arch Linux. OSTechNix, 2017. Disponível em <https://www.ostechnix.com/configure-static-dynamic-ip-address-arch-linux/>, acesso em 10 de out. de 2018


[1] Predictable Network Interfaces Names, vide mais informações em https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-understanding_the_predictable_network_interface_device_names

[2] enp0s3 – onde en corresponde a ethernet, p0 coresponde a pci bus 0, e s3 corresponde a  slot 3

Introdução

Arch Linux é uma distribuição GNU /Linux de uso geral, compilada exclusivamente para a arquitetura Intel x86_64 (em janeiro de 2017 foi anunciada a descontinuação do suporte a arquitetura i686) empenhada em fornecer as últimas versões estáveis da maioria dos softwares, seguindo um modelo de lançamento contínuo (rolling-release).

Arch Linux se baseia em cinco diretrizes: simplicidade; modernidade; pragmatismo; foco no usuário; versatilidade.

A instalação padrão é um sistema base mínimo, configurado pelo usuário para adicionar apenas o que seja propositalmente necessário.

Se você:

  • não tem habilidade, tempo, ou desejo para se dedicar a uma distribuição GNU/Linux do tipo "faça você mesmo";
  • precisa de suporte a uma arquitetura diferente de x86_64;
  • insiste em usar uma distribuição que só fornece software livre conforme definido pela GNU;
  • acredita que um sistema operacional deve se autoconfigurar, vir pronto para usar e incluir um conjunto padrão completo de softwares e ambiente de área de trabalho na mídia de instalação;
  • não deseja uma distribuição GNU/Linux de lançamento contínuo (rolling release);
  • Provavelmente você pode não querer usar o Arch e está satisfeito com seu sistema operacional atual.

O Arch Linux segue o FHS (em português, hierarquia de sistema de arquivos) para sistemas de arquivos usando o gerenciador de serviço systemd.

O Arch não foi projetado para nenhum tipo de uso específico (distribuição de uso geral). Em vez disso, ele é projetado para um determinado tipo de usuário. O Arch visa usuários competentes que gostam de sua natureza faça você mesmo (DIY) e que a exploram para moldar o sistema para atender às suas necessidades exclusivas. Portanto, nas mãos de sua base de usuários alvo, o Arch pode ser usado praticamente para qualquer propósito. Muitos usam o Arch em seus desktops e estações de trabalho. E, claro, o archlinux.org é executado no Arch.

Veremos aqui aspectos de sua instalação.

Instalação

Toda instalação pode ser dividida em três períodos, antes, durantes e depois da instalação.

O antes inclui definir a distribuição a utilizar, criar o plano de instalação, obter a distribuição, ultimar preparativos da instalação.

A própria instalação, ou o durante, consiste em algumas, ou muitas, operações que visam particionar e formatar discos rígidos, transferir a imagem do sistema para o disco, efetuar configurações básicas.

O depois pode ser resumido a fazer ajustes conforme necessidades específicas de aplicação, instalar pacotes adicionais e efetuar configurações mais detalhadas.

Para elaboração deste texto teremos como objetivo instalar o Arch Linux.

Pré-instalação

No URL <https://www.archlinux.org/download/> estão disponibilizados os endereços de diversos espelhos para o download do Arch Linux onde é possível escolher o mais apropriado para baixar a imagem do “disco de instalação”. Tomando como base a imagem de 1º de setembro de 2018, seu tamanho é de 571 M bytes (598.736.896 bytes) o que dependendo da velocidade de conexão e do espelho selecionado pode demorar entre 40 segundos e até 20 minutos, ou mais, de download.

Esta imagem pode ser gravada em um CD, um DVD, ou um flash drive (pen-drive) para efetuar a instalação. Se seu sistema for um Windows 7, ou mais recente, as mídias ópticas podem ser gravadas sem programas adicionais, já para gravar em flash drives um programa adicional, por exemplo o rufus (download em <https://rufus.akeo.ie/>), ou outro equivalente, será necessário.

O planejamento da instalação envolve determinar o particionamento pretendido das unidades de disco, o padrão de teclado disponível para o console, localização geográfica e fuso horário pretendidos para uso e operação.

A seguir de forma simplificada apresentam-se os itens planejados para esta instalação:

Tabela 1: Plano de instalação simplificado

Plano de Instalação Arch Linux

Layout do TecladoABNT2
Localização América do Sul; Brasil; São Paulo
Fuso horárioUTC -3:00
Particionamento1 - sda1 física 500 MB /boot ext4
2 - sda2 física 3,5 GB /var ext4
3 - sdb1 física 10 GB / ext4
4 - sdc1 física 2G swap
NOTA: Para efeito deste artigo foi adotado um particionamento simplista

Um requisito adicional da instalação é acesso à Internet para obtenção de pacotes de repositório remoto conforme requeridos.

Efetuando a instalação

Carregando a mídia com a imagem da distribuição e iniciando o computador será apresentado um menu de seleção de ações, como mostra a Figura 1 a seguir.

Tela com menu inicial do Live CD Arch Linux
Figura 1: Boot do Live CD do Arch Linux

As seis opções de menu do Live CD do Arch Linux

Boot Arch Linux (x86_64)
Boot existing OS
Run Mentest86+ (RAM test)
Hardware Information (HDT)
Reboot
Power Off

As ações de cada opção são:

Boot Arch Linux (x86_64) executa o sistema contido na mídia, com a qual faremos as operações de instalação nesta oportunidade.

Boot existing OS executa o sistema presentemente instalado nos discos do sistema.

Run Mentest86+ (RAM test) roda o diagnóstico de memória.

Hardware Information (HDT) executa detecção de hardware e exibe suas informações.

Reboot reinicializa a máquina que contém a mídia.

Power Off efetua o desligamento da máquina.

Utilizando a primeira opção do menu inicia-se o Arch Linux do Live CD e obtém-se o prompt de comando com credenciais de root.

Tela do processo de iniciação do Arch Linh
Figura 2: Processo de boot do Arch Linux do Live CD
Prompt de comando do Live CD Arch Linux, com o usuário root logado automaticamente
Figura 3: Prompt de comando como root autologado no Arch Linux do Live CD

A partir daqui serão pouco mais de 35 passos para concluir a instalação e então passar à pós instalação.

 

Configuração de teclado

Uma vez que, por padrão, a configuração de teclado é o layout americano e o plano de instalação solicita teclado no padrão ABNT2 é recomendável iniciar por essa configuração de forma a facilitar a operação do teclado do console.

É possível verificar os layouts disponíveis na árvore de diretório /usr/share/kbd/keymaps/ onde estão todos os arquivos de mapeamento de layout de teclado disponíveis no Arch Linux, que atualmente somam pelo menos 216 deles como mostra a saída do comando a seguir que lista todos os mapeamentos disponíveis:

Código  1: Exibição de mapas de teclado

# ls /usr/share/kbd/keymaps/**/*.map.gz

A configuração é efetivada com o comando mostrado a seguir:

Código  2: Comando de seleção de mapa do teclado

# loadkeys br-abnt2

 

Configuração de caracteres exibíveis

De forma semelhante aos layouts de teclado, há diversos conjuntos de caracteres exibíveis diferentes, em função das características idiomáticas diversas a serem contempladas.

Para a localização do sistema, segundo o plano de instalação, o conjunto de caracteres que melhor se adequa é o denominado lat0-16, que é assumido a partir do comando mostrado abaixo:

Código  3: Comando de seleção de conjunto de caracteres

# setfont lat0-16

 

Configurar o locale (localização)

A localização do sistema como solicitado no plano de instalação leva à necessidade de ajustar o arquivo locale.gen (gravado no diretório /etc/) utilizado como base de configuração para o comando de mesmo nome.

Por padrão o ajuste en_US.UTF-8 UTF-8 está habilitado e em cumprimento ao plano de instalação deve-se ‘descomentar’ (eliminar o caractere # do início da linha) a linha contendo pt_BR.UTF-8 UTF-8, correspondente à localização desejada.

Para tanto deve-se utilizar o editor de texto de maior familiaridade para levar a cabo a alteração. O Live CD do Arch conta com o nano e com o vi instalado e operativos.

Exemplos de comando para edição do arquivo de configuração:

Código  4: Edição o arquivo de geolocalização

# nano /etc/locale.gen

# vi /etc/locale.gen

Criação do arquivo de configuração de idioma

Uma vez ajustado o arquivo locale.gen, pela execução do comando locale-gen são criados os necessários arquivos de localização para o sistema.

Em seguida deve-se exportar a variável LANG com o novo valor (pt_BR.UTF-8) e opcionalmente gerar o arquivo locale.conf (no diretório /etc) com a mesma definição de variável.

A sequência de comando é mostrada abaixo

Código  5: Comandos de ajuste idiomático

# locale-gen
# export LANG=pt_BR.UTF-8
# echo "LANG=pt_BR.UTF-8" > /etc/locale.conf

 

Conexão à Internet via cabo ou Wi-Fi

Por padrão a conexão a cabo para rede vem habilitada, no entanto, pode ser conveniente garantir essa habilitação. Isto pode ser feito com a utilização do comando dhcpcd, nos moldes a seguir para forçar uso de IPv4 ou de IPv6.

Código  6: Comandos de ativação de subsistema de rede fiada

#dhcpcd --ipv4only

#dhcpcd --ipv6only

Se a instalação da máquina provê conexão por Wi-Fi, utilizando o seguinte comando esta é habilitada.

Código  7: Comando de ativação de subsistema de rede sem fio

# wifi-menu

 

Teste da conexão à Internet

Para verificar o sucesso da configuração da interface de rede e sua conexão à Internet basta um ping.

Conforme configurado no passo anterior o ping deve ser emitido em IPv4 ou IPv6 conforme exemplos.

Código  8: Comandos de teste de conexão

# ping -4 archlinux.org

# ping -6 archlinux.org

 

Determinar discos rígidos detectados

Com uma busca na saída do comando dmesg pela string sd poderão ser determinados os discos rígidos detectados.

Abaixo exemplo de execução do comando e um sistema com um disco rígido, previamente particionado e formatado.

Código  9: Exibição da detecção de discos

# dmesg | grep sd
[    4.637391] sd 1:0:0:0: [sda] 8388608 512-byte logical blocks: (4.29 GB/4.00 GiB)
[    4.637399] sd 1:0:0:0: [sda] Write Protect is off
[    4.637401] sd 1:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    4.637413] sd 1:0:0:0: [sda] Write cache: enabled, read cache: enables, doesn't support DPO or FUA
[    4.637881] sd 1:0:0:0: [sda] Attached SCSI disk
[    4.638103] sd 3:0:0:0: [sdb] 20971520 512-byte logical blocks: (10.7 GB/10.0 GiB)
[    4.638110] sd 3:0:0:0: [sdb] Write Protect is off
[    4.638112] sd 3:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[    4.638124] sd 3:0:0:0: [sdb] Write cache: enabled, read cache: enables, doesn't support DPO or FUA
[    4.638548] sd 3:0:0:0: [sdb] Attached SCSI disk
[    4.638827] sd 4:0:0:0: [sdc] 4194304 512-byte logical blocks: (2.15 GB/2.0 GiB)
[    4.638834] sd 4:0:0:0: [sdc] Write Protect is off
[    4.638836] sd 4:0:0:0: [sdc] Mode Sense: 00 3a 00 00
[    4.638848] sd 4:0:0:0: [sdc] Write cache: enabled, read cache: enables, doesn't support DPO or FUA
[    4.639248] sd 4:0:0:0: [sdc] Attached SCSI disk

 

Uma alternativa ao método acima é utilizando o comando lsblk.

Código  10: Comando alternativo de exibição de discos

# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0 459,6M  1 loop /run/archiso/sfs/airootfs
sda      8:0    0     4G  0 disk
sdb      8:16   0    10G  0 disk
sdc      8:32   0     2G  0 disk
sr0     11:0    1   571M  0 rom  /run/archiso/bootmnt

 

Particionar o(s) disco(s)

Com uma ferramenta de particionamento a escolha, Arch Linux Live CD conta com no mínimo três ferramentas: fdisk; cfdisk; e parted, efetua-se o particionamento conforme o plano de instalação.

 

Formatar as partições

Comandos específicos para formatar partições de dados e de swap serão utilizados neste ponto do processo de instalação, conforme exemplificado a seguir:

Código  11: Comandos de formatação de partições

# mkfs.ext4 /dev/sda1
# mkfs.ext4 /dev/sda2
# mkfs.ext4 /dev/sdb1
# mkswap /dev/sdc1

 

Ativar e testar a partição swap

O comando swapon é utilizado para ativar partições swap. O mesmo comando pode ser utilizado para verificação da partição swap. Há também a possibilidade de utilizar o comando free com a opção -h.

A sequência de comandos a seguir efetua as tarefas descritas.

Código  12: Comandos de ativação e verificação de partição swap

# swapon /dev/sdc1
 
# swapon -s
Nome do arquivo    Tipo         Tamamnho    Usado  Prioridade
/dev/sdc1          partition    2096124 0   -2
 
# swapon --show
NAME      TYPE      SIZE USED PRIO
/dev/sdc1 partition   2G   0B   -2
 
# free -h
       total   usada   livre   compart.   buff/cache   disponível
Mem.:  988Mi    47Mi   639Mi       78Mi        302Mi        726Mi
Swap:  2,0Gi      0B   2,0Gi

 

Criar pontos de montagem e montar as partições

Tudo relacionado aos discos rígidos estando configurado, particionado e formatado deve-se montar as partições em seus pontos de montagem devidos. Conforme o plano de instalação monta-se na ordem:

Tabela 2: Pontos de montagem das partições

 PartiçãoComandos
1raizmount /dev/sdb1 /mnt
2bootmkdir /mnt/boot
mount /dev/sda1 /mnt/boot
3varmkdir /mnt/var
mount /dev/sda2 /mnt/var

Inspeção das partições montadas em seus pontos

Utilizando o comando lslbk é possível verificar o layout das partições, agora montadas em seus respectivos pontos, verificando o seguimento do plano de instalação.

Código  13: Exibição de discos e partições montadas

# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0 459,6M  1 loop /run/archiso/sfs/airrootfs
sda      8:0    0     4G  0 disk
|-sda1   8:1    0   500M  0 part /mnt/boot
\-sda2   8:2    0   3,5G  0 part /mnt/var
sdb      8:16   0    10G  0 disk
\-sdb1   8:17   0    10G  0 part /mnt
sdc      8:32   0     2G  0 disk
\-sdc1   8:33   0     2G  0 part [SWAP]
sr0     11:0    1   571M  0 rom  /run/archiso/bootmnt

 

Instalação dos pacotes base

Com o script pacstrap é efetivada a instalação dos pacotes componentes do sistema base.

O comando que instala tais pacotes está abaixo:

Código  14: Comando de instalação do Sistema Operacional

# pacstrap /mnt base

 

Geração do arquivo fstab

Com o comando genfstab é criado o arquivo fstab que controla a montagem dos discos na partida do S.O.

Código  15: Comando de geração de do arquivo FSTAB

# genfstab -p /mnt/ >> /mnt/etc/fstab

A execução resulta em um arquivo com a seguinte aparência

Código  16: Conteúdo do arquivo FSTAB gerado

# Static information about the filesystems.
# see fstab(5) for details.
 
# <file system> <dir> <type> <options> <dump> <pass>
# UUID=a1bd3368-cb9a-4c13-a433-70a1e6aa615a
/dev/sdb1    /           ext4   rw,realtime       0 1
 
# UUID=9830efdf-8b57-42e3-9eac-c297dcf90f55
/dev/sda1    /boot       ext4   rw,realtime       0 2
 
# UUID=12978d75-161b-4ddc-ad25-2de316de4c07
/dev/sda2    /var        ext4   rw,realtime       0 2
 
# UUID=7868db81-8c32-4de5-b54e-847bf34bbd5e
/dev/sdc1    none        swap   defaults,pri=-2   0 0

Caso seja desejado pode-se editar o arquivo com nano, vi, ou vim.

 

Criar ambiente chroot

O script arch-chroot que integra o pacote arch-install-scripts, monta sistemas de arquivos de API e torna o /etc/resolv.conf disponível no chroot

Código  17: Comando de 'mudança' de raiz

# arch-chroot /mnt /bin/bash

 

Configurar o locale do sistema recém instalado

Semelhante ao referido no item “Configuração do arquivo de configuração de idioma” acima editar o arquivo /etc/locale.gen para localizar o sistema conforme o plano de instalação (descomentar a linha pt_BR.UTF-8 UTF-8). A seguir com o comando locale-gen gera-se os arquivos de localização devidos.

Código  18: Comandos de configuração de localização do sistema instalado

# vi /etc/locale.gen
# locale-gen

 

Criação do arquivo de configuração de idioma

Provendo o arquivo /etc/locale.conf ajusta-se o idioma da interface do Arch Linux

Código  19: Configuração de idioma do sistema instalado

# echo "LANG=pt_BR.UTF-8" > /etc/locale.conf
# export "LANG=pt_BR.UTF-8"

 

Reconfiguração de teclado e caracteres exibíveis

Semelhantemente aos itens “Configuração de teclado” e “Configuração de caracteres exibíveis” anteriores com os comandos loadkeys e setfont configura-se os padrões idiomáticos apropriados para teclado e tela de console

Código  20: Comandos de configuração de teclado e caracteres

# loadkeys br-abnt2
# setfont lat0-16

 

Persistir as configurações

Para tornar persistentes estas configurações, deve-se prover o arquivo /etc/vconsole.conf com os seguintes valores:

Código  21: Conteúdo do arquivo de persistência de configuração de teclado e caracteres

KEYMAP=br-abnt2
FONT=lat0-16
FONT_MAP=

 

Configurar o fuso horário

A configuração de fuso horário é feita pela construção de um link simbólico para o arquivo de time-zone da localização indicada no plano de instalação.

Com o comando a seguir determina-se a existência do arquivo de fuso horário mais apropriado.

Código  22: Exibição de Zonas de Tempo disponíveis

# ls /usr/share/zoneinfo/America

Determinado o melhor arquivo com o comando a seguir constrói-se o link simbólico que configura o fuso horário.

Código  23: Comando de configuração de fuso horário

# ln -sf /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime

 

Sincronização do relógio de hardware

O comando hwclock gera o arquivo /etc/adjtime.

Código  24: Comando de sincronização do relógio de hardware

# hwclock --systohc --utc

 

Configurando o repositório e sincronizando

Editando o arquivo /etc/pacman.conf ao descomentar as linhas abaixo, o sistema poderá executar aplicativos de 32 bits.

Código  25: Edição do arquivo pacman.conf

[multilib]
Include = /etc/pacman.d/mirrorlist

A sincronização de repositório é efetuada com o comando

Código  26: Comando de sincronização com repositório

# pacman -Sy

 

Definir o hostname

Criar o arquivo /etc/hostname com o nome para o host com a linha de comando a seguir

Código  27: Comando de configuração de nome do host

# echo archlinux > /etc/hostname

 

Configurar o arquivo hosts

O arquivo hosts deve ser configurado com o conteúdo abaixo registrado.

Código  28: Configuração inicial do resolvedor de nomes local

127.0.0.1   localhost.localdomain   localhost
::1   localhost.localdomain   localhost

 

Instalar pacotes sudo; autocompletion e grub

Pela utilização do gerenciador de pacotes do Arch Linux deve-se instalar pacotes mínimos importantes à administração e uso do sistema com o comando pacman.

Os pacotes para instalação são o sudo, o bash-completion e o grub, o qual deve inclusive ser configurado, conforme os comandos a seguir.

Código  29: Comandos de instalação e configuração de pacotes básicos

# pacman -S sudo
# pacman -S bash-completion
# pacman -S grub
# grub-install --target i386-pc --recheck /dev/sdb
# cp /usr/share/locate/en/@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo

Dica: Para a busca automática de outros sistemas operacionais em seu computador, instale o pacote os-prober (pacman -S os-prober) antes de rodar o próximo comando.

 

Criação de um ambiente ramdisk inicial

No caso de ser necessária alguma configuração inicial específica, antes do próximo comando deve-se editar o arquivo mkinitcpio.conf.

Código  30: Comando de configuração de ramdisk

# mkinitcpio -p linux

 

Instalação do microcode

Dependendo do processador em uso (Intel ou AMD) a instalação do microcódigo pode ser realizada com um dos comandos a seguir respectivamente

Código  31: Comandos de instalação de microcódigo

# pacman -S intel-ucode
# pacman -S linux-firmware

 

Geração do arquivo de configuração do Grub

Com o comando grub-mkconfig cria-se o arquivo grub.cfg.

Código  32: Comando de configuração do gerenciador de partida

# grub-mkconfig -o /boot/grub/grub.cfg

 

Criar e definir um usuário

Com os comandos useradd e passwd crie um usuário (além do root) para efetuar login no sistema.

Código  33: Comandos de criação de usuário

# useradd -m -g users -G wheel,storage,power -s /bin/bash administrator
# passwd administrator

 

Definir a senha de root

Como o LiveCD provê login automático sem senha, prover uma senha para o usuário root é necessário.

Código  34: Comando de criação de senha do ROOT

# passwd root

 

Edite o arquivo sudoers:

Para incluir os usuários do grupo wheel como permitidos a executar sob sudo, com um editor de textos altere o arquivo /etc/sudoers descomentando a declaração do grupo wheel como mostrado a seguir.

Código  35: Configuração de grupo de sudoers

# nano /etc/sudoers

As linhas

## Uncomment to allow members of group wheel to execute any command
# %wheel ALL=(ALL) ALL

Ficam

# Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL) ALL

 

Instalar os componentes de Wi-Fi

Os pacotes wpa-supplicant, networkmanager, e net-tools devem ser instalados.

Código  36: Comandos de instalação e configuração de gerenciamento de rede

# pacman -S wpa-supplicant networkmanager net-tools
# systemctl enable NetworkManager

Uma vez instalados os pacotes, configurar Ethernet ou Wi-Fi.

Verificar os dispositivos de rede reconhecidos com o comando ifconfig, e ativar a interface de rede sem fio se necessário, ou mesmo existente.

Código  37: Verificação de dispositivos de rede instalados

# ifconfig -a

# ifconfig wlp2s0 up

 

Instalar suporte a trackpad (se necessário)

Para instalar o suporte a trackpad deve-se instalar o pacote synaptics.

Código  38: Comando de instalação do controle de trackpad

# pacman -S xf86-input-synaptics

 

Sair de chroot (referido no item 15)

Para sair de chroot basta o comando exit ou a combinação de teclas Ctrl-d.

 

Desmontar as partições (opcional)

Com o comando umount é possível desmontar as partições montadas no processo.

Código  39: Comando de desmontagem de partições

# umount /mnt/var
# umount /mnt/boot
# umount /mnt

Reiniciar o Sistema

Com o comando reboot ou shutdown pode-se reiniciar o sistema que está pronto para a partida desde o(s) disco(s) rígido(s).

Código  40: Comando de reinicialização do sistema

# reboot
ou
# shutdown -r now

Pós-instalação

Como já referido dependendo da aplicação para o sistema diferentes pós-instalações podem ser executadas, incluindo a instalação de pacotes específicos.

Temos a seguir algumas possibilidades de configuração pós-instalação que não necessariamente direcionam, ou limitam, a aplicabilidade de um sistema.

  • Endereço IP fixo
  • Atualização de pacotes instalados
  • Pacote adicionais
    • tree
    • dos2unix
    • openssh-server
  • Ajustes no FS para trabalho em equipe
  • Ajustes do skel e seus componentes
  • Geração de chaves de autenticação RSA para usuários

Segue um breve extrato destes ajustes de configuração, no entanto, para todos os efeitos o plano de configuração deveria conter mais algumas informações relacionadas a seguir.

Plano de Instalação complemento

Endereçamento IP:

Tabela 3: Complemento do plano de instalação

ItemValor
Modo IPestático
Endereço IP192.168.0.9
Máscara255.255.255.0
Broadcast192.168.0.255
Gateway192.168.0.1
DNS 18.8.8.8
DNS 28.8.4.4
DNS 3192.168.0.1

IP Fixo

O Arch Linux por padrão inicia com as interfaces de rede operando em DHCP, isso torna necessário desativar o serviço dhcp e desativar a interface. Com os comandos a seguir estas tarefas são realizadas.

Código  41: Desativação do serviço de DHCP

# ip link set <interface> down
# systemctl stop dhcpcd.service
# systemctl disable dhcpcd.service

Criar o arquivo com as configurações da interface (p. ex.: /etc/netctl/enp0s3) utilizando um editor de textos. O conteúdo de tal arquivo pode se parecer com o mostrado abaixo.

Código  42: Configuração para uso de IP fixo

Interface=enp0s3
Connection=ethernet
IP=static
Address=('192.168.0.9')
Gateway=('192.168.0.1')
DNS=('8.8.8.8' '8.8.4.4' '192.168.0.1')
TimeoutUp=10
SkipNoCarrier=yes

Ativar a configuração e torná-la automática com os comandos

Código  43: Comandos de ativação da configuração de IP fixpo

# netctl start ens32
# netctl enable ens32

 

Atualização do sistema

O gerenciador de pacotes do Arch Linux é o pacman. Para manter o sistema atualizado é necessário a intervalos regulares executar o comando pacman -Syu que efetua o sincronismo com repositórios e as atualizações necessárias.

Pode vir a ser também uma boa prática de manutenção a execução do comando pacman -D -k para verificar a consistência interna da base de dados de pacotes.

 

Instalação de pacotes adicionais

O Arch Linux após instalado não conta com alguns itens que podem vir a ser de extrema utilidade na administração e uso do sistema, devido a isso é extremamente recomendado que alguns sejam instalados, outros são apenas recomendáveis.

Os pacotes de grande importância são openssh e cron.

openssh – Serviço de ssh para acesso remoto ao sistema

Instala-se com o comando pacman -Sv openssh.

cron – Serviço de agendamento de tarefas

Instala-se com o comando pacman -Sv cron, ao ser solicitado o provedor do pacote seleciona-se a opção do repositório core.

Os pacotes recomendáveis são tree e dos2unix.

tree – Comando que exibe de forma visual a árvore de diretórios

Instala-se com o comando pacman -Sv tree.

dos2unix – Comando de conversão do padrão de fim de linha DOS/Mac/Unix

Instala-se com o comando pacman -Sv dos2unix.

vim – Editor de texto melhorado

Instala-se com o comando pacman -Sv vim.

mlocate – Procura arquivos por nome (comando locate)

Instala-se com o comando pacman -Sv mlocate.

 

Ajustes do skel e seus componentes

O diretório /etc/skel, e seu conteúdo, é o modelo para replicação ao criar um novo usuário, portanto personalizar este diretório pode simplificar consideravelmente o esforço de inclusão de novos usuários, que por sua vez poderão personalizar seus diretórios home a seu gosto.

O arquivo .bashrc pode ser editado para conter o seguinte conteúdo:

Código  44: Conteúdo sugeridpoop para o arquivo .bashrc

# Habilita suporte a cores de ls e adiciona aliases uteis
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
 
    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi
 
# Mais alguns aliases de ls
alias ll='ls -AlF'
alias la='ls -A'
alias l='ls -CF'
 
# Caso vim esteja instalado
locate vim >& null
[ $? ] && alias vi='vim'

 

Ajustes no FS para trabalho em equipe

O comportamento padrão do sistema de arquivos (file system ou fs) pode não ser apropriado para o trabalho em equipes, situação que pode ser alterada com a edição do arquivo /etc/login.defs e com a reconfiguração de direitos de usuários concedendo direito de escrita a grupos.

Código  45: Comando de configuração de UMASK e direitos no file system (FS)

# vi etc/login.defs

Fazendo

      UMASK       0002
# find /home -mindepth 2 | xargs chmod -R g+rw
# find /home -mindepth 2 -type d | xargs chmod -R g+rwxs

 

Geração de chaves de autenticação RSA para usuários

Criar chaves RSA pública e privada dos usuários de uso geral é uma forma de poder utiliza-los em processos automatizados devido à dispensa de fornecimento de senha em acessos remotos.

Para gerar as chaves há o comando ssh-keygen, e para implantar a chave pública em outro servidor há o comando ssh-copy-id.

Gerar o par de chaves de cada usuário estando logado como o usuário, com o comando:

Código  46: Comando de geração de chaves de autenticação RSA

# ssh-keygen -t rsa

Ainda logado com cada usuário, implantar as chaves públicas nos servidores remotos devidos com o comando:

Código  47: Comando de implantação de chave RSa pública em servidor remoto

ssh-copy-id -i ~/.ssh/id_rsa.pub login@servidor

É importante observar que o arquivo id_rsa contém a chave RSA privada e que deve ficar protegido contra acessos indevidos, por isso apenas o proprietário pode ter direitos de leitura sobre ele.

É igualmente importante ressaltar que este processo de autorização de acesso é unidirecional e para que seja iniciado pelo outro servidor deve ser implantada sua chave pública no servidor local.

 

 

Conclusão

Neste ponto o sistema está instalado e operativo, com um mínimo de componentes. Deste ponto em diante o sistema pode ser configurado para aplicações específicas diversas.

 

 

Referências

Arch Linux: Uma distribuição simples e leve. Disponível em <http://archlinux.org>, acesso em 07 de out. de 2018

 

João Pedro. Medium. Instalação e Configuração do Arch Linux. Disponível em <https://medium.com/@galdino1993/instala%C3%A7%C3%A3o-e-configura%C3%A7%C3%A3o-do-arch-linux-625c406e56ff>, acesso em 07 de out. de 2018

 

LOPES, Francisco José. CHAVES PÚBLICAS DE AUTENTICAÇÃO: Criptografia assimétrica. Blá do Chico: São Paulo, 2018. Disponível em <http://bladochico.qaplaweb.com.br/?p=176>, acesso em 9 de out. de 2018

 

MAGNUN. Mind Bending. Configuração Básica do Arch Linux Sem Dor. Disponível em <http://mindbending.org/pt/configuracao-basica-do-arch-linux-sem-dor>, acesso em 07 de out. de 2018

 

Rufus – Crie drives USB bootáveis facilmente. Disponível em <https://rufus.akeo.ie/>, acesso em 07 de out. de 2018

 

Wikipedia. i686. Disponível em <https://pt.wikipedia.org/wiki/I686>, acesso em 8 de out. de 2018