Arch Linux: installazione e primi passi [con installer]

24 luglio 2021

Un'installazione guidata del sistema operativo Linux più potente in circolazione, con tanto di trucchi da terminale

Ads

Arch Linux è un sistema operativo moderno e leggero basato su Linux (una cosiddetta distribuzione di Linux), che segue la filosofia del fai da te (DIY in inglese), lasciando agli utenti piena libertà di scelta sulla configurazione, dai programmi installati all’interfaccia grafica da utilizzare.

La mia installazione personale di Arch, con dwm come Window Manager

È perciò consigliato per chi abbia voglia di smanettare un po’ con il proprio computer e curiosità di utilizzare la riga di comando, strumento imprescindibile per chi vuole usare Linux. Questo non significa però che Arch Linux sia adatto solamente per utenti esperti: infatti, questa distro è nota per la qualità impareggiabile della sua wiki, una risorsa di apprendimento così valida che è spesso punto di riferimento per altre distro. Al suo interno, troveremo guide sulla configurazione delle periferiche, su che programmi installare, o sulla compatibilità hardware, ad esempio.


Arch è adatto a qualsiasi workflow, dall’uso produttivo in ufficio, fino allo studio o all’utilizzo professionale, in quanto offre tantissimi pacchetti nelle sue repository, che sono aggiornatissime: adotta infatti un modello di rilascio “veloce” (rolling-release in inglese), ovvero il software viene sempre aggiornato all’ultima versione stabile disponibile. Inoltre, molti programmi popolari, tra cui chrome, zoom, teams e spotify per nominarne alcuni, sono disponibili nella AUR (Arch User Repository), un altro punto di forza di questa distro, che contiene decine di migliaia di pacchetti aggiuntivi, tra cui software proprietario spesso non disponibile su altre distro.

In questo articolo, vedremo quindi come installare e configurare Arch Linux in modo da avere un’interfaccia grafica a nostra disposizione, insieme a qualche trucco da terminale per chi vuole avventurarsi in tale mondo.

# Scaricare la ISO 📀

Prima di tutto, scarichiamo l’immagine del sistema operativo dal sito ufficiale, navighiamo alla sezione Italy, selezionando il mirror archmirror.it, e poi clicchiamo su archlinux-2021.07.01-x86_64.iso per scaricare la ISO:

Scelta del Mirror per l'installazione

Selezione del file .iso

# Flashare la ISO

A questo punto, possiamo masterizzare l’immagine su di una chiavetta USB:

Per farlo, scarichiamo il programma open-source Balena Etcher, disponibile su GitHub: https://github.com/balena-io/etcher, che possiamo installare utilizzando Chocolatey: scriviamo da una PowerShell di Windows avviata come amministratore

choco install etcher -y

Alternativamente, scarichiamo l’eseguibile .exe dal sito ufficiale:

https://www.balena.io/etcher/

A questo punto, inseriamo una chiavetta usb nel nostro pc(basta che sia di almeno 1GB di capienza), e apriamo Balena Etcher: pigiamo su Flash from file, e da Esplora Risorse selezioniamo l’immagine ISO che abbiamo scaricato precedentemente.

Schermata iniziale di Etcher

Una volta fatto ciò, scegliamo il Target, ovvero la USB che vogliamo utilizzare; se non è già stata rilevata automaticamente la selezioniamo tramite il bottone Change (ATTENZIONE a scegliere la chiavetta giusta, in quanto tutti i dati presenti sul drive selezionato verranno eliminati).

Ora, non facciamo altro che cliccare su Flash!, ed aspettiamo che finisca.

Da questo punto in poi, è consigliato avere un disco(i.e. SSD) fisicamente separato da quello principale, sul quale andremo installare Arch Linux; installarlo in dual boot con Windows sullo stesso disco è possibile, ma non lo vedremo in questo articolo: per chi volesse provarci, la wiki di Arch contiene una guida al riguardo!

# Installazione

Per avviare da USB, premiamo un tasto appena si avvia il computer; di solito è uno tra F2, Esc, Del oppure un altro degli Fn(a volte il tasto da premere è indicato brevemente durante l’avvio); se non funziona la prima volta proviamo anche a tenere premuto il tasto.

Bootloader (GRUB) dell'installer

Dal menu qua sopra, selezioniamo la prima scelta, e appena avviato ci troveremo di fronte ad una schermata di benvenuto ed un’interfaccia testuale (cosiddetta console virtuale, o tty):

Schermata di benvenuto dell'immagine d'installazione

# Preparazione

# Tastiera

Per assicurarci di digitare correttamente i caratteri della password di una rete Wireless al passo successivo, possiamo eventualmente digitare il seguente comando e premere invio per cambiare il layout della tastiera(ad esempio se abbiamo una tastiera Italiana, visto che il layout di default è Americano):

loadkeys it

Se volessimo invece utilizzare un altro layout, possiamo utilizzare questo comando per cercare l’identificativo del layout desiderato(da inserire al posto di it nel comando qui sopra):

localectl list-keys

Per muoversi nella lista che compare usiamo le frecce direzionali, mentre per uscire ci basterà premere q.

# Connessione

Per connetterci a Internet, usare un collegamento ethernet è l’opzione più facile e non richiede configurazione aggiuntiva; se invece vogliamo utilizzare il WiFi, digitiamo iwctl, premiamo invio e poi digitiamo, in ordine:

station list

per ottenere il nome del dispositivo wireless(i.e. wlan0 o wlp2s0), e

station <Nome Dispositivo Wireless> scan
station <Nome Dispositivo Wireless> get-networks
station <Nome Dispositivo Wireless> connect <SSID(Nome) Rete WiFi>

per connettersi alla rete.

# Archinstall

A questo punto, digitiamo archinstall e premiamo invio per avviare il processo d’installazione guidata di Arch. Dopo qualche secondo, l’installer inizierà a farci delle domande: vediamo insieme cosa rispondere a quelle meno ovvie.

# Formattazione disco

Qua dovremo selezionare il disco SSD su cui vogliamo installare Arch Linux. Questo potrebbe essere chiamato /dev/sda o /dev/sdb, e ricordiamoci che l’installazione formatterà il disco, cancellando tutti i dati presenti su di esso, per cui stiamo attenti a quale selezionamo!

Formattazione del disco

# Filesystem

Qui, selezioniamo ext4 come filesystem principale per il sistema, essendo la scelta classica e la più stabile.

Scelta del filesystem principale per il sistema

# Cifratura del disco:

Abbiamo la possibilità di criptare l’intero sistema(compresi i dati); se non vogliamo fare ciò basterà lasciare vuoto questo campo.

Criptazione del disco

# Ambiente Grafico

Scelta dell'ambiente grafico da utilizzare nel sistema

Selezioniamo desktop, e scegliamo uno dei tanti ambienti grafici disponibili:

  • GNOME è una scelta popolare per la produttività, e sarà familiare a coloro che hanno già provato Ubuntu oppure Pop! OS:

    GNOME

  • KDE è adatto a coloro che vogliono avere pieno controllo su tutti i dettagli dell’ambiente grafico; è un Desktop Environment(DE) molto curato che permette di personalizzare qualsiasi cosa, dalle decorazioni delle finestre alle scorciatoie da tastiera, in modo facile ed intuitivo:

    KDE

  • Infine, XFCE è perfetto se possediamo un laptop un po’ più vecchiotto, in quanto fa un utilizzo molto moderato delle risorse di sistema:

    XFCE

# Pacchetti aggiuntivi

Il software installato di default su Arch Linux è ben poco, nello spirito del minimalismo e della scelta data all’utente; qui possiamo installare pacchetti aggiuntivi, ad esempio chromium, vlc ed fzf(quest’ultimo ci servirà più avanti); scriviamoli separati da spazi e premiamo invio:

# Network

Per la configurazione di rete, NetworkManager come in figura:

# Timezone

Digitiamo Europe/Rome per avere data e orario corretti per l’Italia.


Il resto delle opzioni le lasciamo come default, e infine quando vediamo Press Enter to continue facciamo esattamente ciò, e l’installazione automatica verrà eseguita.

ATTENZIONE: una volta premuto invio, verrà realmente formattato il disco scelto in precedenza.

Infine, rispondiamo n alla domanda riguardo all’eseguire configurazioni aggiuntive in chroot, e digitiamo sudo reboot e invio per riavviare il computer.

# Post Installazione

Ora che abbiamo installato Arch Linux sul nostro computer, vediamo insieme i comandi da riga di comando che ci serviranno a gestire i programmi. Vi sono anche interfaccie grafiche per gestire i programmi come octopi o pamac, ma il modo più sicuro per installare i pacchetti è tramite il terminale.

# Gestione dei pacchetti: Pacman 📦

Uno dei vantaggi nell’utilizzare Arch Linux sta nella presenza del pacchetto pacman che, oltre al binario omonimo che serve a installare, aggiornare e gestire i programmi in modo facile ed efficiente, contiene anche makepkg, uno strumento che rende la compilazione di pacchetti non presenti nelle repository ufficiali piuttosto comodo.

# Installazione

Vediamo quindi come usare i vari flag di pacman: se vogliamo installare un certo programma, ad esempio zsh, una shell molto potente per il nostro terminale, andiamo sulla riga di comando e digitiamo sudo pacman -S zsh, premiamo Invio due volte (per confermare), e in un paio di secondi il binario del programma sarà installato nel nostro sistema. Veloce, no?

# Rimozione

Analogamente, per rimuovere un programma dal sistema ci basterà digitare sudo pacman -R zsh. Se poi vogliamo rimuovere, oltre al pacchetto, pure le sue dipendenze non utilizzate da altri programmi, possiamo aggiungere il flag -s: sudo pacman -Rs zsh.

# Aggiornamenti

Per quanto riguarda gli aggiornamenti, con pacman possiamo aggiornare il database dei pacchetti ed aggiornare tutti i programmi installati con il seguente comando:

sudo pacman -Syu

Vediamo cosa fanno le varie opzioni:

  • -S interroga il database dei pacchetti remoti,
  • -y si occupa di sincronizzare il database locale con quello remoto,
  • -u effettua infine l’aggiornamento dei pacchetti.

# Ricerca e informazioni sui pacchetti

Altre flag molto utili di pacman sono poi:

  • pacman -Ss <NOME PROGRAMMA O DESCRIZIONE> per cercare un pacchetto specifico,
  • pacman -Qi <PROGRAMMA> per ottenere informazioni riguardo ad un pacchetto installato,
  • pacman -Ql <PROGRAMMA> per ottenere una lista dei file che appartengono ad un certo pacchetto, e
  • pacman -Qq elencherà tutti i programmi installati nel sistema, uno per riga.

NOTA: Gli ultimi quattro non necessitano di essere eseguite tramite sudo, in quanto non modificano i pacchetti installati nel sistema.

# Manutenzione

Un’operazione che è bene effettuare periodicamente per risparmiare spazio nel disco è quella di disinstallare i pacchetti orfani, ovvero installati come dipendenze di programmi non più presenti nel sistema. Possiamo farlo con il seguente comando:

sudo pacman -Rns "$(pacman -Qttdq)"

Infine, se vogliamo conoscere più trucchi su come usare pacman, possiamo trovarne quanti ne vogliamo in questo articolo della wiki.

# Zsh

Prima abbiamo installato zsh (se l’abbiamo rimossa, reinstalliamola): impostiamola come la shell predefinita del nostro terminale, e vediamo come configurarla automaticamente per avere molte comodità aggiuntive quali la colorazione dei comandi secondo la sintassi e auto-completamento per comandi già digitati in passato.

  • Impostiamo la nostra shell di login:

    sudo chsh -s /bin/zsh <NOME UTENTE>
    
  • Installiamo zsh4humans, un framework per zsh che ha tutti i vantaggi elencati sopra, e renderà il nostro terminale funzionale ed estetico:

    sh -c "$(curl -fsSL https://raw.githubusercontent.com/romkatv/zsh4humans/v5/install)"
    

    Anche qui, come per archinstall, ci sarà un installer guidato che consentirà di personalizzare la configurazione automaticamente.

    Un esempio di configurazione finale (i colori dipenderanno in gran parte dal colorscheme del terminale):

    Zsh 4 Humans

# AUR: 70.000+ programmi aggiuntivi

Vediamo infine come installare pacchetti dalla Arch User Repository(AUR): questi sono pacchetti contribuiti dagli utenti di Arch Linux stessi, ed è ciò che rende Arch la distribuzione meglio fornita in termini di disponibilità software. Per installare pacchetti dalla AUR, basta visitare https://aur.archlinux.org, cercare un pacchetto, scaricarne lo snapshot dal bottone apposito, estrarlo, entrare nella cartella estratta da terminale e digitare

makepkg -si

per installarlo nel nostro sistema. Tuttavia, possiamo automizzare tutto ciò usando paru, un gestore di pacchetti che complementa pacman per la AUR. paru riconosce tutte le flag di pacman, per cui potremo usarlo per installare e rimuovere pacchetti sia dalle repository ufficiali che dalla AUR con esso! Per installarlo, digitiamo i seguenti comandi:

sudo pacman -S --needed base-devel git
git clone https://aur.archlinux.org/paru-bin.git
cd paru-bin
makepkg -si

Per risparmiare tempo abbiamo installato il pacchetto binario di paru invece di compilarlo da sorgente

Adesso, se vogliamo installare il browser proprietario Chrome di Google, tutto quello che dobbiamo fare sarà digitare

paru -S chrome

NOTA: paru, a differenza di pacman, non richiede l’utilizzo di sudo, ma ci richiederà la password al momento dell’installazione, quindi stiamo pronti ad inserirla!

Inoltre, ora per aggiornare il sistema, sia pacchetti ufficiali che pacchetti nella AUR, ci basterà digitare paru!

Se poi siamo estremamente pigri, possiamo abbreviare il comando ancora di più, defininendo un alias per il comando, aggiungendo la seguente riga al file /home/UTENTE/.zshrc:

alias y='paru'

Se non vogliamo utilizzare un editor di testo per fare questa modifica, possiamo sempre scrivere il file dando il seguente comando da terminale: printf "alias y='paru'\n" >> ~/.zshrc

Dopodiché, y aggiornerà il sistema, y -Ss cercherà pacchetti, etc.

Infine, se vogliamo evitare di dover premere q per saltare la revisione del PKGBUILD (file che descrive come compilare il programma) all’installazione di ogni nuovo pacchetto (è una misura di sicurezza per noi stessi, ma la stragrande maggioranza dei pacchetti sono stati già analizzati da altre persone, soprattutto se è software comune), possiamo aggiungere una riga al file di configurazione di paru per disabilitarla:

mkdir -p ~/.config/paru && printf "[options]\nSkipReview\nUpgradeMenu\nBottomUp\n" >> ~/.config/paru/paru.conf

Questo abilita pure delle comodità grafiche nell’interfaccia di aggiornamento e di ricerca di paru.

# Automatizziamo tutto

Ci ricordiamo ancora di fzf, quel pacchetto che abbiamo installato all’inizio? Vediamo come possiamo usarlo per rendere l’installazione e la rimozione di pacchetti facile e rapida:

Prima di tutto, eseguiamo questo comando per definire le due funzioni che ci serviranno all’interno del file di configurazione di zsh, ~/.zshrc(~ sta per la variabile cosiddetta d’ambiente $HOME, ovvero il percorso /home/NOMEUTENTE):

printf "in() {\nparu -Slq | fzf -q "$1" -m --preview 'paru -Si {1}'| xargs -ro paru -S\n}\nre() {\nparu -Qq | fzf -q "$1" -m --preview 'paru -Qi {1}' | xargs -ro paru -Rns\n}\n" >> ~/.zshrc

Una volta fatto ciò, potremo cercare interattivamente pacchetti digitando in più Invio, selezionando uno(o più) pacchetti premendo Tab, ed infine confermando con Invio per installarli.

Allo stesso modo, digitando re potremo rimuovere facilmente in modo interattivo uno(o più) pacchetti(stiamo attenti con quest’ultimo, visto che rimuove pacchetti utilizzando il flag -s che come abbiamo visto rimuove pure tutte le dipendenze!)

Per farsi un'idea di come appare l'interfaccia di `fzf`

# Conclusione

Arch Linux è una distro che si fa notare per la sua versatilità e leggerezza. Possiede inolte una comunità di utenti in gamba, che fanno un ottimo lavoro nel mantenere la wiki e nel rispondere a domande e problemi sul forum ufficiale.

Se proviamo a divertirci un po’ con questo sistema, riusciremo a capire meglio come funziona Linux, ed a sfruttarlo per utilizzare al meglio le potenzialità del nostro PC. E se ci blocchiamo su qualcosa, ricordiamoci sempre di consultare la wiki. Ad esempio, potremmo iniziare dallo sfogliare questo articolo:

https://wiki.archlinux.org/title/General_recommendations

Infine, se vogliamo imparare a configurare il nostro sistema fino ai minimi dettagli, o se ci piace avere un desktop con una certa estetica, è d’obbligo dare un’occhiata ai dotfiles di altre persone, ovvero i file di configurazione dei vari programmi installati che vengono condivisi sul Web. Ecco quindi qualche link per trovarne alcune collezioni utili, sia per imparare che per divertirsi:

https://wiki.archlinux.org/title/Dotfiles

https://wiki.thingsandstuff.org/Dotfiles

https://dotfiles.github.io/inspiration/

https://github.com/bachoseven/dotfiles