Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione...

24
Linux Linux Paolo Zatelli Dipartimento di Ingegneria Civile ed Ambientale Università di Trento Paolo Zatelli | Università di Trento | 1 / 24

Transcript of Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione...

Page 1: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux

Linux

Paolo Zatelli

Dipartimento di Ingegneria Civile ed Ambientale

Università di Trento

Paolo Zatelli | Università di Trento | 1 / 24

Page 2: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux

Outline

1 Linux

2 Interfaccia

3 File e directory

4 Comandi principali

5 Gestione stream e processi

Paolo Zatelli | Università di Trento | 2 / 24

Page 3: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Linux

Linux

Linux è un clone Unix (o Unix-like OS).

E’ un sistema operativo a 32 bit multitasking, multiuser che soddisfa glistandard UNIX, in particolare è compatibile con lo IEEE POSIX.1,System V e BSD.

Supporta il controllo dei processi POSIX, il caricamento dinamico dimoduli (driver) e caricamento on-demand dei segmenti degli eseguibilie librerie dinamiche.

Supporta numerosi filesystem (ext3-ext4, fat, vfat, ntfs, ecc) e fornisceuna implementazione completa per il networking TCP/IP.

E’ disponibile sotto licenza GPL.

Paolo Zatelli | Università di Trento | 3 / 24

Page 4: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Linux

Come reperire Linux

I programmi necessari per fare funzionare Linux sono organizzati indistribuzioni, le più utilizzate sono Ubuntu/Kubuntu, Debian, RedHat,SuSE, Mandriva, Slackware.

Contengono circa lo stesso software ma hanno caratteristiche diverseper quanto riguarda: programma di installazione/aggiornamento,presenza di programmi commerciali, possibilità di assistenza apagamento e configurazione (init, organizzazione /etc, ecc.).

Sono disponibili in rete, oppure su DVD/CD reperibili anche allegati ariviste.

Paolo Zatelli | Università di Trento | 4 / 24

Page 5: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Linux

Installazione

L’installazione di Linux dipende dalla distribuzione ed è nella maggiorparte dei casi quasi automatica, con la possibilità di operare in mododiverso a seconda della perizia dell’installatore.

Si installa su una partizione (o disco) dedicato o in una directory di unfilesystem MS Windows (con Wubi, umsdos, ecc.).

E’ spesso installato in multi-boot con altri sistemi operativi: all’avvio delcomputer viene richiesto quale sistema operativo si vuole utilizzare.

Paolo Zatelli | Università di Trento | 5 / 24

Page 6: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Interfaccia

Shell e GUI

Linux utilizza come interfaccia grafico XFree86, implementazione sottoGPL della X11R6 dell’X Consortium (MIT).

X gestisce in locale ed in remoto le richieste di creazione di oggettigrafici (primitive).

L’interfaccia utente è realizzato da un window manager che determinala dispozione delle finestre e le loro proprietà (iconificazione,massimizzazione, ecc.)

Ogni interfaccia prevede la possibilità di aprire terminali testo.

Paolo Zatelli | Università di Trento | 6 / 24

Page 7: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Interfaccia

Window managers

Esiste un grande numero di window manager che determinano il lookand feel dell’interfaccia.

E’ possibile installarne più di uno e passare da uno all’altroistantaneamente. I più diffusi sono:

Kde ambiente integrato con desktop e applicazioni dedicateGnome ambiente integrato GNU più adatto a chi inizia

Xfce più “leggero” dei precendentiEnlightment più “leggero” dei precendenti, con grafica accattivante

Normalmente esiste un window manager di default a livello di sistemama l’utente può determinare il proprio default.

Paolo Zatelli | Università di Trento | 7 / 24

Page 8: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Interfaccia

Login

Per utilizzare il sistema è necessario essere un utente abilitato conusername e password.

host login: paoloPassword:

La password non viene visualizzata mentre viene immessa. Se l’usero la password sono incorrette viene visualizzato il messaggio:

Login incorrect

E’ possibile modificare la password in qualunque momento con ilcomando passwd.

Paolo Zatelli | Università di Trento | 8 / 24

Page 9: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Interfaccia

Logout

Per uscire da una shell (logout) si usa exit, oppure Ctrl-D.

Per terminare X si usa, oltre al comando del WM,ctrl-alt-backspace.

Non spegnere il computer ma eseguire la procedura di shutdown:eseguire shutdown -h now come root, oppureeseguire ctrl-alt-del da console.

Paolo Zatelli | Università di Trento | 9 / 24

Page 10: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Interfaccia

Shells

Sono disponibili diverse shell (interpreti dei comandi): bash, csh, tcsh,ksh, zsh, ecc.Cambiano lo “stile dei comandi” e i nomi dei file di configurazione, siaa livello di sistema (system-wide default) che a livello di utente.

La più utilizzata è la bash (Bourne Again SHell).

E’ possibile visualizzare la shell corrente (e molto altro) con il comandoset.

Paolo Zatelli | Università di Trento | 10 / 24

Page 11: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Interfaccia

Differenze con DOS/Win

1 Nomi dei file/directory (fino a 256 caratteri) sono case sensitive.2 Le directory sono separate da slash /.3 I file hanno permessi di esecuzione/lettura/scrittura diversi per i

diversi utenti o gruppi di utenti.4 le estensioni possono avere più di tre lettere.

Paolo Zatelli | Università di Trento | 11 / 24

Page 12: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | File e directory

Path e directory

Le directory in cui cercare gli eseguibili sono indicate nella variabile diambiente path, che può essere diversa per ogni utente. Può nonessere compresa la directory corrente “.”.

I path possono essere assoluti (partono dalla radice /) es./home/paolo/dati oppure relativi alla directory corrente es. dati.

La home directory dell’utente è quella sotto cui un utente normalmentememorizza i propri dati, è indicata dalla variabile $HOME e con

~

~/dati

Il comando cd senza argomenti porta nella home directory.

Paolo Zatelli | Università di Trento | 12 / 24

Page 13: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | File e directory

File nascosti

In unix i file il cui nome comincia con il punto . sono consideratinascosti e possono essere listati con un comando opportuno ls -a.

Grass utilizza in particolare due files nascosti:.grassrc6 nella home directory dell’utente memorizza gli ultimi set

di dati utilizzati (location e mapset) e l’interfaccia di default.gislock nella directory di ogni mapset, impedisce l’utilizzo

concorrente dello stesso mapset da parte di diverseistanze di GRASS

In caso di crash di grass il file .gislock può dovere esserecancellato manualmente per poter usare nuovamente GRASS.

Paolo Zatelli | Università di Trento | 13 / 24

Page 14: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | File e directory

File e permessi

Ogni file è di proprietà di un utente (o super-utente).

E’ possibile determinare i permessi di lettura, scrittura ed esecuzioneper ogni file a livello di owner, gruppo o world.

Il comando ls -l fornisce il listato dei file

-rw-r--r-- 1 paolo users 5718 Dec 7 15:22 slidesl.tex

in questo caso il file slidesl.tex (che state guardando!) appartieneall’utente Paolo del gruppo users, ed ha permission di lettura escrittura per l’owner e sola lettura per gli altri utenti.

Paolo Zatelli | Università di Trento | 14 / 24

Page 15: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | File e directory

File e permessi

La directory

drwxr-xr-x 2 paolo users 1024 Dec 8 18:02 figure/

ha permesso di esecuzione (necessario per entrare nella directory).

Le permission di default dei file creati dipendono dal valore delparametro umask.

Paolo Zatelli | Università di Trento | 15 / 24

Page 16: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | File e directory

File e permessi

È possibile modificare l’owner ed il gruppo di appartenenza di un filecon il comando chown user:group file.

È possibile modificare i permessi di un file con il comando chmodmodo file, dove modo è dato in modo numerico (secondo lo schema4=read, 2=write e 1=execute con tre cifre: utente, gruppo, world)oppure in modo letterale (secondo lo schema {a,u,g,o}{+,-}{r,w,x}).

Es. chmod g+w slidesl.tex aggiunge il permesso di scrittura pergli appartenenti al gruppo users per il file slidesl.tex.

Paolo Zatelli | Università di Trento | 16 / 24

Page 17: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | File e directory

File e permessi

Per l’utilizzo con Grass i file di dati (e le directory) devono appartenereall’utente che esegue grass.

L’utente deve avere il permesso di lettura dei file, scrittura di alcuni filee di lettura/scrittura delle directory (per file temporanei, risultati delleelaborazioni e lockfiles).

Paolo Zatelli | Università di Trento | 17 / 24

Page 18: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Comandi principali

Comandi principali - I

Per ogni comando è possibile avere le opzioni con comando -help, ilmanuale in linea con man comando e/o info comando. Le opzionidei comandi cominciano per - (short form) o - (long form).

cd cambia la directory corrente. Sintassi: cd directory.Si possono usare path assoluti cd /home/paolo/datio relativi cd dati, . è la directory corrente .. la parentdirectory. Il comando cd riporta alla home directory.

pwd visualizza la directory corrente. Sintassi: pwd

ls lista i file nella directory indicata (default=corrente).Sintassi: ls [file1] [file2] .... Le opzioni piùusate sono -l (long listing), a (all files) e R (ricursivo).

Paolo Zatelli | Università di Trento | 18 / 24

Page 19: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Comandi principali

Comandi principali - II

cp copia uno o più file. Sintassi: cp [file1] [file2]... [dest]. Se si copia un file la destinazione puòessere un file o una directory, se si copiano più file ladestinazione deve essere una directory. L’opzione piùusata è -R (copia ricursiva).

mv muove uno o più file. Sintassi: mv [file1] [file2]... [dest]. E’ equivalente a copiare esuccessivamente cancellare i file. E’ utilizzato anche perrinominare file.

rm cancella uno o più file. Sintassi: rm [file1] [file2].... Non è possibile il recupero (e.g. undelete). Leopzioni più usate sono (pericolosissima!) -r(cancellazione ricursiva) e -i (chiede conferma per ognifile).

mkdir crea una directory. Sintassi: mkdir directory.

Paolo Zatelli | Università di Trento | 19 / 24

Page 20: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Comandi principali

Comandi principali - III

rmdir cancella una directory vuota. Sintassi: rmdirdirectory. Se la directory non è vuota si usa rm -rdirectory.

man visualizza la pagina di manuale relativa al comando.Sintassi: man comando.

info visualizza la pagina di manuale relativa al comando informato info. Sintassi: info comando.

more visualizza un file, inserendo una pausa quando il video èriempito. Sintassi: more [file1] [file2] ....

less visualizza un file, inserendo una pausa quando il video èriempito. Sintassi: less [file1] [file2] .... Adifferenza di more permette lo scrolling indietro.

cat concatena più file, è utilizzato anche per visualizzare file.Sintassi: cat [file1] [file2] ....

Paolo Zatelli | Università di Trento | 20 / 24

Page 21: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Comandi principali

Comandi principali - IV

echo visualizza il suo argomento, è utilizzato per visualizzare ilvalore di variabili di ambiente. Sintassi: echoespressione. Es. echo $HOME visualizza/home/paolo.

grep visualizza tutte le linee di un file che contengono il patterndato. Sintassi: grep pattern [file1] [file2].... Es. grep pwd slidesl.tex visualizzapwd visualizza la directory corrente.Sintassi: pwd

In tutti i comandi pssono essere usate wild cards: * sostituisce unastringa e ? sostituisce un carattere.

Paolo Zatelli | Università di Trento | 21 / 24

Page 22: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Gestione stream e processi

Redirezione dell’ i/o

E’ possibile reindirizzare lo standard input e lo standard output ad altristream, in particolare file, con gli operatori < e >.

Es. ls -l > lista.txt crea un file contenente la lista delladirectory e sort < lista.txt ordina le righe del file lista.txt, sort< lista.txt > lista.ordinata.txt salva l’ordinamento in unnuovo file (» aggiunge al file).

È possibile passare l’output di un programma direttamente ad un altrocon l’operatore | (pipe).

Es. find . -print|grep slide visualizza tutti file dell’albero ilcui nome contiene slide.

Paolo Zatelli | Università di Trento | 22 / 24

Page 23: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Gestione stream e processi

Controllo dei processi (jobs)

Ogni programma che viene eseguito costituisce un processo. Ilcomando ps visualizza i processi attivi dell’utente:

PID TTY STAT TIME COMMAND911 1 S 1:09 nedit1190 p1 S 0:00 -tcsh1323 p0 R 0:00 ps

Un programma che non risponde all’utente può essere terminato con ilcomando kill PID (TERM signal) oppure kill -KILL PID okill -9 PID (kill signal).

E’ possibile eseguire processi in background con la sintassi comando&.

Paolo Zatelli | Università di Trento | 23 / 24

Page 24: Linux - UniTrentozatelli/cartografia_numerica/slides/Linux.pdf · Linux|Linux Installazione L’installazione di Linux dipende dalla distribuzione ed è nella maggior parte dei casi

Linux | Appendice | Licenza

Questa presentazione è c©2009 Paolo Zatelli, disponibile come

Paolo Zatelli | Università di Trento | 24 / 24