Help:Reading (Italiano)

From ArchWiki
Translation Status: This article is a localized version of Help:Reading. Last translation date: 2022-09-17. You can help to synchronize the translation, if there were changes in the English version.

Poiché la maggior parte di ArchWiki contiene indicazioni che potrebbero richiedere chiarimenti per i nuovi utenti di Arch Linux (o GNU/Linux in generale), e' stata redatta questa rassegna di procedure di base sia per evitare confusione nell'assimilazione degli articoli sia per scoraggiare la ripetizione dei contenuti stessi.

Organizzazione

La maggior parte degli articoli ArchWiki non adottano un approccio olistico nel tentativo di illustrare un singolo argomento; questi contributi sono al contrario scritti sulla base del principio DRY, e dell'assunto che l'utente provvederà a cercare e leggere ogni tipologia di materiale di supporto relativo agli argomenti di cui non abbia ancora piena comprensione. Ove possibile, detto materiale viene indicato all'interno dell'articolo mediante una formattazione speciale, vedere #Formattazione.

In ragione di questo tipo di organizzazione, potrebbe essere necessario esaminare diverse fonti correlate per comprendere a pieno il contenuto di un articolo ArchWiki. In particolare, i nuovi utenti Arch (o GNU/Linux in generale) possono avere la ragionevole aspettativa di dover leggere un numero consistente di articoli per risolvere anche i problemi più semplici. È oltremodo importante studiare il materiale di supporto prima di chiedere ulteriore aiuto ad altri utenti.

Formattazione

Utente normale o root

Alcune righe di comando sono riportate come segue:

# mkinitcpio -p linux

mentre altre hanno un prefisso diverso:

$ makepkg -s

Il cancelletto o hashtag (#) indica che un comando deve essere eseguito come utente root, mentre il simbolo del dollaro ($) segnala che il comando va eseguito come utente normale.

Nota: I comandi con prefisso # devono essere eseguiti da una shell root, alla quale è ad esempio possibile accedere facilmente utilizzando il comando sudo -i. L'esecuzione di sudo comando da una shell senza privilegi root anziché di comando da una shell root è altresì una soluzione che funzionerà nella maggior parte dei casi, con alcune significative eccezioni quali la redirezione e la sostituzione di comandi, che richiedono obbligatoriamente una shell root. Vedere anche sudo.

Un'eccezione rilevante alla quale prestare attenzione:

# This alias makes ls colorize the listing
alias ls='ls --color=auto'

In questo esempio, il contesto in cui si trova il cancelletto comunica che il testo dopo di esso non deve essere eseguito come comando; questa linea è invece destinata a essere inserita in un file. Pertanto, in questo caso, il cancelletto denota un commento. Un commento può rappresentare un testo con funzione esplicativa che non verrà interpretato dal programma associato. Incidentalmente, l'indicazione dei commenti negli script Bash coincide con il simbolo root PS1.

A un ulteriore esame, si rileva che gli elementi che segnalano che non si tratta di un comando includono il carattere maiuscolo immediatamente dopo il segno #. Di norma, i comandi Unix non sono scritti in questo modo e nella maggior parte dei casi si tratta di abbreviazioni anziché parole inglesi riportate per esteso (ad esempio., Copy diventa cp).

In ogni caso, il più delle volte gli articoli semplificano l'identificazione di questi casi segnalandoli esplicitamente al lettore:

Aggiungere alla fine del file ~/path/to/file:

# This alias makes ls colorize the listing
alias ls='ls --color=auto'

Apporre, aggiungere, creare, modificare

Quando si riceve l'istruzione di aggiungere alla fine di un file (il termine inglese append indica l'azione di aggiungere un contenuto esattamente alla fine), di aggiungere a (il termine inglese add indica l'azione di aggiungere senza alcun vincolo di posizione), di creare o di modificare uno o più file, si presuppone l'utilizzo di uno dei seguenti metodi.

Per creare o modificare file con più linee si consiglia l'utilizzo di un editor di testo. Ad esempio, per utilizzare nano per modificare il file /etc/bash.bashrc eseguire il seguente comando:

# nano /etc/bash.bashrc

Per creare o sovrascrivere un file da una stringa potrebbe risultare più semplice utilizzare la redirezione dell'output. Il seguente esempio crea o sovrascrive il contenuto del file /etc/hostname con il testo myhostname.

# echo myhostname > /etc/hostname

La redirezione dell'output può essere utilizzata anche per aggiungere una stringa alla fine di un file. Il seguente esempio aggiunge il testo [custom-repo] alla fine del file /etc/pacman.conf.

# echo "[custom-repo]" >> /etc/pacman.conf

Quando viene data l'istruzione di creare una cartella, utilizzare il comando mkdir:

# mkdir /mnt/boot

Rendere un file eseguibile

Dopo aver creato un file, se questo deve essere eseguito come script (manualmente o da parte di un altro programma) sarà necessario renderlo eseguibile, ad esempio con il comando:

$ chmod +x script

Vedere chmod. Alcune applicazioni quali i file manager potrebbero fornire delle interfacce grafiche per eseguire questa operazione.

Source

Determinate applicazioni, in particolare le shell della riga di comando, utilizzano degli script per gestire la propria configurazione: dopo averli modificati, questi script devono essere sourced affinché le modifiche vengano effettivamente applicate. Nel caso di bash, ad esempio, questa operazione si esegue con il comando (è altresì possibile sostituire source con .):

$ source ~/.bashrc

Nei casi in cui la wiki suggerisce di modificare uno di questi script di configurazione, non verrà ricordata esplicitamente la necessità di eseguire l'operazione di source del file, e solo in alcuni casi sarà presente un link che rimanda a questa sezione come promemoria.

Installazione di pacchetti

Quando un articolo invita a installare dei pacchetti in modo convenzionale, non indicherà le istruzioni dettagliate per eseguire questa operazione, limitandosi invece a menzionare i nomi dei pacchetti da installare.

Nota: Spesso vengono utilizzati link installare o installato che rimandano al presente articolo. Tuttavia è necessario che JavaScript sia abilitato affinché questi link funzionino.

I sottoparagrafi di seguito forniscono una panoramica delle procedure generiche di installazione a seconda del tipo di pacchetto.

Pacchetti ufficiali

Per i pacchetti presenti nei repository ufficiali si leggerà un testo di questo tipo:

Installare il pacchetto foobar.

Ciò significa che si dovrà eseguire il comando:

# pacman -S foobar

L'articolo pacman illustra in modo dettagliato le nozioni per una corretta gestione dei pacchetti in Arch Linux.

Arch User Repository

Per i pacchetti presenti nell'Arch User Repository (AUR) si leggerà un testo di questo tipo:

Installare il pacchetto foobarAUR.

Ciò significa che occorre in generale seguire il link foobarAUR, scaricare l'archivio PKGBUILD, estrarlo, verificarne il contenuto e infine eseguire, nella medesima cartella:

$ makepkg -si
Nota: Per compilare i programmi presenti nell'AUR o per utilizzare il sistema ABS è necessario installare il gruppo di pacchetti base-devel.

L'articolo Arch User Repository contiene tutte le spiegazioni dettagliate e le migliori pratiche per la gestione dei pacchetti AUR.

Controllo delle unità systemd

Quando un articolo invita a avviare, abilitare, arrestare o riavviare determinate unità systemd (ad es. un servizio), non riporterà le istruzioni dettagliate per eseguire queste operazioni, bensì sarà presente un testo di questo tipo:

Avviare example.service.

Ciò significa che si dovrà eseguire il comando:

# systemctl start example.service

Il link start condurrà all'articolo relativo a systemd, contenente tutte le spiegazioni dettagliate per gestire in modo ottimale le unità di systemd nei sistemi Arch Linux.

Nota: I link avviare, abilitare, arrestare, riavviare... rimandano a specifiche sezioni, e pertanto funzioneranno soltanto se JavaScript è attivo.

Configurazione a livello di sistema o specifica per utente

È importante ricordare che in un sistema GNU/Linux sono due i tipi di configurazione possibili. Una configurazione a livello di sistema riguarda tutti gli utenti. Dal momento che le impostazioni a livello di sistema si trovano di norma nella cartella /etc, per modificarle è necessari possedere i privilegi di root. Ad esempio, per applicare un'impostazione Bash per tutti gli utenti si dovrà modificare il file /etc/bash.bashrc.

Una configurazione specifica per utente riguarda esclusivamente un singolo utente. A tal fine si utilizzano i cosiddetti dotfiles. Ad esempio, il file ~/.bashrc è il file di configurazione specifico per l'utente. L'idea alla base di questo approccio è la possibilità per ogni utente di definire le proprie impostazioni, quali alias, funzioni e altre caratteristiche interattive quali il prompt, senza incidere su quelle degli altri utenti.

Nota: ~/ e $HOME sono scorciatoie per la cartella home dell'utente, di norma /home/nome utente/.

File comuni della shell

Bash e altre shell compatibili con quest'ultima, come Zsh, eseguono il sourcing di file diversi a seconda che si tratti di shell di login o di shell interattiva. Vedere Bash#Configuration files e Zsh#Startup/Shutdown files per maggiori dettagli.

Pseudo-variabili negli esempi di codice

Alcuni blocchi di codice possono contenere le cosiddette pseudo-variabili le quali, come in effetti testimoniato dal nome, non sono vere e proprie variabili utilizzate nel codice. Si tratta invece di segnaposto generici che devono essere sostituiti manualmente con elementi specifici di configurazione del sistema prima che il codice possa essere eseguito o analizzato. Le shell di comune utilizzo come bash e zsh offrono la funzione di tab-completion per completare in modo automatico i parametri dei comandi più comuni come ad esempio systemctl.

Negli articoli che si conformano alle regole di formattazione e punteggiatura, le pseudo-variabili sono formattate in stile italico. Ad esempio:

  • Abilitare il servizio dhcpcd@nome_interfaccia.service per l'interfaccia di rete identificata dall'output del comando ip link.

In questo caso nome_interfaccia viene utilizzato come una pseudo-variabile segnaposto in un'unità modello systemd. Tutte le unità modello systemd, identificabili in virtù della presenza del carattere @, richiedono un elemento di configurazione specifico per il sistema come argomento. Vedere Systemd#Using units.

  • Il comando dd if=sorgente_dati of=/dev/sdX bs=dimensione_settori count=numero_settori seek=settore_inizio_partizioni può essere eseguito come utente root per cancellare una partizione con i parametri specificati.

In questo caso le pseudo-variabili sono utilizzate per descrivere i parametri che devono essere inseriti al loro posto. I dettagli su come individuare tali parametri sono disponibili nella sezione Securely wipe disk#Calculate blocks to wipe manually, nella quale è descritto il comando.

This article or section needs expansion.

Reason: Menzionare altri esempi, idealmente da altre categorie di dispositivi (ad es. archiviazione), con link che rimandino ad articoli di descrizione del background. Gli esempi hanno la finalità di evitare la ripetizione di spiegazioni già esistenti in altri articoli. (Discuss in Help talk:Reading (Italiano))

Nel caso di esempi con file, incollando le pseudo-variabili all'interno di file di configurazione veri e propri si potrebbe causare il malfunzionamento dei relativi programmi.

Ellissi

Nella maggior parte dei casi le ellissi (...) non sono parte dell'effettivo contenuto del file o dell'output di codice, ma rappresentano testo omesso o opzionale, non rilevante per l'argomento trattato.

Ad esempio HOOKS="... encrypt ... filesystems ..." o:

/etc/X11/xorg.conf.d/50-synaptics.conf
Section "InputClass"
    ...
    Option      "CircularScrolling"          "on"
    Option      "CircScrollTrigger"          "0"
    ...
EndSection

Occorre tuttavia essere consapevoli che, in alcuni casi, le ellissi possono essere parte integrante della sintassi del codice: gli utenti più esperti non avranno difficoltà a riconoscere questi casi in base al contesto.