Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di...

54
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale <[email protected]> Stefano Di Carlo <[email protected]> Politecnico di Torino Dip. Automatica e Informatica

Transcript of Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di...

Page 1: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione1

Il sistema operativo UNIX/LINUX

Giorgio Di Natale <[email protected]>Stefano Di Carlo <[email protected]>

Politecnico di Torino

Dip. Automatica e Informatica

Page 2: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione2

Organizzazione

SISTEMI OPERATIVIDocente: Prof. Pietro Laface ([email protected])

Esercitatori:

Ing. Bartolomeo Montrucchio ([email protected])

Ing. Niccolo` Battezzati ([email protected])

• Orario laboratorio

– MER 8:30 – 12:30 (squadra A-G)

– MER 8:30 – 12:30 (squadra A-G)

Page 3: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione3

Informazioni “utili”

Web site: ulisse.polito.it/matdid/3ing_inf_N5030_TO_0/

come trovarlo: GOOGLE (“ulisse sistemi operativi”)

a breve: www.cad.polito.it/people/staff/battezzati (didattica)

libri di testo:

– “The Linux A-Z”, Phil Cornes ISBN 0132347091

– Il web!!!

Page 4: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione4

Informazioni “utili”

Per avere una distribuzione linux sul proprio pc:

1. www.ubuntu.com/getubuntu/download

2. masterizzare il cd con l’ISO

3. avviare il pc dal cd

4. usare Ubuntu

1. in versione LIVE (funzionalita` ridotte)

2. installarlo sul pc (richiede di partizionare il disco)

3. installarlo su una macchina virtuale (VMWare, Qemu, Virtual Box)

Page 5: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione5

Programma

• Il sistema operativo Linux: introduzione• Comandi principali• vi: un editor di testo• Shell: l’interprete dei comandi• Tools e Comandi avanzati• Uso avanzato di shell e shell script• Amministrazione del sistema• Panoramica sulle principali distribuzioni

Page 6: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione6

Indice

• Introduzione• Il file system• Manipolazione di file e directory• I comandi principali

Page 7: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione7

Indice

• Introduzione• Il file system• Manipolazione di file e directory• I comandi principali

Page 8: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione8

Una sessione di lavoro

• Inizio di una sessione:login:Password:

• Fine di una sessione:CTRL-d exit logout

ATTENZIONE !Unix è case sensitive: i caratteri

maiuscoli sono considerati diversi da quelli minuscoli

ATTENZIONE !Unix è case sensitive: i caratteri

maiuscoli sono considerati diversi da quelli minuscoli

Page 9: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione9

Collegamento col sistema

• Da un calcolatore dotato di rete TCP/IP:– telnet <hostname>– ssh [–l <username>] <hostname>

Page 10: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione10

Caratteristiche principali

• Multiutente: a ogni user sono associati:– username– uid– gid– Password

Esiste l’utente privilegiato

“root”

• Multitask

Page 11: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione11

I comandi in UNIX

• La sintassi di un generico comando UNIX è:comando [-opzioni] [argomenti]

• I comandi troppo lunghi possono essere continuati sulla riga successiva battendo “\” come ultimo carattere della riga

• Si possono dare più comandi sulla stessa riga separandoli con “;” comando1 ; comando2 ; ...Essi saranno eseguiti in sequenza

Page 12: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione12

Il manuale in linea

• Tutti i comandi di Unix sono documentati in linea:

–man <comando>

– apropos <termine>– whatis <comando>

• Alcuni sistemi sono dotati di una presentazione grafica (xman) o ipertestuale

• info

Page 13: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione13

Indice

• Introduzione• Il file system• Manipolazione di file e directory• I comandi principali

Page 14: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione14

Il file system UNIX

• Caratteristiche:– gerarchico (relazione padre-figlio)– organizzazione a directory– uniformità di notazione (dischi, directory, file)– non esistono estensione e versione– link– permessi

Page 15: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione15

La gerarchia del file system

/

bin

sbin

dev

etc

lib

tmp

var

usr

adm

spool

tmp

bin

etc

include

lib

man

local

Page 16: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione16

La gerarchia del file system

• La directory corrente e` indicata con "." (dot)

• Il padre della directory corrente è indicato con ".." (dot dot)

Page 17: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione17

I nomi dei file

• Il nome di un file può essere una sequenza di caratteri qualunque

• Non esistono estensione e versione• Esistono comunque desinenze o nomi molto

usati:.c .f .p .o .a .so a.out core

• Se il nome di un file inizia col carattere punto "." è detto file nascosto perchè normalmente non viene elencato

Page 18: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione18

I nomi dei file (cont.)

• Si sconsiglia di utilizzare i seguenti caratteri nei nomi dei file:– / \ “ ' * ; ? [ ] ( ) ~ – ! $ { } < > # @ & |

• Si può usare il carattere spazio (ma attenzione!)– Provate a scrivere il seguente programma in C:

Il programma prende sulla linea di comando (argv) due parametri, il nome di due file.

Successivamente legge prima il primo e poi il secondo e li stampa a video.

NOTA: i nomi dei due file possono contenere spazi!!!

Page 19: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione19

Il path

Per indicare un file all’interno del file system si deve specificarne il path:

– path assoluto: /dir1/dir2/file

– path relativo: subdir1/subdir2/file

Page 20: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione20

I file: classificazione

• Un solo tipo fisico di file:– byte stream (sequenza di byte)

• Quattro tipi logici di file:– file ordinario: ad esempio, i file di testo,

eseguibili ...– directory: contiene nomi ed indirizzi di altri

file– special file: un entry point per un dispositivo di

I/O– link: un puntatore ad un altro file

Page 21: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione21

I link

• Due tipi di link:– hard link: un nome (in una directory) che punta

ad un i-node puntato anche da altri nomi– soft link (symbolic link): un file che come

unico blocco dati ha il nome di un altro file• Particolarità:

– no hard link ad una directory– no hard link a file su un altro file system– un file è fisicamente rimosso solo quando tutti i

suoi hard link sono stati rimossi

Page 22: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione22

Indice

• Introduzione• Il file system• Manipolazione di file e directory• I comandi principali

Page 23: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione23

Manipolazione di file

• cp [-fir] src1 src2 ... dest

– copia uno o più file (eventualmente in una directory)

• rm [-fir] file1 file2 …

– cancella i file elencati

• mv [-fi] file1 file2 ... dest

– sposta (rinomina) uno o più file, eventualmente in una directory

Page 24: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione24

Manipolazione di file (cont.)

• Opzioni:– -f non chiede mai conferma– -i chiede conferma per ciascun file– -r opera recursivamente su tutti i file contenuti

nei sottodirettori

Page 25: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione25

Manipolazione di direttori

• cd <dir>– cambia il direttorio a quello indicato

• pwd– mostra il nome del direttorio corrente

• mkdir <dir>– crea il direttorio indicato

• rmdir <dir>– cancella il direttorio indicato (deve essere

vuoto)

Page 26: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione26

I link

• ln source alias– crea un hard link

• ln -s source alias– crea un soft link

Page 27: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione27

Le protezioni dei file

• Anche dette modi o permessi di accesso• Tre controlli di base:

– read (r) : permesso di lettura– write (w) : permesso di scrittura– execute (x) : permesso di esecuzione

• Tre partizioni degli utenti:– user (u) : il proprietario– group (g) : il gruppo– others (o) : gli altri

Page 28: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione28

Modi speciali

• Tre modi speciali (per i file eseguibili):

– setuid (s) : viene eseguito come se fosse root ad eseguirlo

– setgid (S) : viene eseguito con lo stesso GID di root

– sticky (t) : l'inamovibile; se settato per una directory, allora unicamente il proprietario del file contenuto o della directory (o root) può cancellare o rinominare i file nella cartella; il divieto vale anche qualora la persona abbia i permessi per scrivere nella directory

Page 29: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione29

Le protezioni dei direttori

• Le protezioni di una directory hanno un significato particolare:– x: attraversamento della directory– r: elenco dei file– w: creazione e/o cancellazione di file

Page 30: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione30

Cambiamento di proprietario

• Per cambiare il gruppo dei file: chgrp [-R] gruppo file

• Per cambiare il proprietario (ed eventualmente gruppo) dei file: chown [-R] utente[:gruppo] file chown [-R] uid[:gid] file

• In entrambi i casi, con l'opzione -R opera recursivamente su tutti i file delle sotto-directory

Page 31: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione31

Cambiamento di protezione

• Per cambiare le protezioni ai file: chmod [-R] protezioni file

• Protezioni specificate in modo assoluto – un numero ottale di quattro cifre

sys utente gruppo altri4 2 1 4 2 1 4 2 1

4 2 1s S t r w x r w x

r w x

Page 32: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione32

Cambiamento di protezione (cont.)

• Protezioni specificate in modo simbolico – una stringa di tre caratteri

u(ser), g(roup), o(ther), a(ll)

+, -, =

s, S, t, r, w, x

Esempi:– chmod 777 nomefile

Page 33: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione33

Protezioni standard

• umask– mostra (in forma assoluta) i permessi che sono

negati quando si crea un file (la maschera delle protezioni); ad es. con modo 666, si ha, se umask riporta 022, 666 & ~022 = 644(man 2 umask)

• umask maschera– per definire la maschera delle protezioni

Page 34: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione34

Indice

• Introduzione• Il file system• Manipolazione di file e directory• I comandi principali

Page 35: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione35

Il comando ls

• Visualizza l’elenco dei file con le loro caratteristiche

• ls [-opzioni] [file ...] • Opzioni:

-a: elenca anche i file che iniziano con .-l: output in formato esteso-g: include l'indicazione del gruppo-r: ordine inverso (alfabetico/temporale)-t: elenca i file in ordine temporale-R: elenca anche i file nei sottodirettori

Page 36: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione36

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Page 37: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione37

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Tipo di file

Page 38: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione38

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Protezioni

Page 39: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione39

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

N° di link

Page 40: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione40

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Owner

Page 41: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione41

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Group

Page 42: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione42

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Dimensione

Page 43: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione43

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Data di creazione

Page 44: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione44

ls - un esempio

# ls -alg ~/tmptotal 84drwx------ 6 maino staff 512 Sep 1 16:14 .drwxr-xr-x 19 maino staff 1024 Sep 6 09:06 ..-rw-r--r-- 1 maino staff 1240 Jan 21 1992 AA.readmedrwxr-x--- 2 maino staff 512 May 22 14:08 examples-rw------- 1 maino staff 2416 Jun 30 15:24 gendata.c-rw------- 1 maino staff 332 Jun 18 15:29 local.cdrwxr-xr-x 2 maino staff 512 May 22 14:08 man-rw-r----- 1 maino staff 27930 Mar 12 23:19 new.tex-rw------- 1 maino staff 28077 Mar 12 22:52 numer.tex-rw-r----- 1 maino staff 70 Jun 2 18:00 prova.tex-rw-r----- 1 maino staff 1364 May 6 14:20 random.c-rw-r----- 1 maino staff 62 May 6 14:21 random.hdrwx------ 2 maino staff 512 May 25 14:36 testprof

Nome del file

Page 45: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione45

Visualizzazione di file testo

• Mediante un editor (es. vi o emacs)• cat file1 file2 …

– concatena i file in output• head [-n] file …

– visualizza le prime n righe (es. head -5 test.dat)

Page 46: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione46

Visualizzazione di file testo (cont.)

• tail [-n] [+n] [-rf] file …– Visualizza:

-n: le ultime n righe

+n: tutto il file tranne le prime n righe

-r: visualizza le righe in ordine inverso

-f: rilegge continuamente il file

Page 47: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione47

Visualizzazione una paginaper volta

• pg file ...• more file ...• less file ...

Page 48: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione48

Visualizzazione una paginaper volta (cont.)

• Comandi durante la visualizzazione:– spazio prossima pagina– CR prossima riga– b pagina precedente– /pattern prossima pagina con pattern– ?pattern pagina precedente con pattern– q termina la visualizzazione

Page 49: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione49

Occupazione di spazio su disco

• df [-k] [disco ...]– per controllare l'occupazione dei dischi – -k: occupazione in KB

• du [-aks] direttorio …– per vedere lo spazio occupato da un direttorio e

tutti i suoi sottodirettori– -a: occupazione di ciascun file– -s: solo il totale complessivo– -k: occupazione in KB

Page 50: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione50

df: esempio

$ df

Filesys. 1024-bl. Used Av. Cap. Mnt

/dev/hda3 199270 182354 6625 96% /

/dev/hda1 61060 20967 36939 36% /usr

/dev/hda4 199271 147953 41027 78% /home/pc

Av. Available, Cap. Capacity, Mnt Mount point

Page 51: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione51

Ricerca di un file

• find direttorio espressione– visita tutto l'albero sotto il direttorio specificato

ed opera sui file che rendono vera l'espressione• esempio:

– find /users -name core

Page 52: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione52

Elementi di ricerca

• -name pattern– attenzione: racchiudere il pattern tra apici se si

usano espressioni regolari (es ‘A*’)• -type tipo

– tipo del file = b(lock), c(haracter), d(irectory), l(ink), f(ile), s(ocket)

• -user utente / -group gruppo• -exec

Page 53: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione53

Confronto di file

• diff [-opzioni] file1 file2– mostra le righe diverse, indicando quelle

aggiunte (a), cancellate (d) e cambiate (c)• diff [-opzioni] dir1 dir2

– effettua il confronto tra tutti i file con lo stesso nome nei due direttori

Page 54: Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.

Sistemi Operativi - Introduzione54

Confronto di file

• Opzioni:

-b: ignora gli spazi a fine riga, collassa gli altri

-i: ignora la differenza maiuscolo/minuscolo

-w: ignora completamente la spaziatura