Post

Come installare Arch Linux

Arch Linux è rinomato per il suo macchinoso processo command-base di configurazione. Una volta presa familiarità con i comandi da eseguire è più semplice di quanto si pensa.

l’ISO di Arch Linux include uno script chiamato archinstall che aiuta ulteriormente la configurazione, questa guida si concentrerà più sulla modalità standard1.

se utilizzate lo script archinstall vi ricordo che tutte gli user (primari e secondari) e le password del disk encryption saranno salvate in plain text, quindi visibili su un file.

Download Arch Linux

Scarica al seguente link il file iso. scrivi l’ISO su una chiavetta USB e selezionare il boot tramite quest’ultima. Se prevedi di installarlo su una macchina virtuale, necessiti esclusivamente del file iso.

è buona abitudine verificare per questo genere di file il checksums dell’ISO per confermare che file scaricato sia genuino e sicuro.

Step Preliminari

Avere una connessione attiva ad internet è necessario per completare l’installazione. Via cavo ethernet e ottenendo l’ip tramite DHCP dovrebbe funzionare automaticamente. Generalmente per una connessione wireless c’è da configurare manualmente.

Per controllare, basta eseguire un ping:

1
ping archlinux.org

Se escono errori di questo tipo ( es. “Temporary failure in name resolution” - la mancata risoluzione del nome host) usiamo il comando iwctl. verifichiamo il nome della nostra interfaccia wireless eseguendo device list. il nome dell’interfaccia inizierà con una “w” (es. wlan0 o wlp2s0)

Con i seguenti comandi effetueremo uno scan per trovare l’SSID della nostra rete wireless e connetterci. Rimpiazzate [device] e [SSID] nei comandi rispettivamente con i nomi della vostra interfaccia wirless e nome rete Wi-Fi.

1
2
iwctl station [device] get-networks
iwctl station [device] connect [SSID]

Il Sistema vi chiederà poi la password per connettervi. Una volta collegati abiliteremo la sincronizzazione dell’ora dalla rete con il seguente comando:

1
timedatectl set-ntp true

Setup Layout della Tastiera

Di default, sarà configurata il layout della tastiera US (americana). Per effettuare il controllo di quelli disponibili basta eseguire il seguente comando:

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

con

1
loadkeys it

sceglieremo quello italiano.

Partizione dei Dischi UEFI

Verificate se il vostro sistema utilizza la modalità UEFI.

1
ls /sys/firmware/efi/efivars

Se, il risultato resituisce una cartella non esistente, vuol dire che il sistema potrebbe essere stato avviato in modalità BIOS o CSM.

per verificare, dovete vedere i parametri della vostra scheda madre o se state virtualizzando ci sono dei parametri da spuntare/dichiarare (es. con virtualbox nelle impostazioni della vostra macchina virtuale Sistema > Scheda Madre > Funzionalità estese: spuntare Abilita EFI)

con il comando

1
fdisk -l 

identificherete i vostri dischi, la nomenclatura di solito funziona così per gli HDD uscirà come /dev/sda, per SSD come /dev/nvme0n1 e per SD card e eMMC disk /dev/mmcblk0.

(sostituire [DEVICE] con il nome del vostro disco identificato con il comando poco sopra)

1
fdisk /dev/[DEVICE]

generalmente avrai la necessità di creare tre partizioni, EFI (se supportata dal vostro sistema), root, e la swap.

una volta lanciata l’utility fdisk

con m potrete visualizzare i vari comandi disponibili nell’utility:

la prima cosa da dichiarare è la label del disco nel nostro caso utilizzeremo g per dichiarare una GPT table

Desktop View

successivamente creremo le nostre partizioni, specificando per ogni nuova partizione con il tasto con n

Rimanete con il block size e numero del disco di default , e quando vi verrà chiesto impostate per la partizione EFI, all’incirca +512M di spazio.

Desktop View

andremo poi a cambiare il tipo della partizione ad EFI System (di default creerà partizioni Linux filesystem).

Con t definiremo il tipo di partizione. Con l vedremo una lista di tipologie di partizioni disponibili e inserite il corretto numero a seconda della vostra tipologia di partizione scelta.

per l’EFI è 1, per la swap basterà scrivere l’alias swap o 19 e per la root - Linux root x86_64 che corrisponde a 24

Desktop View

con il tasto w andremo a confermare le nostre partizioni

il risultato sarà 3 partizioni:

Partizione Tipologia Dimensione
/dev/sda1 EFI System +512M
/dev/sda2 Linux Swap +1G o +2G all’incirca
/dev/sda3 Linux root x86_64 il restante spazio a disposizione del disco

Formattare le Partizioni

per la partizione EFI in FAT32

1
mkfs.fat -F32 /dev/sda1

per la root in ext4

1
mkfs.ext4 /dev/sda3

questo per formattare e abilitare la swap

1
2
mkswap /dev/sda2
swapon /dev/sda2

Se state configurando per un dual-booting con Windows, fate attenzione alla dichiarazioni delle partizioni. Soprattuto quando formattate o ne create di nuove, dato che anche un piccolo errore potrebbe rendere il vostro sistema Windows non più utilizabile.

Partizione dei Dischi (UEFI con encryption e LVM)

per vedere partizioni/drive sulla tua macchina (trovare il nome del tuo hard disk/ssd)

1
fdisk -l

far partire il partizionamento (fdisk)

1
fdisk /dev/<DEVICE> (sostituisci <DEVICE> con il nome del tuo drive, possibili esempi: /dev/sda (HD) o /dev/nvme0n1 (SSD))

Mostrare le ulteriori partizioni inserire:

1
In fdisk, p

Crea partizione EFI inserire:

1
2
3
4
5
6
7
In fdisk, g (creare partizione GPT)
In fdisk, n
invio
invio
+512M
In fdisk, t
1 (per type EFI)

creare la partizione boot

1
2
3
4
In fdisk, n
invio
invio
+512M

Creare la partizione LVM

1
2
3
4
5
6
7
In fdisk, n
invio
invio
invio
In fdisk, t
invio
30

Verifica nuovamente la partizione

1
In fdisk, p

Finalizza le modifiche con:

1
In fdisk, w

Formattare le Partizioni (UEFI con encryption e LVM)

Formattare la partizione EFI

1
mkfs.fat -F32 /dev/<DEVICE partizione 1> (esempio: /dev/sda1)

Formatta la partizione di boot

1
mkfs.ext4 /dev/<DEVICE partizione 2> (esempio: /dev/sda2)

Configurare l’encryption dei dischi:

1
2
cryptsetup luksFormat /dev/<DEVICE partizione 3>
cryptsetup open --type luks /dev/<DEVICE partizione 3> lvm

Configurare LVM

1
2
3
4
5
6
7
pvcreate --dataalignment 1m /dev/mapper/lvm
vgcreate volgroup0 /dev/mapper/lvm
lvcreate -L 30GB volgroup0 -n lv_root
lvcreate -L 250GB volgroup0 -n lv_home (oppure usa "-L 250GB" per specificare il size, con "-l 100%FREE" utilizza tutto lo spazio disponibile rimasto).
modprobe dm_mod
vgscan
vgchange -ay

formattare la partizione di root

1
mkfs.ext4 /dev/volgroup0/lv_root

Mount della partizione root

1
mount /dev/volgroup0/lv_root /mnt

create la directory dove montare la partizione boot:

1
mkdir /mnt/boot

Mount partizione di boot

1
mount /dev/<DEVICE partizione 2> /mnt/boot

Formattazione della partizione home

1
mkfs.ext4 /dev/volgroup0/lv_home

Creare il mount point della aprtizione home

1
mkdir /mnt/home

Mount del volume home

1
mount /dev/volgroup0/lv_home /mnt/home

Creare dirctory /etc

1
mkdir /mnt/etc

Creare il /etc/fstab file

1
genfstab -U -p /mnt >> /mnt/etc/fstab

Controllare /etc/fstab file

1
cat /mnt/etc/fstab

Installare e Configurare il sistema

Per installare Arch sul tuo hard disk, dobbiamo montare le partizioni nelle directory appropiate. Montiamo la root (/dev/sda3 o dove configurata la partizione root) nella directory /mnt.

1
mount /dev/sda3 /mnt

e installiamo i pacchetti base linux

1
pacstrap /mnt base linux linux-firmware

Opzionali, per i pacchetti LTS:

1
pacstrap /mnt linux-lts linux-lts-headers

Una volta terminato, generate il file system table usando genfstab.

1
genfstab -U /mnt >> /mnt/etc/fstab

Arch Linux è su e pronto nella directory /mnt. Per accedere a root:

1
arch-chroot /mnt

per impostare il time locale della macchina creiamo un link simbolico (sostituite [Region] e [City] a seconda della vostra posizione):

1
ln -sf /usr/share/zoneinfo/[Region]/[City] /etc/localtime

per sincronizzare l’orologio usiamo

1
hwclock --systohc

prima di continuare installiamo alcuni pacchetti tra cui uno degli editor:

1
pacman -S vim nano 

pacchetti networking:

1
pacman -S networkmanager wpa_supplicant wireless_tools netctl

richiesti per wifi-menu:

1
pacman -S dialog

opzionale per aggiungee supporto al LVM

1
pacman -S lvm2

modificate il file “/etc/locale.gen” a seconda del vostro editor e decommentate a seconda della vostra necessità. Nel nostro caso it_IT.UTF-8 UTF-8 usando Vim.

1
vim /etc/locale.gen

dopo la modifica eseguite locale-gen nel terminale per confermare la configurazione

Rinominiamo come volete l’hostname della nostra macchina:

1
vim /etc/hostname

andiamo a definire nel seguente file gli hostname:

1
vim /etc/hosts

Ricorda di rimpiazzare hostname dichiarando nel file l’hostname scelto con il comando precedente.

1
2
3
127.0.0.1        localhost
::1              localhost
127.0.1.1        [hostname].localdomain        [hostname]

Creare e Configurare Utenti

cambiamo la password di root eseguendo il comando passwd. Poi create ulteriori utenti non-root rimpiazzando [username] con un nome a tua scelta:

1
useradd -m [username]

configuriamo una password per l’utente:

1
passwd [username]

e aggiungiamolo a vari gruppi d’interesse

1
usermod -aG wheel,video,audio,optical,storage [username]

installiamo sudo per permettere agli utenti inseriti nel gruppo wheel di prendere i privilegi di root

1
pacman -S sudo

e con il comando visudo

andremo a rimuovere il # sulla riga %wheel ALL=(ALL) ALL

se avrete problemi con gli editor potete scrivere come comando EDITOR=nano o vim visudo per definire l’editor di testo da usare con il visudo

Configurare GRUB Bootloader

installiamo il pacchetto grub con pacman

1
pacman -S grub

e pacchetti addizionali per permettere il corretto funzionamento del bootloader

1
pacman -S efibootmgr dosfstools os-prober mtools

Montiamo la nostra partizione EFI (/dev/sda1) sul filesystem /boot/EFI. Da creare prima con il comando mkdir.

1
2
mkdir /boot/EFI
mount /dev/sda1 /boot/EFI

eseguiamo il grub-install script per configurare il bootloader nella directory.

1
grub-install --target=x86_64-efi --efi-directory=/boot/EFI --bootloader-id=grub

generiamo la configurazione GRUB usando grub-mkconfig:

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

e ramdisk environment iniziale

1
mkinitcpio -p linux

adesso potete installare ogni possibile pacchetto mancante come il dhcpd e abilitare i vari servizi come:

1
systemctl enable NetworkManager

in fine, rimuovete le mount

1
2
3
umount /mnt/boot
umount /mnt
reboot

Desktop Environment per Arch (xfce4)

A differenza di altre distro linux, arch linux non ne ha una propria preinstallata ma se ne possono comunque installarne diverse. In questo esempio userò xfce4

1
sudo pacman -S xorg

Se installate su macchina virtuale (con virtual box ad esempio) installate i seguenti pacchetti opzionali:

1
sudo pacman -S virtualbox-guest-utils xf86-video-vmware

andiamo ad installare l’environment scelto:

1
sudo pacman -S xfce4 xfce4-goodies

e la schermata base di login utente

1
sudo pacman -S lightdm lightdm-gtk-greeter
1
sudo systemctl enable lightdm

al reboot del sistema avrete la vostra interfaccia grafica.

Per AMD CPU

1
sudo pacman -S amd-ucode

Per Intel CPU

1
sudo pacman -S intel-ucode

Supporto 3D per Intel o AMD GPU

installare il pacchetto mesa:

1
sudo pacman -S mesa

Opzionali Intel GPU

1
sudo pacman -S libva-intel-driver vulkan-intel xf86-video-intel

Opzionali AMD GPU

1
sudo pacman -S xf86-video-amdgpu opencl-mesa amdvlk 

Nvidia GPU

1
sudo pacman -S nvidia nvidia-utils

nvidia-lts se avete installato la versione LTS del kernel:

1
sudo pacman -S nvidia-lts

Per ogni configurazione di driver e pacchetti/applicazioni prendete altamente in considerazione il seguente link


Questo post è sotto licenza CC BY 4.0 a nome dell'autore.

DISCLAIMER: Questo blog non rappresenta una testata giornalistica in quanto viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge N°62 del 07/03/2001. Leggi di più

© Cybertome. Alcuni diritti riservati.

Servizio offerto da Jekyll con tema Chirpy