Alterações
#####Atualizado 15/11/2019#####
consertado mkdir -p /mnt/boo/efi para mkdir -p /mnt/boot/efi …
corrigido a formatação no swapon -s ou free -h
#####Atualizado 03/11/2019#####
Modificando o pacote wifi-menu para netctl
#####Atualizado 28/10/2019#####
Melhorando o passo a passo do tutorial
#####Atualizado 25/10/2019#####
Adicionado man-db na instalação básica
Dica: Para criar um usb bootável de Linux no Windows
Instalação do arch - UEFI
Este tutorial foi criado para facilitar os usuários na hora de instalar o arch no modo UEFI.
O processo utilizado abaixo foi testado via virtualbox.
Para saber se você inciciou o CD/USB em modo UEFI, veja se o seguinte diretório está preenchido
ls /sys/firmware/efi/efivars
Opção Secure Boot da bios
Secure boot
A imagem já vem pronta para funcionar o secutrity boot.
É necessário modificar a bios
LINK:http://www.rodsbooks.com/efi-bootloaders/secureboot.html
Apoś iniciar a boot do cd.
1- Configure o layout do teclado ( padrão US )
loadkeys br-abnt2
Ou você pode usar o novo padrão:
localectl set-x11-keymap br abnt2
1.1- Atualize o relógio do sistema
Use timedatectl para garantir que o relógio do sistema esteja certo:
timedatectl set-ntp true
2- Configure a rede
Teste a conexão de rede
ping -c 3 google.com
DHCP
Conexão de rede com fio e acesso a um servidor DHCP (ex. roteador) (Está opção é iniciada automaticamente)
dhcpcd
WI-FI
Na instalação do Arch, rode o programa:
wifi-menu
Escolha a rede e digite sua senha.
E pronto, você está conectado.
Dê um ping para testar a conexão:
ping www.google.com
WIRED
Atenção: Antes de iniciar a configuração é necessário desativar o dhcp
systemctl stop dhcpcd.service
-Identifique o nome da interface de rede
ip link
ou
ip addr
ex.
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp2s0f0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
link/ether 00:11:25:31:69:20 brd ff:ff:ff:ff:ff:ff
3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
link/ether 01:02:03:04:05:06 brd ff:ff:ff:ff:ff:ff
- Ative a interface de rede, por exemplo, para enp2s0f0:
ip link set enp2s0f0 up
- Adicionando endereços
ip addr add <endereço ip>/ dev
ip addr add 192.168.1.2/24 dev enp2s0f0
- Adicionando o gateway
ip route add default via
ip route add default via 192.168.1.1
Edite seu DNS (dns google):
nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
search exemplo.com
3- Prepare o disco rígido
Dica
Veja também aqui
https://wiki.archlinux.org/index.php/Partitioning
Segue algumas recomendações. Não há nenhuma regra rígida sobre o tamanho da partição.
Se usa ssd deixe no total 25% do tamanho do ssd livre. Mais informações https://wiki.archlinux.org/index.php/Solid_State_Drives#TRIM
O tamanho das partições depende da preferência pessoal, mas as seguintes informações podem ser úteis:
/boot/efi - 50 MB UEFI.
Ele requer apenas cerca de 100 MB, mas se tem várias imagens de kernels no /boot pode ser util aumentar o uso, 200 MB ou 500 MB, e /boot/efi no máximo 50 MB se for UEFI.
/ - 15-20 GB
Tradicionalmente contém o diretório /usr, que pode crescer significativamente dependendo de quanto software está instalado. 15-20 GB deve ser suficiente para a maioria dos usuários com discos rígidos modernos. Se você planeja armazenar um arquivo swap aqui, talvez seja necessário um tamanho de partição maior.
/var - 8-12 GB
Conterá, entre outros dados, a árvore ABS e o cache pacman. Manter esses pacotes é útil no caso de uma atualização de pacote causar instabilidade, exigindo um downgrade para um pacote arquivado mais antigo. O cache do pacman, em particular, vai crescer à medida que o sistema é expandido e atualizado, mas pode ser limpo com segurança se o espaço se tornar um problema. 8-12 GB em um sistema de desktop deve ser suficiente para /var, dependendo de quanto software será instalado. Não é recomendado usar em um SSD já que trabalha com muitos arquivos pequenose logs do sistema. Neste caso armazene em um HDD separado.
/home - [varia]
É tipicamente onde residem dados de usuários, downloads e multimídia. Em um sistema de desktop, /home geralmente é o maior sistema de arquivos na unidade. O uso também é recomendado em um HDD,
swap - [varia] - caso queira criar, recomendo utilizar o swapfile
Historicamente, a regra geral para o tamanho da partição swap era alocar duas vezes a quantidade de RAM física. Como os computadores ganharam capacidades de memória cada vez maiores, esta regra está desatualizada. Por exemplo, em máquinas desktop médias com até 512MB RAM, a regra 2x é geralmente adequada. Se uma quantidade suficiente de RAM (mais de 1024MB) estiver disponível, talvez seja possível ter uma partição de swap menor.
- Se já estiver particionado. Você pode utilizar os comandos fdisk ou lsblk.
fdisk -l /dev/sda
ou
lsblk -o MAJ:MIN,NAME,TYPE,LABEL,UUID,MOUNTPOINT,GROUP,MODEL,STATE,SCHED /dev/sda
ou
lsblk -f /dev/sda (este é equivalente a -o NAME,FSTYPE,LABEL,MOUNTPOINT)
Ferramentas para particionar os discos
parted: GPT and MBR
fdisk, cfdisk, sfdisk: GPT and MBR
gdisk, cgdisk, sgdisk: GPT
Recomendo utilizar uma dessas ferramentas: gdisk e cgdisk
Pode utilizar também o fdisk e cfdisk
CFDISK e CGDISK talvez sejam mais fáceis de configurar.
No modo UEFI, temos que criar uma partição boot ESP (EFI System Partition), com a formatação FAT32 (https://pt.wikipedia.org/wiki/FAT32).
Atenção: pode-se utilizar cgdisk ou cfdisk se achar mais fácil.
Utilizando o gdisk
Para listar as partições
gdisk -l /dev/sdx
para entrar no menu interativo
gdisk /dev/sdx
root@archiso ~# gdisk /dev/sda
p (Imprime a table de partições)
d (Deleta partições)
w (escrever as partições)
q (sair)
? ou help (abrir o menu de ajuda)
Cria um partição boot
n (Adicionar uma nova partição)
Partition number: {default}
First Sector: {default}
Last Sector: +512M
GUID: EF00
Se você quiser só mais uma partição e utilizar 100% do espaço restante.
n (Adicionar uma nova partição)
Partition number: {default}
First Sector: {default}
Last Sector: {default}
GUID: {default}
E caso queira separar as partições / (20GiB), swap (4GiB), e /home (com todo o espaço restante):
n (Adicionar uma nova partição)
Partition number: {default}
First Sector: {default}
Last Sector: +20G
GUID: {default}
n (Adicionar uma nova partição)
Partition number: {default}
First Sector: {default}
Last Sector: +4G
GUID: 8200
n (Adicionar uma nova partição)
Partition number: {default}
First Sector: {default}
Last Sector: {default}
GUID: {default}
Não esqueça antes de sair, escrever as partições com a opção w.
4- Configure dispositos de blocos, sistema de arquivo e ponto de montagem
- Para criar o sistema de arquivo use mkfs.
- Como mkfs é só um sistema unificado de interface de diferentes scripts.
Scripts:
e2fsprogs contém: mkfs.ext2, mkfs.ext3, mkfs.ext4, mkfs.ext4dev
dosfstools contém suporte FAT16 e FAT32: mkfs.vfat, mkfs.msdos
ntfsprogs contém: mkfs.ntfs
jfsutils contém: mkfs.jfs
xfsprogs contém: mkfs.xfs
reiserfsprogs contém: mkfs.reiserfs
btrfs-progs contém: mkfs.btrfs
Adicione o -L para criar a label da partição
Uma vez que as partições foram criadas, cada um deve ser formatado com um sistema de arquivo adequado, exceto para partições swap.
mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda2
mkfs.fat -F32 -n BOOT /dev/sda1
- Formate e ative a partição swap: (Importante para já está habilitada quando for gerar o fstab com o script genfstab)
Adicione o -L para criar a label da partição.
Ex.
mkswap -L swap /dev/sda2 && swapon /dev/sda2
- Para verificar se a partição swap está funcionando, utilize o comando free ou swapon
swapon -s
ou
free -h
5- Monte as partições
- Montar a partição root na pasta /mnt.
mount /dev/sda2 /mnt
- Crie e monte para toda partição separada que você precisa. No exemplo além da partição root, foi criada e montada para /home e /boot)
mkdir -p /mnt/home && mount /dev/sda3 /mnt/home
mkdir -p /mnt/boot/efit && mount /dev/sda1 /mnt/boot/efi
6- Selecione o espelho (mirror) para a instalação
- Antes de instalar, você pode precisa editar o arquivo /etc/pacman.d/mirrorlist de tal forma que o espelho preferido seja o primeiro. Esta cópia da mirrorlist será instalada no seu novo sistema pelo pacstrap.
nano /etc/pacman.d/mirrorlist
7- Instale o sistema base
pacstrap /mnt base base-devel linux linux-firmware nano sudo man-db
8-Gerar o fstab
- Gere o fstab com o script genfstab(se preferir adicione a opção -U (UUIDs) ou -L (labels), respectivamente).
genfstab -U /mnt >> /mnt/etc/fstab
Adicione a linha swap no fstab - (Só será necessário, caso não tenha montado e ativado a partição swap anteriormente )
/dev/sda5 none swap defaults 0 0
Opcional: Apenas a partição root(/) precisa de 1 no último campo. Todo o resto deve ser 2 ou 0. Além disso, data=ordered devem ser removidos. Esta opção será usada automaticamente. Você também pode adicionar a opção noatime.
nano /mnt/etc/fstab
Ex.Retirado do https://wiki.archlinux.org/index.php/Fstab#Field_definitions
# <file system> <dir> <type> <options> <dump> <pass>
tmpfs /tmp tmpfs nodev,nosuid 0 0
/dev/sda1 / ext4 defaults,relatime 0 1
/dev/sda2 none swap defaults 0 0
/dev/sda3 /home ext4 defaults,relatime 0 2
OBS: O tmpfs não é mais necessário no /mnt/etc/fstab . O unit tmp.mount systemd gerencia automaticamente esta opção.
9- Chroot no sistema
- Faremos um chroot dentro de nosso sistema recém-instalado.
arch-chroot /mnt
Nota: Se você esqueceu de instalar pacotes com o script pacstrap, pode instalá-los após o chroot com:
pacman -S <pacote>
10- Configure o sistema
OBS: Alguns arquivos citados abaixo não existem. Ao editar e salvar os arquivos com o aplicativo nano eles serão automaticamente criados.
Definir o Idioma
nano /etc/locale.gen
Descomente
pt_BR.UTF-8 UTF-8
pt_BR ISO-8859-1
nano /etc/locale.conf
LANG=pt_BR.UTF-8
- Execute o comando
locale-gen
export LANG=pt_BR.UTF-8 ou LANG=pt_BR.UTF-8
Definir o telado
nano /etc/vconsole.conf
KEYMAP=br-abnt2
Hora e Localização
/etc/localtime ( link simbólico )
- Execute o comando para criar o link simbólico
ln -sf /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
/etc/adjtime ( Crie o arquivo automaticamente)
#UTC
hwclock --systohc --utc
#LOCALTIME
hwclock --systohc --localtime
Atenção: Para localtime, só aceita a configuração
0.0 0.0 0.0
0
LOCAL
[ NETWORKING ]
nano /etc/hostname
myhostname
nano /etc/hosts
- Adicione o hostname no arquivo hosts
Alguns programas utilizam o 127.0.1.1, por isso é recomendado adicionar
Mais informação: http://jlk.fjfi.cvut.cz/arch/manpages/man/hosts.5#EXAMPLE
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname
- Verifique novamente o dns (dns google)
nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
search example.com
11- Kernel Módulos
- Crie arquivos dentro da pasta com nomes dos programas ou tarefas dos módulos com extensão “.conf”.
- Cada módulo é separado por linha
[ HARDWARE ]
Ex.
Para carregar módulos
/etc/modules-load.d/virtio-net.conf
# Load virtio-net.ko at boot
virtio-net
Para lista negra
/etc/modprobe.d/nobeep.conf
# Não rodar o módulo pcspkr no boot
blacklist pcspkr
12- Crie um ambiente ramdisk inicial
mkinitcpio -p linux
13- Configurando o Wi-Fi no ambiente Arch Linux
pacman -S wireless_tools wpa_supplicant netctl dialog
Habilitando a rede Wireless
Habilitando a rede wireless automaticamente no boot do sistema:
Talvez seja necessário executar o wifi-menu novamente
$ cd /etc/netctl
Obs.: dê um ls, para ver o conteúdo da pasta.
Dentro do diretório, vai ter um arquivo de perfil, algo como:
ou
Para listar os perfis:
netctl list
ATENÇÃO: veja se no arquivo criado tem a senha e outras configurações preenchidas.
wlp1s0-MeuWifi
Esse arquivo é gerado quando você conecta-se em uma rede com o wifi-menu, onde ficam as informações do roteador que o wifi-menu vai se conectar.
Para habilitar o wifi-menu, para que conecte-se automaticamente toda vez que o sistema iniciar, dê o comando:
$ netctl enable wlp1s0-MeuWifi
Para desabilitar:
$ netctl disable wlp1s0-MeuWifi
Mais informação: https://wiki.archlinux.org/index.php/Netctl
Atenção: Você pode instalar também programas como NetworkManager e Wicd.
Mais informação: https://wiki.archlinux.org/index.php/Network_configuration
13- Instale e configure o bootloader. Escolha um gerenciador: grub ou systemd-boot ( Gerenciador de Inicialização )
1- systemd-boot
A partição tem que estar GPT, e ter uma partição de sistema EFI (tipo gdisk EF00, formatado com FAT32) montada em / boot.
Instale o systemd-boot para a patição EFI:
$ bootctl install
E tambem é muito importante lembrar que se você optar pelo SystemD Boot é necessário criar os arquivos:
- /boot/loader/loader.conf
- /boot/loader/entries/arch.conf
Respectivamente com os seguintes conteúdos:
timeout 2
default arch
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=/dev/sda2 rw
Onde:
- /vmlinuz-linux e /initramfs-linux.img são relativos a partição /boot e na verdade estão em /boot/vmlinuz-linux e /boot/initramfs-linux.img
- /dev/sda2 é a partição /
Mais informação sobre o system-boot
https://wiki.archlinux.org/index.php/Systemd-boot
2- Grub
Instale o grub
pacman -S grub
Instale o efibootmgr
pacman -S efibootmgr
grub-install /dev/sda
Para verificar se o arquivo efi foi instalado na pasta grub ou arch
Atenção: Se você está instalando via virtualbox, terá que mudar o nome de pasta e arquivo porque o
virtualbox não salva a NVRAM.
Por exemplo:
Se o caminho do arquivo efi estiver assim:
/boot/EFI/grub/grubx64.efi
Atera o nome da pasta arch para BOOT e o nome do arquivo para bootx64.efi
Ficará assim:
/boot/EFI/BOOT/bootx64.efi/color]
- Crie o arquivo grub.cfg.
grub-mkconfig -o /boot/grub/grub.cfg
14- Definir a senha root
passwd
15- Opcional: Instalação da desktop
Instale o xorg (Opcional xorg-server-utils e xorg-xinit [para o startx])
pacman -S xorg-server xorg-xinit
Você pode definir o layout do teclado
/etc/X11/xorg.conf.d/10-keyboard.conf
Section "InputClass"
Identifier "keyboard default"
MatchIsKeyboard "yes"
Option "XkbLayout" "br"
Option "XkbVariant" "abnt2"
EndSection
Instale o video
pacman -S xf86-video-vesa
Caso esteja instalando no virtualbox, use o driver xf86-video-fbdev
pacman -S xf86-video-fbdev
Configure o sudo , usa o editor vim ( não instalado)
visudo
Caso queira usar o editor nano ( instalado)
EDITOR=nano visudo
Descomente a opção
## Uncomment to allow members of group wheel to execute any command
# %wheel ALL=(ALL) ALL
%wheel ALL=(ALL) ALL
Crie o usuário
Opções do useradd
-d diretório_home : caminho completo do diretório home do usuário.
-m : Cria o diretório home fornecido pela opção “-d” com os arquivos e estrutura definidas na configuração de /etc/skell
-G grupos : lista de grupos separados por uma virgula
-g grupo padrão
useradd -m -g users -G wheel nomedousuário
Crie a senha - passwd usuário
passwd nomedousuário
Instale um desktop ( ex. LXDE)
pacman -S lxde
Configure o .xinitrc
https://wiki.archlinux.org/index.php/xinitrc
O .xinitrc não é mais enviado para pasta skel
Crie o .xinitrc
touch ~/.xinitrc
nano .xinitrc
E adicione o exec para lxde
exec startlxde
Configure os serviços do systemd ao iniciar
systemctl enable lxdm.service dhcpcd.service
16- Se ainda está no ambiente chroot, desmonte as partições que foram montadas sobre /mnt e reinicie.
Saia do chroot, digite “exit”, ou <CTRL>+<D>
Desmonte os pontos de montagem e reinicie o sistema.
umount -R /mnt
Pronto. Você instalou o arch.
Reinicie o computador