La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Sistemi Operativi Salvatore Campagna Politecnico di Torino Dipartimento di Automatica e.

Presentazioni simili


Presentazione sul tema: "Sistemi Operativi Salvatore Campagna Politecnico di Torino Dipartimento di Automatica e."— Transcript della presentazione:

1 Sistemi Operativi Salvatore Campagna Politecnico di Torino Dipartimento di Automatica e Informatica

2 Orario Lezioni in aula Martedì – – Aula 14 Esercitazione in laboratorio Squadra B: Martedì – (16.00 – assistito) - LABINF Squadra A: Mercoledì – (16.00 – assistito) – LAIB 1D Squadre A: ABBATE – LECCA B: LEGORA - ZECCHI

3 Info URL slide lezione e esercitazione Risorse cartacee e elettroniche The Linux A-Z, Phil Cornes ISBN Internet

4 Programma del corso Parte I – Introduzione a Linux/UNIX Parte II – Introduzione alla shell e comandi base Parte III – Comandi avanzati Parte IV – Shell scripting Parte V – Leditor Vi(m)

5 Introduzione Linux/UNIX è un sistema operativo multiutente Questo vuol dire che può essere utilizzato da più utenti contemporaneamente Eperciò necessaria una procedura di login per lidentificazione e laccesso al sistema

6 Introduzione Una sessione di lavoro inizia con linvocazione, da parte dellambiente, del programma login Lutente accede al sistema fornendo nome utente e password Dopo laccesso lutente è identificato da uno user ID La sessione termina con i comandi logout o exit o con la combinazione Ctrl + D

7 Introduzione Linux/UNIX è un sistema operativo multitasking Il multitasking rappresenta la capacità di un sistema (dare limpressione per sistemi a core singolo) di eseguire più programmi contemporaneamente Lobiettivo è quello di massimizzare e ottimizzare lutilizzo delle risorse

8 Introduzione Il sistema operativo è organizzato su più livelli detti layer Hardware Kernel Librerie Shell Applicazioni

9 Struttura dei comandi Linterazione tra lutente e il sistema operativo avviene tramite comandi impartiti attraverso una shell La struttura generica di un comando è: comando [opzioni] [argomenti] Le opzioni modificano il comportamento del programma Gli argomenti forniscono i dati su cui il programma opera

10 Struttura dei comandi Per proseguire un comando sulla riga successiva terminare la riga con \ (backslash) Esempio: find test_dir –name test.* \ -print0 | xargs -0 | grep OK Per eseguire una serie di comandi usare ; come separatore Esempio: ls -la; cd test_dir; touch file.txt

11 Il file system Caratteristiche principali: Gerarchico (organizzazione ad albero) Formato da directory e file Non esistono estensione e versione Laccesso a file e directory è basato sui permessi

12 Layout file system

13 Il file system La directory radice è / (slash) La directory corrente è indicata con. La directory padre della directory corrente è indicata con.. Il separatore di directory è / (slash) Ogni file o directory è raggiungibile attreverso un pathname assoluto o relativo Esempio (assoluto): /home/alice/work/file.txt Esempio (relativo): alice/work/file.txt

14 Il file system Il nome di un file è una sequenza qualunque di caratteri No estensione e versione Ecomune usare comunque estensioni standard Esempio:.c.o.so.ko.p.a Un file il cui nome comincia con. non viene normalemente visualizzato

15 Nomi dei file Sconsigliato luso di caratteri particolari nei nomi di file / \ ' * ; ? [ ] ( ) ~ ! $ { } & | Epossibile usare lo spazio ma attenzione Provare I seguenti comandi e verificare leffetto: touch file prova.txt (crea due file) touch file prova.txt (crea un file) touch file\ prova2.txt (crea un file)

16 I file – i-node Struttura dati che archivia: il proprietario e il gruppo di appartenenza dimensione del file e la sua locazione fisica; le informazioni temporali di modifica (mtime), ultimo accesso (atime) e di cambio di stato (ctime) i permessi d'accesso il numero di collegamenti fisici che referenziano l'inode

17 I file – i-node Ogni i-node è identificato da un numero univoco (i-node id) per il dispositivo Ogni file è un collegamento fisico ad un i- node (associazione nome collegamento fisico i-node id) Quando si accede a un file si recuperano le informazioni dal suo i-node

18 Collegamenti tra file Un collegamento è un oggetto del file system che permette di fare riferimento ad un altro file del file system attraverso un nome diverso Il file originale è accessibile attraverso più file In UNIX/Linux esistono due tipi di collegamenti (link) Simbolici (soft link) Fisici (hard link)

19 Collegamenti simbolici Si creano con il comando ln –s oppure con cp -s E un file contenente un percorso relativo o assoluto al file o directory a cui fa riferimento Se il file puntato viene rimosso il link simbolico rimane orfano Il link simbolico può fare riferimento anche ad un file su un altro file system

20 Collegamenti fisici Si creano con il comando ln Associa un nome di file alli-node Non può restare orfano La rimozione di un file avviene solo se tutti gli hard link sono rimossi I link e il file puntato dal link devono far parte dello stesso file system

21 Permessi Laccesso a file e directory avviene attraverso lassegnazione di permessi Permessi di base o attributi Lettura – read (r) Scrittura – write (w) Esecuzione – exec (x) Tre classi di utente Proprietario del file o directory – user (u) Gruppo a cui appartiene il proprietario - group(g) Gli altri - others (o)

22 Permessi su directory Lettura – Read(r) – Possibilità di elencare il contenuto (ls) Scrittura – Write (w) – Possibilità di creare e/o cancellare file (touch, rm,…) Execuzione – Exec (x) – Possibilità di attreversare la directory (cd,…)

23 Permessi Dato un file i permessi sono espressi d a una tripletta a cui corrisponde una valore binario e/o ottale 1 indica permesso settato, 0 permesso non settato Corrispondenza 1:1 con una stringa binaria o ottale Esempio: rwxr-xr-x = = 755 Permssi per user, group e others

24 Permessi speciali per eseguibili Setuid: esecuzione con i privilegi del proprietario del file Setgid: esecuzione con i permessi del gruppo Sticky: se settatto per una directory indica che i file possono essere cancellati e spostati solamente dagli utenti proprietari o dal proprietario della directory o da root

25 Comandi principali Gestione file e directory Gestione permessi Visualizzazione di file

26 Il comando man Il comando «più importante» su un sistema UNIX/Linux è man Ogni pagina man è un documento esplicativo di un comando Per accedere a una pagina man si usa il comando man [sezione] La sezione specifica la categoria di manuale al quale si vuole accedere

27 Il comando man Sezioni: 1: comandi generali 2: chiamate di sistema 3: funzioni della libreria standard del C 4: file speciali e driver 5: formato di file e convenzioni 6: giochi e screensaver 7: miscellanea 8: amministrazione del sistema, comandi e demoni

28 Copia e spostamento di file cp [opzioni] : copia uno o più file da SRC a DEST (che può essere una directory) rm [opzioni] : cancella il file mv [opzioni] : sposta file e directory in altri file (rinomina) o directory

29 Opzioni comuni -r (recursive): esegue ricorsivamente su tutti i file contenuti nelle sottodirectory -i (interactive): chiede conferma per ognuno dei file -f (force): esegue il comando senza chiedere conferma

30 Gestione directory cd : cambia la directory corrente con quella indicata pwd: mostra la directory corrente mkdir : crea una nuova directory rmdir : cancella una directory vuota

31 Gestione link ln : crea un hard link (link fisico) a un file o directory ln –s : crea un soft link (link simbolico) a un file o directory

32 Cambiare i permessi chmod è il comando per cambiare i permessi di accesso ai file chmod I permessi possono essere specificati simbolicamente o numericamente La rappresentazione numerica sfrutta la corrispondenza permessi valore ottale

33 Cambiare i permessi Esempio: permessi con rappresentazione numerica chmod 644 :equivale ad un file con permessi rw-r--r-- = , per u, g, a La notazione simbolica usa i seguenti simboli per indicare lutente: u: (user) proprietario g: (group) gruppo del proprietario o: (others) altri a: (all) tutti

34 Cambiare i permessi I simboli per indicare il permesso r, w e x Modificatori: +: aggiunge permessi specificati alle classi selezionate; non rimuove permessi già concessi ma non specificati =: imposta i permessi specificati nelle classi selezionate; rimuove eventuali permessi già concessi ma non specificati -: rimuove i permessi specificati dalle classi selezionate

35 Cambiare i permessi Esempi: chmod u+r: aggiunge il permesso di lettura al proprietario chmod u=wx: imposta i permessi di scrittura e esecuzione per il proprietario e rimuove tutti gli altri chmod a+x: aggiunge il permesso di esecuzione per tutti chmod o-x: toglie il permesso di esecuzione per gli altri

36 Gestione permessi umask permette di impostare i permessi da negare di default quando un file viene creato umask Il comando senza la maschera restituisce la maschera corrente Se la maschera è 022 allora i file vengono creati con permessi 755 = rwxr-xr-x

37 Gestione permessi Per cambiare proprietario e/o gruppo del file usare il comando chown (change owner) chown [opzioni] utente [:gruppo] file chown [opzioni] uid [:gid] file -R opera ricorsivamente su tutti i file di una directory

38 Comando ls ls (list segments) visualizza lelenco di file in una directory e le informazioni riguardanti ciascun file Opzioni comuni: -a: visualizza file nascosti (che iniziano con.) -l: formato esteso -g: include il gruppo -t: ordina i file in ordine temporale -r: inverte lordine -R: opera ricorsivamente sulle sottodirectory

39 Comando ls – Un esempio # ls -alg ~/tmp total 84 drwx 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 AA.readme drwxr-x--- 2 maino staff 512 May 22 14:08 examples -rw maino staff 2416 Jun 30 15:24 gendata.c -rw maino staff 332 Jun 18 15:29 local.c drwxr-xr-x 2 maino staff 512 May 22 14:08 man -rw-r maino staff Mar 12 23:19 new.tex -rw maino staff Mar 12 22:52 numer.tex -rw-r maino staff 70 Jun 2 18:00 prova.tex -rw-r maino staff 1364 May 6 14:20 random.c -rw-r maino staff 62 May 6 14:21 random.h drwx maino staff 512 May 25 14:36 testprof

40 Visualizzazione di file di testo Con un editor interattivo: vi, emacs, … cat [ …]: (catenate): visualizza i file passati sulla riga di comando concatenandoli (in successione) head [-n ] : visualizza le prime n righe di un file tail [-n ] : visualizza le ultime n righe di un file

41 Visualizzazione file di testo pg more less Durante la visualizzazione spazio: prossima pagina return: (Invio): prossima riga b: pagina precedente /pattern: prossima occorrenza di pattern ?pattern: occorrenza precedente di pattern q: chiude leditor

42 Riepilogo comandi man mkdir, rmdir cp, mv, rm, ln pwd chmod, chown, umask ls cat, head, tail, pg, more, less


Scaricare ppt "Sistemi Operativi Salvatore Campagna Politecnico di Torino Dipartimento di Automatica e."

Presentazioni simili


Annunci Google