Raccolta delle guide delle sezione utilizzatori Linux della provincia di Bergamo sezione della

Valle Seriana

Guide BGLUGVS

Ringraziamenti

Con questo documento abbiamo voluto raccogliere tutte le guide da noi fatte

Indice

1 Utilizzo della shell  4
1.1 Comandi della Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1 L’uso del terminale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.2 Comandi per la gestione di file e directory . . . . . . . . . . . . . . . . 4
1.1.3 Comandi per la gestione del filesystem . . . . . . . . . . . . . . . . . . 6
1.1.4 Comandi per ottenere informazioni sul sistema . . . . . . . . . . . . . 7
1.1.5 Altri comandi utili . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.6 Eseguire comandi con privilegi elevati . . . . . . . . . . . . . . . . . . 9
1.1.7 Ottenere maggiore aiuto . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.8 Compilazione ed esecuzione . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.9 Compilazione di un programma in C . . . . . . . . . . . . . . . . . . . 10
1.1.10 Esecuzione di un programma in C . . . . . . . . . . . . . . . . . . . . 10
1.1.11 Compilazione di un sorgente .tex . . . . . . . . . . . . . . . . . . . . . 10
1.1.12 Visualizzazione file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Impostazioni Generali  11
2.1 Impostazione Wifi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.1 Due comandi molto importanti . . . . . . . . . . . . . . . . . . . . . . 11
2.1.2 Impostazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Capitolo 1

Utilizzo della shell

1.1 Comandi della Shell

Sommario

Questa guida nasce con l’intento di raccolgiere alcune piccole indicazioni che possono servire ad un neofita di Linux per muovere i suoi primi passi in questo OS. La guida è soprattutto incentrata sull’uso del terminale (o shell), i comandi che vengono presentati sono piuttosto semplici e servono solo per dare una visione della grande potenza della shell come strumento di gestione del sistema.

1.1.1 L’uso del terminale

In un sistema operativo, la shell è il programma che permette agli utenti di comunicare con il sistema e di avviare i programmi. È una delle componenti principali di un sistema operativo, insieme al kernel. La shell è l’ambiente di lavoro attraverso il quale è possibile impartire al computer comandi, richiedendo l’esecuzione di programmi. Tutti i comandi devono essere eseguiti dalla linea di comando ricordando che Linux è case sensitive: User, user, e USER sono tutte cose diverse per Linux.

1.1.2 Comandi per la gestione di file e directory

pwd

Il comando pwd serve per mostrare la directory in cui ci si trova. La sintassi del comando è la seguente:

- pwd [opzioni]

ls

Il comando ls serve per elencare il contenuto di una directory. La sintassi del comando è la seguente:

- ls [opzione] [directory]

Alcune opzioni da utilizzare con il comando ls:

directory elenca il contenuto della directory specificata, se non specificata viene considerata la directory corrente;

-a elenca anche i file nascosti;

-l elenco dettagliato di file e sotto directory con i loro attributi;

-R elenca ricorsivamente i file nella directory indicata e in tutte le sottodirectory;

-s mostra le dimensioni del file;

-S ordina i file per dimensione partendo dal più grande;

Guide BGLUGVS

-u ordina i file per data e ora di accesso partendo dal più recente; -X ordina i file per estensione e ordine alfabetico; -r elenca i file invertendone l’ordine; -color mostra i file con colori differenti.

cd Il comando cd serve per spostarsi all’interno delle directory del filesystem. La sintassi del comando è la seguente:

- cd [directory]

Alcuni esempi di uso del comando: cd .. Serve per spostarsi alla directory superiore; cd Serve per spostarsi, da qualsiasi punto, alla propria directory home. È equivalente a: cd

∼; cd /etc Serve per spostarsi nella directory /etc.

mkdir Il comando mkdir serve per creare directory all’interno del filesystem. La sintassi del comando è:

- mkdir [opzioni] directory

Alcuni esempi di uso del comando mkdir: mkdir prova Verrà creata la directory prova/ all’interno della directory in corrente; mkdir -p /prova1/bin In questo modo verranno create tutte le directory comprese nel

percorso, anche se la prima directory specificata non esiste.

cp Il comando cp serve per:

- copiare un file in un altro file;

- copiare un file in un’altra directory;

- copiare più file in un’altra directory;

- copiare directory La sintassi del comando è la seguente:

- cp [opzioni] origine destinazione Alcune opzioni da utilizzare con il comando cp:

-b esegue automaticamente una copia di backup di ogni file di destinazione esistente; -f forza la sovrascrittura dei file, senza richiedere interventi da parte dell’utente; -i attiva la modalità interattiva, che chiede conferma prima dell’eventuale sovrascrittura di

file preesistenti; -p mantiene, se possibile, gli attributi del file; -r permette di attivare la modalità ricorsiva, consentendo la copia di directory; -v attiva la modalità verbose, visualizza ciò che il sistema ha fatto in seguito al comando. Alcuni esempi d’uso del comando cp: cp /prova/miofile /prova1 Copia il file miofile della directory prova nella directory /pro-

va1;

Pagina 5 di 12 cp /prova/miofile /prova1/nuovofile Copia il file miofile della directory /prova nella

directory /prova1 dandogli il nome nuovofile; cp -r /prova /prova_copia Copia la cartella /prova, e tutto il suo contenuto, nella car-

tella /prova_copia; cp miofile1 miofile2 Prende il file miofile1 e ne crea una copia, nella stessa cartella,

chimata miofile2. mv Il comando mv serve per spostare, o rinominare, file e directory. La sintassi del comando è la seguente:

- mv [opzioni] origine destinazione Le opzioni sono le stesse del comando cp. Alcuni esempi di uso del comando mv:

mv miofile nuovofile Cambierà il nome al file miofile in nuovofile; mv miofile /prova Sposterà il file miofile nella directory /prova sovrascrivendo un even-

tuale file con lo stesso nome; mv /prova /prova_nuova Cambierà il nome alla directory /prova in /prova_nuova. rm e rmdir Il comando rm serve per cancellare file o directory dal file system. La sintassi del comando è la seguente:

- rm [opzioni] file

Alcune opzioni da utilizzare con il comando rm: -i chiede conferma prima di cancellare; -f forza la cancellazione del file senza chiedere conferma; -r abilita la modalità ricorsiva usata per la cancellazione delle directory Il comando rmdir serve per cancellare directory dal file system. La sintassi del comando è la seguente:

- rmdir directory

Alcuni esempi di uso del comando rm e rmdir: rm miofile Cancella il file miofile; rm -rf prova/ Cancella la directory prova/ e tutto il suo contenuto; rmdir prova/ Cancella la directory prova/ solo se questa non contiene alcun file all’interno.

1.1.3 Comandi per la gestione del filesystem

mount Il comando mount serve per visualizzare i dispositivi a cui si ha accesso (quelli presenti nel file /etc/fstab) e per montare questi dispositivi. L’operazione di montaggio in Linux significa abilitare tali dispositivi per potervi accedere. Alcuni esempi di uso del comando mount: mount Visualizza tutti i dispositivi a cui si ha accesso; mount /media/cdrom Monta in /media/cdrom il dispositivo CD-ROM. La directory

/media/cdrom viene chiamata punto di mount (o punto di montaggio). Per una descrizione più dettagliata del comando mount digitare:

- man mount umount Il comando umount serve per smontare un dispositivo precedentemente montato. La sintassi del comando umount è la seguente:

- umount [dispositivo] Alcuni esempi di uso del comando umount:

umount /media/cdrom Smonta il dispositivo CD-ROM. Per una descrizione più dettagliata del comando mount digitare:

- man umount

1.1.4 Comandi per ottenere informazioni sul sistema

du Il comando du visualizza lo spazio occupato sul disco da file o directory la sintassi è la seguente:

- du [opzioni] [file...] Alcune opzioni da utilizzare con il comando du: -a visualizza le informazioni sia sui file che sulle directory; -s visualizza la dimensione totale complessiva; -x esclude le sottodirectory che siano parte di un’altro filesystem. Ecco alcuni esempi sull’uso del comando du: du miofile Visualizza la quantità di spazio occupata da miofile; du -s ∼ Visualizza la quantità di spazio complessiva occupata dalla propria directory home. df Il comando df visualizza a schermo lo spazio rimasto sulle partizioni e sui dischi del proprio sistema. La sintassi del comando è la seguente:

- df [opzioni] [file...] Alcune opzioni da utilizzare con il comando df:

-a include nell’elenco anche i filesystem con una dimensione di 0 blocchi, che sono di natura omessi. Normalmente questi filesystem sono pseudo-filesystem con scopi particolari, come le voci per l’automounter. Filesystem di tipo «ignora» o «auto», supportati da alcuni sistemi operativi, sono inclusi solo se quest’opzione è specificata;

-h Aggiunge a ciascuna dimensione un suffisso, come M per megabyte, G per gigabyte, ecc; -H Ha lo stesso effetto di -h, ma usa le unità ufficiali SI (con potenze di 1000 piuttosto che

di 1024, per cui M sta per 1000000 invece di 1048576); -t tipofs Limita l’elenco a filesystem del tipo specificato; -x tipofs Limita l’elenco a filesystem non del tipo specificato. Un esempio di uso del comando df: df -Ht etx3 Mostra lo spazio occupato solo dai dischi con filesystem ext3, utilizzando il

suffisso specifico per l’unità di misura. free Il comando free mostra informazioni sulla memoria di sistema. Molto utile se si vuole rendersi conto della memoria disponibile sul sistema, della memoria attualmente in uso e di quella libera. La sintassi del comando è la seguente:

- free [opzioni]

Alcune opzioni da utilizzare con il comando free: -b mostra la quantità di memoria in byte; -k mostra la quantità di memoria in Kbyte (impostato di default); -t mostra una riga contente i totali. Per ulteriori informazioni sul comando free consultare il manuale:

- man free

top Il comando top visualizza informazioni riguardanti il proprio sistema, processi in esecuzione e risorse di sistema, utilizzo di CPU, RAM e spazio swap utilizzato e il numero di task in esecuzione. Per avviare top, digitare:

- top

Per uscire dal programma, premere il tasto «q». Per ulteriori informazioni sull’uso di top e sul significato delle colonne, consultare il manuale:

- man top

uname Il comando uname mostra informazioni sul sistema. La sintassi è la seguente:

- uname [opzione]

Le varie opzioni sono: -a Visualizzerà tutte le informazioni del sistema; -m Mostra il tipo di macchina; -n Mostra il nome host del nodo di rete della macchina; -s Mostra il nome del sistema operativo; -r Mostra la release del sistema operativo .

Un altro comando piuttosto utile per vedere alcune configurazioni di sistema è

- cat /proc/cpuinfo

che consente di avere a terminale informazioni generali sul processore, sul nome dello stesso e la sua velocità, il numero di core e sulla memoria di sistema.

1.1.5 Altri comandi utili

cat e less I comandi cat e less servono per mostrare il contenuto di un file:

- cat mostra semplicemente il contenuto del file specificato;

- less visualizza il contenuto di file, permette di spostarsi avanti e indietro nel testo utilizzando i tasti freccia quando i file occupano più di una pagina di schermo. È inoltre possibile eseguire delle ricerche nel testo digitando / seguito dalla parola da cercare e premendo Invio. Per terminare il programma premere il tasto q.

La sintassi del comando cat è la seguente:

- cat nomefile

La sintassi del comando less è la seguente:

- less nomefile ln

Il comando ln serve a creare un collegamento (link) ad un file o una directory. Un collegamento è un file speciale che non contiene dati, ma solo un riferimento ad un altro file: ogni operazione effettuata sul collegamento viene in realtà eseguita sul file a cui punta. La sintassi del comando ln è la seguente:

- ln -s /percorso_file_da_collegare/file_da_collegare /percorso_del_collegamento/nome_del_collegamento

L’opzione -s specifica che verrà creato un collegamento simbolico: è raccomandato usare -s. Per maggiori informazioni sul comando ln digitare:

- man ln

more

Il comando more viene solitamente utilizzato in abbinamento ad altri comandi. È un filtro che permette di visualizzare l’output di un comando , una schermata alla volta. Alcuni esempi d’uso del comando more abbinato ad altri comandi:

ls | more ;

cat miofile | more .

Il simbolo «|», solitamente chiamato pipe, serve per redirigere l’output del comando a sinistra, al comando alla sua destra. Per maggiori informazioni riguardo il comando more digitare:

- man more

locate

Il comando locate è molto utile quando si deve cercare all’interno di una directory un file contenente una parola in particolare infatti è sufficiente digitare:

- locate parola

Il terminale restiuisce un elenco con tutti i file contenenti la parola.

1.1.6 Eseguire comandi con privilegi elevati

Per eseguire alcuni comandi come amministratori del sistema o per modificare file non all’interno della propria directory home, è necessario anteporre al comando la parola sudo.

1.1.7 Ottenere maggiore aiuto

Per ottenere maggiore aiuto o informazioni riguardo un determinato comando, esiste il comando man che serve per visualizzare il manuale di un determinato comando. La sintassi del comando man è la seguente:

- man [comando]

Digitando:

- man man

verrà visualizzato il manuale del comando man. Una volta all’interno del manuale, per poter spostarsi al suo interno, basta utilizzare le frecce direzionali. Per uscire dal manuale premere il tasto «q». Quasi tutti i comandi accettano anche l’opzione -h (o –help) che fornisce una breve descrizione sull’utilizzo del comando e delle sue opzioni. I manuali sono redatti in lingua inglese, ma, installando il pacchetto manpages-it, saranno disponibili anche in italiano.

1.1.8 Compilazione ed esecuzione

Un compilatore è un programma che traduce una serie di istruzioni scritte in un determinato linguaggio di programmazione (codice sorgente) in istruzioni di un altro linguaggio (codice oggetto). Questo processo di traduzione si chiama compilazione.Il compilatore prende in ingresso un programma, il codice sorgente, su cui esegue una serie di operazioni in modo da ottenere, in assenza di errori, il codice oggetto. In generale i compilatori sono in grado di riconoscere alcune classi di errori presenti nel programma, e in alcuni casi di suggerire in che modo correggerli. I compilatori attuali dividono l’operazione di compilazione in due stadi principali il front end e il back end. Nello stadio di front end il compilatore traduce il sorgente in un linguaggio intermedio (di solito interno al compilatore); nello stadio di back end avviene la generazione del codice oggetto.

1.1.9 Compilazione di un programma in C

Innanzitutto ci si deve portare nella directory dove è stato salvato il file e digitare:

- gcc <suorce>.c -o <executable binary>

1.1.10 Esecuzione di un programma in C

Un volta che il programma è stato compilato senza errori per lanciare il programma è sufficiente digitare

- ./<executable binary>

1.1.11 Compilazione di un sorgente .tex

Questo formato viene generalmente utilizzato per produrre documenti scritti in L^{A}TEXo TEX, per compilare un sorgente ci si deve spostare nella directory dove è stato salvato il file e successivamente digitare

- latex nomefile.tex

in questo modo si creano degli altri file che sono ausiliari alla compilazione e alla creazione di un documento in formato .dvi, una tipologia di file che può essere visto in modalità grafica. Un altro tipo di compilazione di un file .tex può essere fatta con questo comando

- pdflatex nomefile.tex

in questo modo viene creato un file in formato .pdf che può essere aperto con un visualizzatore di pdf come Kpdf o simili.

1.1.12 Visualizzazione file

Questi sono dei piccoli comandi per aprire dei file con i relativi visualizzatori direttamente da shell:

- xdvi nomefile.dvi

apre direttamente da shell un file in formato .dvi, generalemente un tipico formato di stampa dei file .tex.

- kpdf nomefile.pdf

permette di aprire direttamente da shell un file in formato .pdf con il visulizzatore predefinito di Linux Kpdf.

Bonacina Alberto

Capitolo 2

Impostazioni Generali

2.1 Impostazione Wifi

Sommario

In questa guida riporto quelle che sono le procedure che si devono eseguire quando si deve predisporre il computer con sistema operativo Linux per poter effettuare l’accesso a internet tramite la rete del Gruppo Utilizzatori Linux della sezione della val Seriana nell’oratorio di Gazzaniga. Voglio ringraziare Angelo Gelmi per avermi suggerito i passi da fare e tutti gli utilizzatori per il supporto che mi hanno offerto.

2.1.1 Due comandi molto importanti

Questi due comandi devono essere scritti da terminale e servono per ottenere informazioni sulle reti internet a disposizione e per settare comandi essenziali per il loro funzionamento.

• ifconfig Serve per impostare i parametri essenziali delle interfacce sia wireless che ethernet (indirizzo IP, etc..).

• iwconfig Serve per impostare i parametri essenziali radio (canale, nome della rete, chiave wep, velocità) delle interfacce wireless.

2.1.2 Impostazione

A questo punto siamo pronti per impostare la connessione quindi apriamo una shell e digitiamo:

- sudo iwconfig ath0 essid XXXXX key s:XXXXXXXXX

In questo modo si comunica la tipologia di rete che si vuole creare, in questo caso wireless, dando il comando ath0, si imposta il nome della rete attraverso il comando essid e si comunica la password di accesso alla rete che in questo caso è una stringa di caratteri. Si è dovuto scrivere all’inizio il comando sudo perchè si è dovuto comunicare al sistema che si volevano i privilegi dell’amministratore del sistema (root), in fatti ci viene chiesta la password di root. A questo punto digtiamo:

- iwconfig

e ci dovrebbe ritornare che il computer ha agganciato una rete, dovrebbe apparire un messaggio del genere

- Access Point: 00:19:5B:08:66:5E

se tutto è andato bene a questo punto si deve impostare l’indirizzo IP digitando

- ifconfig ath0

e dovrebbe apparire all’interno del messaggio di risposta

- inet addr:192.168.254.134

a questo punto si deve chiamare il router che da l’accesso a internet con

- ping 192.168.254.254 digitiamo

- sudo route add default gw 192.168.254.254 per impostare il default gateway. Quindi digitiamo

- sudo vi /etc/resolv.conf fatto questo abbiamo aperto il file resolv.conf con l’applicazione Vi in modo da poterlo modificare. Ci dovrebbe apparire un file vuoto e se proviamo a scrivere non succede niente, non succede niente perchè non siamo in modalità inserimento, per entrare in modalità inserimento dobbiamo cliccare il tasto i; una volta in modalità inserimento digitiamo

- nameserver 212.216.112.112 e poi clicchiamo il testo esc per uscire dalla modalità inserimento. A questo punto digitiamo

- :wq in modo che Vi scriva le modifiche apportate sul file e successivamente chiuda il file salvando le modifiche. A questo punto se tutto è andato bene provando a digitare ancora

- ping 192.168.254.254 e poi aprire un browser internet dovrebbe essere possibile navigare in internet.

Bonacina Alberto