CEFRIEL Consorzio per la Formazione e la Ricerca in Ingegneria dellInformazione Politecnico di Milano © 2001 - Carlo Brandolese Il Sistema Operativo UNIX.

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME HOSTTYPE Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
1 Introduzione ai calcolatori Parte II Software di base.
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
File System Cos’è un File System File e Directory
Elaboratore e Sistemi Operativo
Frontespizio Economia Monetaria Anno Accademico
Introduzione a Linux Dr. Giovanni Stracquadnio
Shell Scripting. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure contenuti.
1 System Call per Comunicazione tra Processi Pipe.
Giuseppe Fabio Fortugno.
Interfaccia del file system
Interfaccia del file system
I file l I File sono l unità base di informazione nellinterazione tra utente e sistema operativo l Un file e costituito da un insieme di byte attinenti.
Il File System Master in Convergenza Docente: Carlo Brandolese
Corso Linux Base 2. Uso del Sistema. © Corso Linux Base - Uso del Sistema Logging In (1) Una volta partito il sistema lutente esegue la procedura.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
1 Il file system di Unix Caratteristiche generali dei FS comunemente usati da Unix/Linux.
Guida Linux Molto rapida…. Due parole sullambiente grafico Potete usare: KDE o GNOME Si sceglie prima di mettere la password. Questione di gusti…
Struttura dei sistemi operativi (panoramica)
File System NTFS 5.0 Disco: unità fisica di memorizzazione
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
Laboratorio di Informatica
Uso di Linux.
1.1 Implementazione del file system Una possibile visualizzazione del file system di un sistema Unix.
2) Sistemi operativi Lab. Calc. AA2004/05 - cap.2.
TCP_Wrapper Le richieste per un determinato servizio (ad. es. telnet, ftp, rsh, etc.) vengono soddisfatte soltanto se lindirizzo IP del richiedente rientra.
1 File System ed Input/Output UNIX Implementazione del File System Caratteristiche del File System Unix/Linux System Call relative al File System Linput/output.
1 LINUX: struttura generale The layers of a UNIX system. User Interface.
Windows Sistema operativo con interfaccia grafica per PC IBM compatibili (varie versioni dal 95) La gestione dei file viene fatta secondo le modalità.
SOFTWARE I componenti fisici del calcolatore (unità centrale e periferiche) costituiscono il cosiddetto Hardware (alla lettera, ferramenta). La struttura.
I File.
Sistemi Operativi - Shell 1 Il sistema operativo LINUX La shell Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Informazioni utili Per avere una distribuzione linux sul proprio pc: 1.
Dip. Automatica e Informatica
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX La shell Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX La shell Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Gestione dei processi comando1 comando2 Last-login: … > … > comando1 output comando1 > comando2 output comando2 Esecuzione.
Introduzione alle basi di dati
Sistemi Operativi – La shell Salvatore Campagna Politecnico di Torino Dipartimento di Automatica.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
Corso Linux Base 2. Uso del Sistema. © Corso Linux Base - Uso del Sistema Logging In (1) Una volta partito il sistema lutente esegue la procedura.
QUIZ – PATENTE EUROPEA – ESAME WORD
Shell dei comandi – ! Bash &/o Tcsh !
1 Scheduling in Windows 2000 Un thread entra in modalità kernel e chiama lo scheduler quando: Si blocca su un oggetto di sincronizzazione (semaforo, mutex,
Il Sistema Operativo: il File System
21 marzo 2002 (ri-)Avvisi: Giovedi 28 marzo la lezione e sospesa. Nuovo indirizzo di Spedire messaggi e esercizi solo.
1 Ly-LAB Sistema di gestione dei dati analitici di laboratorio.
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
1 Amministrazione del sistema Creazione degli account al sistema. Comandi per la gestione degli utenti File per la gestione degli utenti, password shadow.
Lezione 1 Approccio al sistema operativo : la distribuzione Knoppix Live Cd Knoppix 3.6 Interfacce a caratteri e grafica: console e windows manager File.
MS-DOS è il sistema operativo, Come praticamente tutti i sistemi operativi per i computer del periodo, l'MS- DOS era un sistema operativo mono utente.
USO DEL COMPUTER E GESTIONE DEI FILE
Il Sistema Operativo Il Sistema Operativo è costituito dall’insieme dei programmi necessari per far funzionare tutto l’hardware del calcolatore e per nascondere.
A.P. cat. B - 1 Per chi vuole: Libro di testo D.P. Curtis, K. Foley, K. Sen, C. Morin Informatica di base 2° edizione Mc Graw-Hill Companies.
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
1 Il file system di Unix Caratteristiche generali dei FS comunemente usati da Unix/Linux.
Unix (Linux-Mac OS) Alcuni comandi. cd change working directory cd [DIRECTORY] cd entra nella directory specificata. Se non è fornita alcuna directory.
1 PROGRAMMAZIONE IN SHELL The Unix Programming Environment Kernigham - Pike.
I FILE I File sono l’ unità base di informazione nell’interazione tra utente e sistema operativo I File sono l’ unità base di informazione nell’interazione.
Il sistema Linux: principi di progettazione
Basi di Unix: introduzione Kernel il fulcro del sistema. Comunica con l’hardware (processore, memoria, disco fisso) Shell interfaccia tra l’utente e il.
1 File System ed Input/Output UNIX Caratteristiche del FS Unix Implementazione Il file system di Linux Organizzazione dell’ I/O.
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
Corso di Laboratorio primo modulo Introduzione all'uso di un sistema operativo. Introduzione all'uso della shell (bash). Java – –Introduzione – –Tipi di.
La gestione della rete e dei server. Lista delle attività  Organizzare la rete  Configurare i servizi di base  Creare gli utenti e i gruppi  Condividere.
Transcript della presentazione:

CEFRIEL Consorzio per la Formazione e la Ricerca in Ingegneria dellInformazione Politecnico di Milano © Carlo Brandolese Il Sistema Operativo UNIX Prima Parte Introduzione, Shell, File system e Processi Docente: Carlo Brandolese Politecnico di Milano

Il Sistema Operativo UNIX - I© Carlo Brandolese- 2 - Sommario Prima Parte 1.Introduzione 2.La shell sh Variabili di ambiente Comandi 3.Il File System Introduzione Comandi 4.Processi Introduzione Comandi Seconda Parte 5. 5.Utilities Filtri Archiviazione Leditor vi 6. 6.Scripting Introduzione Argomenti Variabili Redirezione e pipelining Comandi Funzoni Comandi avanzati

Il Sistema Operativo UNIX - I© Carlo Brandolese- 3 - Introduzione Prima Parte 1.Introduzione 2.La shell sh Variabili di ambiente Comandi 3.Il File System Introduzione Comandi 4.Processi Introduzione Comandi

Il Sistema Operativo UNIX - I© Carlo Brandolese- 4 - La struttura a strati Il sistema operativo UNIX è organizzato a strati: Applicazioni utente Shell File system Periferiche virtuali Kernel Hardware Punto di ingresso al sistema Livello applicativo Visione logica dei dispositivi di Memorizzazioe di massa Condivisione delle risorse Nucleo del sistema operativo Supporto hardware

Il Sistema Operativo UNIX - I© Carlo Brandolese- 5 - Accesso al sistema Per accedere ad un sistema è necessario un account Un utente è identificato tramite: username group password Le informazioni relative agli utenti sono raccolte nel file /etc/passwd root:aG4dhH1z:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:GL16gtWn:3:4:adm:/var/adm: lp:x:4:7:lp:/var/spool/lpd: mail:x:8:12:mail:/var/spool/mail: news:x:9:13:news:/var/spool/news:...

Il Sistema Operativo UNIX - I© Carlo Brandolese- 6 - Login Lingresso ad un sistema viene detto login Una tipica sessione di login: La password non viene visualizzata La stringa Viene detta shell prompt E definibile dallutente I comandi digitati sono interpretati dalla shell apollo console login: brandole password: ******* Last login: Tue Jun 20 14:39:00 from apollo.cefriel.it Sun Microsystems Inc. SunOS Generic May 1996

Il Sistema Operativo UNIX - I© Carlo Brandolese- 7 - Comandi passwd [user] Consente allutente corrente di modificare la propria password (i dati sono salvati nel file /etc/passwd ) su [-l] user Simula la login di un utente differente rispetto a quello corrente who Riporta la lista degli utenti connessi alla macchina exit Abbandona la shell corrente Lutente rimane autenticato sul sistema

Il Sistema Operativo UNIX - I© Carlo Brandolese- 8 - Comandi logout Abbandona il sistema e termina la sessione useradd [options] login Crea un nuovo utente in base alle options Il comando aggiunge una linea al file /etc/passwd userdel [-r] login Elimina un account dal sistema groupadd [-g gid] group Crea un nuovo gruppo di utenti groupdel group Elimina un gruppo dal sistema

Il Sistema Operativo UNIX - I© Carlo Brandolese- 9 - La shell Prima Parte 1.Introduzione 2.La shell sh Variabili di ambiente Comandi 3.Il File System Introduzione Comandi 4.Processi Introduzione Comandi

Il Sistema Operativo UNIX - I© Carlo Brandolese La shell La shell è linterfaccia verso il sistema operativo Ogni shell definisce tre file standard per gestire le operaioni di ingresso/uscita stdin :standard input(la tastiera) stdout :standard output(il terminale corrente) stderr :standard error(il terminale corrente) I comandi inviati alla shell possono essere: Interni:Vengono eseguti nella shell corrente e possono modificare lo stato della shell Esterni:Vengono eseguiti in una shell differente e non possono modificare lo stato della shell corrente

Il Sistema Operativo UNIX - I© Carlo Brandolese La shell La shell è linterprete dei comandi UNIX La shell può eseguire i comandi in due modi: Interattivo: comandi immessi dallutente al prompt Batch: comandi raccolti in uno script file Esistono diversi tipi di shell sh, bash La shell standard. È su tutti i sistemi ksh Korn shell csh, tcsh C-like shell Tutte le shell forniscono circa le stesse funzionalità Le diverse shell differiscono principalmente per quanto riguarda la sintassi

Il Sistema Operativo UNIX - I© Carlo Brandolese /bin/sh: formato comandi Un comando ha la seguente sintassi generale: cmd [-opt] [file[...]] [--special] [;] I vari campi indicano: cmd Nome del comando -opt Opzioni standard file[...] Lista di nomi di file separata da spazi --special Opzioni speciali (long options) ; Separa i comandi di una lista I comandi di una lista semplice sono eseguiti in sequenza

Il Sistema Operativo UNIX - I© Carlo Brandolese /bin/sh: nomi di file Indicati esplicitamente oppure mediante globbing Il globbing si basa su alcuni caratteri speciali combinati a formare un pattern: ~/ Home directory dellutente corrente * Sequenza di zero o più caratteri qualsiasi ? Singolo carattere qualsiasi [s-e] I caratteri compresi tra s ed e Il pattern è espanso nei nomi ad esso sovrapponibili Esempi: *.c File con estensione.c foo[0-9] File con nome foo seguito da una cifra

Il Sistema Operativo UNIX - I© Carlo Brandolese /bin/sh: documentazione UNIX fornisce una manualistica sui comandi I manuali sono accessibili dalla shell in modo testo man [-s n] cmd -s n Sezione dei manuali cui fare riferimento cmd Comando di cui mostrare il manuale man useradd Maintenance Commands useradd(1M) NAME useradd - administer a new user login on the system SYNOPSIS useradd [-c comment] [-d dir] [-e expire] [-f inactive] [-g group] [-G group [, group...]] [-m [-k skel_dir]] [-u uid [-o]] [-s shell] login DESCRIPTION useradd adds a new user entry to the /etc/passwd and /etc/shadow files. It also creates supplementary group memberships for the user (-G option) and creates the...

Il Sistema Operativo UNIX - I© Carlo Brandolese /bin/sh: configurazione La shell è parzialmente configurabile Tramite le opzioni della linea di comando Tramite il comando set Può essere associato un profile o configurazione ad ogni utente tramite opportuni script file.cshrc,.tcshrc.login,.logout E possibile definire nomi abbreviati o alternativi per i comandi standard: Aliasing Unaliasing

Il Sistema Operativo UNIX - I© Carlo Brandolese /bin/sh: configurazione E possibile raccogliere sequenze di comandi in uno script Uno script può essere considerato alla pari di un nuovo comando UNIX Gli script possono essere sviluppati in linguaggi diversi da sh, ad esempio: awk Elaborazione testi sed Elaborazioni testi Tcl/Tk Generico, sviluppo interfaccie grafiche perl Generico python Generico

Il Sistema Operativo UNIX - I© Carlo Brandolese /bin/sh: Variabili di ambiente Le varibili di ambiente Contengono informazioni relative alla sessione corrente Determinano alcuni aspetti della configurazone dellambiente Identità: USER Username dellutente GROUP Grouppo di appartenenza dellutente Host: HOST Nome della macchina corrente REMOTEHOST Nome della macchina remota DISPLAY : Nome del display in uso

Il Sistema Operativo UNIX - I© Carlo Brandolese /bin/sh: Variabili di ambiente Path: HOME Home directory dellutente PATH Lista dei path per gli eseguibili MANPATH Lista dei path delle pagine man LD_LIBRARY_PATH Lista di ricerca delle librerie PWD Directory corrente Shell: SHELL Tipo della shell corrente SHLVL Livello della shell corrente TERM Tipo di terminale

Il Sistema Operativo UNIX - I© Carlo Brandolese sh [–x –e] –c cmd | scr Esegue linterprete dei comandi Alcune opzioni possono essere impostate tramite set setenv [var [value]] Gestisce le variabili di ambiente unsetenv var Elimina la variabile var dallambiente export [var [var]... ] Rende le varibili specificate disponibili nellambinte delle applicazioni eseguite nella shell corrente history Mostra la storia dei comandi eseguiti dal prompt Comandi

Il Sistema Operativo UNIX - I© Carlo Brandolese !{string|num} Ripete un comando precedentemente eseguito !! Ripete lultimo comando eseguito set var [= value] Definisce una variabile e ne assegna il valore Alcune variabili modificano le opzioni della shell alias [name string] Definisce una nome alternativo per un comando unalias name... | -a Rimuove le definizioni di nomi alternativi Comandi

Il Sistema Operativo UNIX - I© Carlo Brandolese Sommario Prima Parte 1.Introduzione 2.La shell sh Variabili di ambiente Comandi 3.Il File System Introduzione Comandi 4.Processi Introduzione Comandi

Il Sistema Operativo UNIX - I© Carlo Brandolese Introduzione Il File System fornisce allutente una visione logica dei dispositivi di memorizzazione di massa, quali: Hard Disk CD ROM Floopy DAT La struttura di un file system si basa su due concetti fondamentali: File Directory Sistemi operativi diversi utilizzano diverse implementazioni di file system

Il Sistema Operativo UNIX - I© Carlo Brandolese File Il concetto di file offre una visone omogenea delle informazioni memorizzate La visone non dipende dal tipo di dispositivo fisico su cui le informazioni vengono memorizzate Un file è costituito da: Un insieme di informazioni omogenee Un nome simbolico Un insieme di attributi Un file può contenere: Dati Programmi Riferimenti

Il Sistema Operativo UNIX - I© Carlo Brandolese File Ad un file sono associati alcuni attributi che ne descrivono alcune caratteristiche: NomeE il nome simbolico con riferirsi ad esso TipoDefinisce il tipo dei dati contenuti. LocazioneE un riferimento alla posizione fisica DimensioneDimensione dei dati Protezione Definisce le politiche di accesso Ora e DataIndicano il momento della creazione, dellultima modifica e dellultimo accesso ProprietarioIndica il nome dellutente che ha creato il file ed il suo gruppo di appartenenza

Il Sistema Operativo UNIX - I© Carlo Brandolese Directory Lelemento fondamentale per lorganizzazione dei file è la directory Esistono diverse strutture di directory Directory a singolo livello Directory a due livelli Directory ad albero Directory a grafo aciclico Directory a grafo generale UNIX adotta una struttura a grafo generale Il sistema operativo è più complesso: loop infiniti Soluzione: limitare la profondità/lunghezza del path

Il Sistema Operativo UNIX - I© Carlo Brandolese Directory Esempio di directory a grafo generale bin mike bill jhon gcc mike test data gnu much foo aax data foo mary work gnu mom much

Il Sistema Operativo UNIX - I© Carlo Brandolese Protezione Il file system UNIX gestisce gli accessi ai file secondo lo schema detto Simplified Access Control List Gli utenti sono identificati in base a Username: Identificativo dellutente Group: Identificativo di gruppo, condiviso da più utenti Gli utenti sono raggruppati in tre classi Owner:Solo il proprietario del file Group:Solo i membri del gruppo del proprietario del file Other:Tutti gli utenti

Il Sistema Operativo UNIX - I© Carlo Brandolese Protezione Le operazioni che un utente può effettuare su un file sono raggruppate in tre classi Read:Lettura, copia Write:Scrittura, modifica, eliminazione Execute:Esecuzione Le operazioni che un utente può effettuare su una directory sono raggruppate in tre classi Read:Elenco dei file contenuti Write:Creazione/rimozione dei file contenuti Execute:Entrata nella directory, creazione di file nella directory, elenco dei file contenuti

Il Sistema Operativo UNIX - I© Carlo Brandolese Protezione Ad ogni file sono associati: Owner Group Simplified Access Control List La Simplified ACL è formata da tre gruppi di bit: Ogni gruppo si riferisce ad una classe di utenti Ogni bit del gruppo si riferisce ad una operazione owner group other execute write read rwx owner group other rwxrwxrwxrwx rwx

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi cd [path] Cambia la directory corrente pwd Mostra il path assoluto della directory corrente ls [path] Mostra lelenco dei file nella directory path o in quella corrent find path [-name pattern] Ricerca e mostra i file in tutto il sottoalbero che inizia dalla directory path

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi chmod mode file... Cambia i diritti di accesso ai file specificati chown [-R] owner[:group] file... Modifica il proprietario di un file chgrp [-R] group file... Modifica il gruppo di un file cp src dest Copia uno o più file o directory mv src dest Sposta o rinomina uno o più file o directory

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi rm [-r dir...] [file...] Rimuove uno o più file o directory touch [file...] Modifica le date di accesso o di modifica dei file Se un file non esiste viene creato mkdir dir Crea una nuova directory rmdir dir... Rimuove una o più directory vuote

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi du dir... Mostra lo stato di utilizzo dei dischi df dir Mostra lo spazio disponibile sui vari file system lpr [–P dest] file... Invia allo spooler di stampa uno o più file lpq [-P dest] Mostra lo stato della coda di stampa lprm [-P dest] [-|id] Rimuove un job dalla coda di stampa lpstat Mostra lo stato di tutti gli spooler

Il Sistema Operativo UNIX - I© Carlo Brandolese Link Esistono due tipi di link: soft (symbolic) o hard Soft link È un riferimento ad un file o ad una directory Rimuovendo un link il file originale non viene rimosso Rimuovendo un file i link divengono inconsistenti Il comando ls mostra i symbolic link usando una l come primo carattere degli attributi del file Hard link È una copia del descrittore di un file o di una directory Il file non viene rimosso fino a che esistono link Il comando ls mostra gli hard link incrementando link count, nella seconda colonna

Il Sistema Operativo UNIX - I© Carlo Brandolese Link -foo -bar -frob dbin lfoo -bar -frob dbin i-node./bar i-node This is the file named bar... This is the file named bar... i-node This is the file named bar... This is the file named bar... Soft linkHard link

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi ln -s src [dest] Crea un link soft ad uno o più file o directory ls -l -rw-r--r-- 1 brandole 5 Jul 14 14:37 original ln –s original link1 ln –s original link2 ls -l lrwxrwxrwx 1 brandole 8 Jul 14 14:38 link1 -> original lrwxrwxrwx 1 brandole 8 Jul 14 14:38 link2 -> original -rw-r--r-- 1 brandole 5 Jul 14 14:37 original rm link1 ls -l lrwxrwxrwx 1 brandole 8 Jul 14 14:38 link2 -> original -rw-r--r-- 1 brandole 5 Jul 14 14:37 original rm original ls -l lrwxrwxrwx 1 brandole 8 Jul 14 14:38 link2 -> original cat link2 cat: cannot open link2

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi ln src [dest] Crea un link hard ad uno o più file o directory ls -l -rw-r--r-- 1 brandole 5 Jul 14 14:37 original ln original link1 ln original link2 ls -l lrwxrwxrwx 3 brandole 8 Jul 14 14:38 link1 lrwxrwxrwx 3 brandole 8 Jul 14 14:38 link2 -rw-r--r-- 3 brandole 5 Jul 14 14:37 original rm link1 ls -l lrwxrwxrwx 2 brandole 8 Jul 14 14:38 link2 -rw-r--r-- 2 brandole 5 Jul 14 14:37 original rm original ls -l lrwxrwxrwx 1 brandole 8 Jul 14 14:38 link2 cat link2 This is the content of the file...

Il Sistema Operativo UNIX - I© Carlo Brandolese Device Un device è un file speciale che fornisce una interfaccia comune a diversi dispositivi o dati I device sono raccolti in /dev /dev/stdin Standard input /dev/stdout Standard output /dev/stderr Standard error /dev/null Null file /dev/tty Terminale fisico (seriale) /dev/pty Terminale virtuale (telnet, xtem) /dev/console Terminale di default /dev/dsk/c0t0d0s00 Dispositivo SCSI numero 0 /dev/fd/0 Floppy disk numero 0

Il Sistema Operativo UNIX - I© Carlo Brandolese Organizzazione del file system UNIX prevede la seguente organizzazione / Root directory /bin/ Raccoglie gli eseguibili e i comandi standard /dev/ Contiene i device /home/ Contiene le home directory degli utenti. /lib/ Contiene le librerie statiche e dinamiche sia di sistema, sia degli applicativi /local/ E il mount-point dei file system locali /mnt/ E il mount-point dei file system addizionali /opt/ Contiene pacchetti software aggiuntivi continua

Il Sistema Operativo UNIX - I© Carlo Brandolese Organizzazione del file system /usr/ Contiene parti addizionali del sistema /var/ Contiene file temporanei o semi- temporanei di sistema. Tali file sono essenziali per il sistema /var/spool/ Contiene le code di stampa /var/mail/ Contiene le inbox degli utenti /var/log/ Contiene i transcript delle operazoni di sistema /proc/ Fornisce laccesso ai processi attraverso una interfaccia basata sul modello del file system /tmp/ Directory temporanea continua

Il Sistema Operativo UNIX - I© Carlo Brandolese Organizzazione del file system /etc/ Contiene file di configurazione /etc/rc0.d/ Contiene gli script di shutdown. I nomi degli script iniziano con Knn e vengono eseguiti in ordine alfabetico. Sono invocati con argomento stop /etc/rcS.d/ Contiene gli script di boot in single user mode. I nomi degli script iniziano con Snn e sono invocati con argomento start / etc/rc2.d/ Contiene gli script di boot in multi user mode /etc/init.d/ Raccoglie tutti gli script di boot e di shutdown. Le directory rcn.d contengono link a questi file continua

Il Sistema Operativo UNIX - I© Carlo Brandolese Organizzazione del file system /etc/rc / Script di boot principali. Eseguono gli script nelle directory /etc/rcn.d/ /etc/skel/ Contiene file di configurazione utente di default /etc/psswd Password file /etc/fstab Tabella dei file system da montare al boot /etc/mnttab Tabella dei file montati /etc/hosts Tabella di risoluzione degli IP /etc/resolv.conf Tabella di routing /etc/services Elenco dei servizi forniti dal demone di rete inetd

Il Sistema Operativo UNIX - I© Carlo Brandolese Mounting Loperazione di mounting permette di collegare un file system ad una directory, detta mount-point, di un altro file system: Il mount-point è una directory Il contenuto preesistente del mount-point diviene temporaneamente inaccessibile La rimozione di un tale collegamento viene detta unmounting: Il contenuto preesistente del mount-point è nuovamente accessibile Non è possibile scollegare un file system se un processo sta operando sul file system montato

Il Sistema Operativo UNIX - I© Carlo Brandolese Mounting E possibile collegare file system condivisi attraverso una rete (NFS mounting) Il file /etc/mnttab tiene traccia dei file system correntemente montati Le operazioni di mounting e unmounting agiscono sul file /etc/mnttab Mounting e unmounting sono eseguibili solo da root È possibile permettere ad un utente generico di montare e smontare file system particolari CD-ROM locali Floppy

Il Sistema Operativo UNIX - I© Carlo Brandolese Mounting Il file /etc/mnttab contiene le seguenti informazioni sui file system montati special Il nome del file system o del device mount-point Il path del mount-point fstype Il tipo di file system montato options Opzioni di montaggio, tipicamente i diritti di accesso time Ora di montaggio del file system Il file /etc/fstab (a volte /etc/vfstab ) indica i file system da montare al boot del sistema

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi mount dev mnt Monta il file system dev nella directory mnt mountall [table] Effettua il montaggio dei file system specificati nella tabella table umount dev Rimuove un file system montato eject device Espelle un dispositivo rimovibile (floppy disk, CD-ROM) sync Aggiorna lo stato del file system

Il Sistema Operativo UNIX - I© Carlo Brandolese Sommario Prima Parte 1.Introduzione 2.La shell sh Variabili di ambiente Comandi 3.Il File System Introduzione Comandi 4.Processi Introduzione Comandi

Il Sistema Operativo UNIX - I© Carlo Brandolese Introduzione Programma Operazioni che devono essere svolte da un calcolatore Processo È una istanza di un programma in esecuzione È costituito da Una immagine del del suo codice macchina Un descrittore di processo Il descrittore del processo contiene Identificativo del processo o process id (pid) Stato del processo Program counter Informazioni sulla memoria Altre informazioni

Il Sistema Operativo UNIX - I© Carlo Brandolese Esecuzione Eseguire un processo comporta La creazione di un descrittore di processo Il caricamneto in memoria della immagine del programma Un processo viene sempre creato da un altro processo Il processo creatore si chiama processo padre o parent process Il processo creato si chiama processo figlio o child process Nel sistema operativo UNIX tutti i processi discendono dal processo sched, cioè lo scheduler

Il Sistema Operativo UNIX - I© Carlo Brandolese Esecuzione I processi possono essere eseguiti in due modalità ForegroundIl processo figlio eredita e ritiene tutte le risorse del padre. Il padre è sospeso in attesa della terminazione del figlio BackgroudIl processo figlio eredita tutte le risorse del padre. Il processo padre rimane in esecuzione. È lo scheduler ad assegnare le risorse ai due processi Lutente può specificare la modalità di esecuzione di un processo La modalità di esecuzione può cambiare durante la vita di un processo

Il Sistema Operativo UNIX - I© Carlo Brandolese Operazioni Su un processo si possono eseguire alcune operazioni Creazione Un processo viene creato in foreground fornendo ad una shell il nome del programma corrispondente Per creare un processo in background si usa il carattere & alla fine della linea di comando della shell Terminazione Un processo in foreground viene terminato premendo opportune combinazioni di tasti, tipicamente CTRL-C Un processo in background viene terminato inviandogli un opportuno segnale ( SIGKILL, SIGABRT ) tramite il comando kill

Il Sistema Operativo UNIX - I© Carlo Brandolese Operazioni Sospensione Un processo in foreground viene sospeso premendo opportune combinazioni di tasti, tipicamente CTRL-Z Un processo in background viene sospeso inviandogli un opportuno segnale ( SIGSTOP ) tramite i comandi kill e stop Continuazione Si può forzare la continuazione di un processo sospeso utilizzando i comandi fg e bg È anche possibile inviare al processo sospeso un opportuno segnale ( SIGCONT ) tramite il comando kill

Il Sistema Operativo UNIX - I© Carlo Brandolese Operazioni Duplicazione Un processo può essere duplicato solo attraverso chiamate a funzioni di sistema operativo Analisi È possibile visualizzare alcune informazioni relative ai processi utilizzando i comandi ps e jobs

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi program Crea un nuovo processo in foreground program & Crea un nuovo processo in background ps -aux Mostra alcune informazioni riguardanti tutti i processi correntemente in esecuzione jobs Mostra la litsa dei processi figli della shell corrente

Il Sistema Operativo UNIX - I© Carlo Brandolese Comandi fg %jobid Porta un processo in foreground bg %jobid Porta un processo in background kill pid Termina un processo stop pid Sospende un processo time command Esegue command e mostra i tempi di esecuzione