Atenção:
Alterações
#####Atualizado 15/11/2019#####
corrigido a formatação no swapon -s ou free -h
#####Atualizado 03/11/2019#####
Modificando o pacote wifi-menu para netctl
#####Atualizado 25/10/2019#####
Adicionado man-db na instalação básica
Dica: Para criar um usb bootável de Linux no Windows
Arch com LVM:
Autor leoarcher - http://blog.leandroinacio.eti.br/archives/418
Pesquisados para o tuto:
https://wiki.archlinux.org/index.php/Kernel_modules#Blacklisting
https://wiki.archlinux.org/index.php/Systemd
https://wiki.archlinux.org/index.php/Rc.conf
https://wiki.archlinux.org/index.php/GRUB2
https://wiki.archlinux.org/index.php/File_Systems
https://wiki.archlinux.org/index.php/Pacman-key
https://wiki.archlinux.org/index.php/Official_Repositories
https://wiki.archlinux.org/index.php/Fstab#Field_definitions
https://wiki.archlinux.org/index.php/Configuring_Network
------[ Baixe o arquivo e verifique a integridade ]-----
-
Baixe o arquivo em http://www.archlinux.org/download/
-
Na mesma página baixe os checksums e salve no mesmo diretório que está o arquivo iso
-
Execute o comando no diretório ( execute o pacman-key como root )
$ sudo pacman-key -v archlinux-2013.01.04-dual.iso.sig && md5sum --check md5sums.txt && sha1sum --check sha1sums.txt
A saída
gpg: Signature made Sex 07 Set 2012 07:59:54 UTC using RSA key ID 9741E8AC
gpg: Good signature from "Pierre Schmitz <pierre@archlinux.de>"
archlinux-2012.09.07-dual.iso: SUCESSO
archlinux-2012.09.07-dual.iso: SUCESSO
Queime um CD ou DVD, ou instale via usb
- Para montar em um pen driver
dd if=archlinux-2013.01.04-dual.iso of=/dev/sdc bs=4M
Ex. A saída
96+0 records in
96+0 records out
402653184 bytes (403 MB) copied, 105,791 s, 3,8 MB/s
Integridade do arquivo - Repare a saída do comando acima
- O número de registros ao gravar foi 96
- O checksum deverá ser o mesmo que o checksum original
https://www.archlinux.org/iso/2013.01.04/sha1sums.txt
dd if=/dev/sdx count=<número de registos> bs=4M status=noxfer | sha1sum
dd if=/dev/sdc count=96 bs=4M status=noxfer | sha1sum
A saída
96+0 records in
96+0 records out
bcf9b6b1ad197956332bcc92098cc6f7023aca09 -
OBS: Normalmente programas de gravação de CD/DVD, fazem a verificação de integridade.
Caso queira fazer manualmente. Insira o CD/DVD no drive e execute o comando
md5sum /dev/cdrom
A chave terá que ser a mesma do arquivo original md5sums.txt
Pode também adicionar ou modificar o destino da chave no arquivo md5sums.txt, e depois execute md5sum --check md5sums.txt
ee5f707458f09f6773956fd5d3c1d12c archlinux-2012.09.07-dual.iso
ee5f707458f09f6773956fd5d3c1d12c /dev/cdrom
--------[ Instalação ]------
1- Configure o layout do teclado ( padrão US )
loadkeys br-abnt2
Opcional: Por padrão, a lingua setada como padrão é o Inglês. Se quiser modificar:
Edite o arquivo locale.gen e descomente o que for pt_BR.
nano /etc/locale.gen
pt_BR.UTF-8 UTF-8
Depois execute os comandos
locale-gen
export LANG=pt_BR.UTF-8
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.
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
Na versão 197 do systemd foi adicionado o suporte nativo para um número de diferentes políticas de nomeação adequada no systemd/udevd e tem um esquema similar ao nome de dispositivos bios por padrão (mas no geral mais poderoso, e mais perto dos esquenas internos do kernel de identificação de dispositivo). Os diferentes esquemas de nomeação para interfaces de rede que agora são suportados nativamente pelo udev:
-
Names incorporating Firmware/BIOS provided index numbers for on-board devices (example: eno1)
-
Names incorporating Firmware/BIOS provided PCI Express hotplug slot index numbers (example: ens1)
-
Names incorporating physical/geographical location of the connector of the hardware (example: enp2s0)
-
Names incorporating the interfaces’s MAC address(example: enx78e7d1ea46da)
-
Classic, unpredictable kernel-native ethX naming (example: eth0)
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
- 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)
- Para particionar use o cfdisk
cfdisk /dev/sda
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
Ex.
mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/sda3
mkfs.ext4 -L boot /dev/sda6
- 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/sda1 /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 /mnt/home && mount /dev/sda3 /mnt/home
mkdir /mnt/boot && mount /dev/sda6 /mnt/boot
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.
Info: Alguns atalhos para NANO
Ctrl+W - procurar por string. Ex. .br/
PageUp e PageDown - chave para subir e descer ( pode utilizar as setas ) .
Ctrl+K - para recortar. Você pode recortar todas as linhas de servidores do Brazil
Ctrl+U - para colar. Colar todas as linhas de servidores do Brazil no ínicio do arquivo.
Ctrl+X - para sair, se foi modificado, irá peguntar se quer salvar, responda y ou n.
nano /etc/pacman.d/mirrorlist
Nota: ftp.archlinux.org 50KB
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 -p /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>
Opcional: Este procedimento pode ser feito após a instalação. Verifique as cinco chaves mestras para evitar um aviso de erro, informando que não pode verificar se a assinatura de alguns pacotes é verdadeira nos repositórios principais. (core,extra,community,multilib,testing,community-testing e multilib-testing)
pacman-key --init && pacman-key --populate archlinux
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.
TABELA DE CONFIGURAÇÃO
Configuração Arquivos
[ LOCALIZATION] Locale /etc/locale.conf /etc/locale.gen
[ LOCALIZATION] Console fonts and Keymap /etc/vconsole.conf
[ LOCALIZATION] Timezone /etc/timezone /etc/localtime
[ LOCALIZATION] Hardware clock /etc/adjtime
[ NETWORKING ] Hostname /etc/hostname /etc/hosts
[ HARDWARE ] Lista branca (modules) /etc/modules-load.d/
[ HARDWARE ] Lista negra (modules) /etc/modprobe.d/
Utilize o aplicativo nano para editar os arquivos
Info: Alguns atalhos para NANO
Ctrl+W - procurar por string. Ex. .br/
PageUp e PageDown - chave para subir e descer ( pode utilizar as setas ) .
Ctrl+K - para recortar. Você pode recortar todas as linhas de servidores do Brazil
Ctrl+U - para colar. Colar todas as linhas de servidores do Brazil no ínicio do arquivo.
Ctrl+X - para sair, se foi modificado, irá peguntar se quer salvar, responda y ou n.
[ LOCALIZATION ]
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
nano /etc/vconsole.conf
KEYMAP=br-abnt2
FONT=lat0-16
FONT_MAP=
/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
Dica: Se for necessário, ajuste a hora.
- Veja a hora
date - Ajuste a hora
hwclock --set --date=“data hora”
hwclock --set --date=“7/18/09 19:23:00”
[ NETWORKING ]
nano /etc/hostname
myhostname
nano /etc/hosts
- Adicione o hostname no arquivo hosts
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.
/etc/modules-load.d/virtio-net.conf
# Load virtio-net.ko at boot
virtio-net
/etc/modules-load.d/firewall.conf
# módulos iptables para rodar no boot
ip_tables
nf_conntrack_netbios_ns
nf_conntrack
/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
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 syslinux. ( Gerenciador de Inicialização )
Grub
- Instale o grub2
pacman -S grub
- Habilite o módulo dm-mod
modprobe dm-mod
- Instale no disco rígido contendo a sua partição de boot.
grub-install --target=i386-pc --recheck --debug /dev/sda
ou
grub-install /dev/sda
- Para evitar uma mensagem de erro (inofensiva) no momento da inicialização:
mkdir -p /boot/grub/locale
cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
- Crie o arquivo grub.cfg.
grub-mkconfig -o /boot/grub/grub.cfg
Syslinux
- Instale o syslinux
pacman -S syslinux
-
Se instalou o syslinux, edite o /boot/syslinux/syslinux.cfg para apontar para a partição root / . Em seguida, digite o seguinte comando para instalar (-i), definir o boot flag (-a) e instalar o MBR (-m).
-
Modifique para as partições instalados
nano /boot/syslinux/syslinux.cfg -
Execute o comando
/usr/sbin/syslinux-install_update -iam
14- Definir a senha root
passwd
15- Opcional: Instalação da desktop
Instale o xorg (Opcional xorg-server-utils)
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
ou
/etc/X11/xorg.conf.d/10-evdev.conf
Adicione
Option “XkbLayout” “br”
Option “XkbVariant” “abnt2”
em
Identifier “evdev keyboard catchall”
Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "XkbLayout" "br"
Option "XkbVariant" "abnt2"
EndSection
Instale o video
pacman -S xf86-video-vesa
Instale outros pacotes como sudo e o alsa-utils para o som
pacman -S sudo alsa-utils
Configure o sudo
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
Configure o som e salve a configuração
alsamixer
alsactl store
Instale um desktop ( ex. LXDE)
pacman -S lxde
Configure o .xinitrc
nano .xinitrc
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 partições e reinicie o sistema.
umount /mnt/home && umount /mnt/boot
ou
umount /mnt/{boot,home,}
e
reboot
Sugestões e correções serão bem-vindas
Informações extras: