Sequenza di avvio di Linux:



Documenti analoghi
Sequenza di avvio di Linux:

Terza lezione: Directory e File system di Linux

Organizzazione di Sistemi Operativi e Reti

I.S. Sobrero. Dipartimento di Informatica. Utilizzo. 16/02/2007 Marco Marchisotti

Struttura del sistema operativo GNU/Linux

NOZIONI BASE PER ESERCITAZIONI

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE

Il File System di Linux

Il Software. Il software del PC. Il BIOS

Introduzione alla. Alessandra Giordani Lunedì 27 febbraio

Corso base GNU/Linux Latina Linux Group. Sito web: Mailing list:

Laboratorio di Programmazione

CdL in Medicina Veterinaria - STPA AA

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

Software di base. Corso di Fondamenti di Informatica

PROGRAMMI UTENTE INTERPRETE COMANDI FILE SYSTEM GESTIONE DELLE PERIFERICHE GESTIONE DELLA MEMORIA GESTIONE DEI PROCESSI (NUCLEO) HARDWARE

NOZIONI BASE SHELL E SCRIPT LINUX

Partizionamento del disco

Controllo di processi

INTERAZIONE CON L UTENTEL

Ca ra tteristiche dei sistem i GN U/L inux. Struttura di un sistema GNU/Linux Il filesystem La shell

Tabelle di riferimento Pulsanti Inserire documento Predisposizione doc Approvazione Doc Numerazione Doc Pubblicazione Albo Webservice

fare hard link fra file system diversi e su directory.

Il software: Istruzioni per il computer. I tre tipi di software di sistema. Compiti del sistema operativo

Il sistema operativo: interazione con l utente

Utilizzo Base del Sistema Operativo Ubuntu GNU/Linux

Il sistema operativo

Il software del PC. Il BIOS

Blocco Note Blocco Note

Procedura di installazione di Xubuntu 8.10 su un PC

Capitolo Silberschatz

DOS-Gestione delle Directory e comandi

Uso del Computer e Gestione dei File. Uso del Computer e Gestione dei File. Federica Ricca

Installazione ed attivazione della "SUITE OFFIS" versione CLIENT

Word per iniziare: aprire il programma

Come gestire le directory con R

Parte V. Sistemi Operativi & Reti. Sistemi Operativi. Sistemi Operativi

Modulo 4: Gestore del File System (Memoria secondaria) Componenti

Il Sistema Operativo (1)

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

LaCie Ethernet Disk mini Domande frequenti (FAQ)

Uso del computer e gestione dei file

MANUALE DI GESTIONE BANCA DATI INTERNET ED AREA FTP PER ESPERTI DI RAZZA

Sistemi Operativi. Organizzazione logica ed implementazione di un File System

INTRODUZIONE A WINDOWS

SHELL: File e Filesystem

Note sull ambiente di lavoro utilizzato ai Laboratori di Fondamenti di Informatica I

Installazione LINUX 10.0

Installazione del software Fiery per Windows e Macintosh

Breve guida a Linux Mint

Nozioni di Informatica di base. dott. Andrea Mazzini

INTRODUZIONE ALL INFORMATICA CORSO DI LAUREA IN BIOLOGIA A.A. 2015/2016

Shell di Linux e Comandi Utente

MINI GUIDA AI COMANDI PIU' USATI PER I NOSTRI STB

Risolvere i problemi di avvio di Windows XP

DeskTop o Scrivania virtuale

Nexus Badge Pc Access Manuale Installazione/Uso

FoLUG Forlì Linux User Group. Partizionamento

Organizzare i file. 1. Le cartelle e i file

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

Mac Application Manager 1.3 (SOLO PER TIGER)

Acronis Universal Restore

EasyPrint v4.15. Gadget e calendari. Manuale Utente

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Corso base di informatica

Word prima lezione. Prof. Raffaele Palladino

Il file system. meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate. in memoria di massa

Portable Ubuntu for Windows mini howto (diavoleria argentina)

Alcune estensioni comuni Tipo del file Estensione corrispondente..wav,.mid,.voc Grafica.bmp,.jpg,.gif,.tif Documenti web.htm,.html

Pubblicazione e modifica di articoli per il Portale della Protezione Civile

Il Personal Computer. Il Software. Il Software. Il Software. Il Software. Hardware

NOTE PER UTILIZZO COMPILATORE FORTRAN CON LINUX

Samsung Auto Backup FAQ

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

Comandi di Unix e Geogrid

Il salvataggio sui pc locali è consentito solo per il tempo strettamente necessario al loro utilizzo.

Utilizzo di Blue s. Avvio di Blue s C A P I T O L O 7. Come avviare il programma e inserire la password

Installare GNU/Linux

ArubaKey. Installazione

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

Le Infrastrutture Software ed il Sistema Operativo

Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11 SP1

PROGRAMMAZIONE CONSUNTIVA Codice Mod. RQ 23.2 Pag 1/5. Sistemi e Reti (articolazione Telecomunicazione) Classe

Fiery Driver Configurator

Transcript:

Sequenza di avvio di Linux: Il BIOS esegue una serie di test ed inizializzazione di tutti i dispositivi del computer; quindi, carica in memoria il BOOT loader del sistema operativo e gli cede il controllo. Il Boot loader di linux carica in memoria il kernel, lo inizializza e gli cede il controllo. Il kernel crea il processo INIT e gli cede il controllo. Il processo INIT crea tutti gli altri processi tra cui il processo LOGIN che chiede il nome e la password dell'utente. Quindi crea l'interprete dei comandi dell'utente (il processo bash).

Avvio dell'interfaccia grafica: Il processo INIT avvia il server grafico XFREE86, il desktop manager ed il window manager. Il desktop manager apre una finestra di dialogo che richiede il nome e la password dell'utente. Se il nome e la password sono riconosciute, l'utente può iniziare ad usare l'interfaccia grafica. Per uscire dall'interfaccia grafica è sufficiente premere la combinazione di tasti CTRL-ALT-F1.

Le console virtuali: Linux prevede un certo numero di console virtuali numerate da 1 a 6. Per accedere alla console virtuale numero n si deve premere la combinazione CTRL-ALT-Fn (con n compreso tra 1 e 6). Premendo ALT-F7 si ritorna all'interfaccia grafica E' anche possibile aprire una finestra di terminale all'interno del desktop con il comando xterm.

Il file system di Linux: Dal punto di vista fisico Linux può accedere ai seguenti tipi di file system: ext2/ext3: file system nativi di Linux reiserfs: file system Suse Linux minix: file system del S.O. Minix msdos: file System del S.O. MS-DOS vfat: file system di Windows 95/98/ME/XP NTFS: flie system di Windows NT/2000....

Il file system di Linux: Dal punto di vista logico il file system è un insieme di informazioni organizzate in modo da permetterne l'accesso in modo semplice e ordinato. Il principale componente del file system è il file. In Linux (Unix) per file si intende qualunque risorsa di un sistema di elaborazione da cui si possano leggere e su cui si possano scrivere informazioni.

Tipi di file: File ordinari: insiemi di informazioni dello stesso tipo contenute nella memoria ausiliaria del computer. File speciali: risorse hardware del sistema di elaborazione. Si dividono in dispositi vi a caratteri ed a blocchi. Directory: file che contengono (riferimenti ad) altri file.

L'organizzazione del file system: / cartella radice (root directory). --boot file caricati all'inizio. --bin comandi del sistema operativo. --sbin comandi di sistema --dev file speciali --home/ cartelle personali degli utenti --stefano cartella personale di stefano --root cartellapersonale dell'amministratore --etc file di configurazione del sistema --usr/ programmi applicativi degli utenti --bin file eseguibili --doc file di documentazione dei programmi..

Le proprietà dei file: Nome: identifica il file Percorso: sequenza di nomi di directory separati dal simbolo '/' che individua la posizione del file nel file system. Tipo: ordinario, speciale, collegamento o directory. Utente proprietario del file e suoi diritti d'accesso. Gruppo di utenti che possiede il file e suoi diritti. Diritti d'accesso di tutti gli altri utenti del sistema.

I diritti d'accesso ad un file: In lettura: si può leggerne il contenuto. In scrittura: si può modificarne o cancellarne il contenuto o tutto il file. In esecuzione: si può lanciare il programma il cui codice è contenuto nel file. Qualsiasi combinazione di questi tre tipi di diritti d'accesso può essere assegnata separatamente al proprietario del file, al gruppo proprietario del file ed a tutti gli altri utenti del sistema.

Esempio: [stefano@localhost stefano]$ ls -l totale 28 drwx------ 3 stefano stefano 4096 apr 5 08:24 Desktop -rw-rw-r-- 1 stefano stefano 10103 apr 8 10:20 Introduzione2.sxi -rw-r--r-- 1 root root 8862 apr 1 08:27 Introduzione.sxi Stringa dei diritti d'accesso Dimensione Gruppo proprietario Utente proprietario Ora dell'ultima modifica Nome del file

La stringa dei permessi di un file: E una stringa di 10 caratteri. Il primo carattere indica il tipo del file: d = directory - = file ordinario b = dispositivo a blocchi c = dispositvo a caratteri Gli altri 9 caratteri rappresentano rispettivamente i diritti d'accesso dell'utente proprietario, del gruppo proprietario e di tutti gli altri utenti. r = accesso in lettura w = accesso in scrittura x = accesso in esecuzione

Comandi di gestione dei file e delle directory: Pwd: visualizza il nome della cartella corrente Ls: elenca il contenuto di una cartella Cd: cambia la cartella corrente Mkdir: crea una nuova cartella Rmdir: cancella una cartella Touch: crea un file vuoto Rm: cancella un file Cp: copia un file Mv: sposta o rinomina un file Ln: crea un link ad u altro file

Creazione di un nuovo utente: Per creare nuovi utenti si deve usare il comando useradd con argomento il nome del nuovo utente da creare. Per esempio: # useradd pippo Crea un nuovo utente di nome pippo ed un nuovo gruppo primario con lo stesso nome pippo. Inoltre, crea una cartella personale di nome pippo nella directory /home. Questo comando può essere usato solo dall'utente root : il modo più semplice per accedere come amministratore è quello di usare il comando su (superuser).

Eliminazione di un utente: Per eliminare un utente si deve usare il comando userdel seguito dal nome dell'utente da eliminare. Per esempio: # userdel pippo Questo comando elimina sia l'utente che il suo gruppo primario ma non cancella la sua cartella personale che dev'essere cancellata manualmente dall'amministratore del sistema.

Altri comandi di gestione utenti/gruppi: su: cambia l'identità dell'utente corrente passwd: cambia la password dell'utente corrente id: visualizza il numero d'identificazione di un utente e di tutti i suoi gruppi groupadd: crea un nuovo gruppo di utenti groupdel: elimina un gruppo di utenti chown: cambia il proprietario di un file chgrp: cambia il gruppo proprietario di un file

La modifica dei diritti d'accesso: Il comando chmod permette di modificare i diritti d'accesso ad un file sia da parte del proprietario che del gruppo o di tutti gli altri utenti. Il formato di questo comando è: # chmod <diritti d'accesso> file La stringa dei diritti d'accesso al file può contenere i seguenti caratteri: u rappresenta l'utente proprietario del file g rappresenta il gruppo proprietario del file o rappresenta gli tutti gli altri utenti del sistema a rappresenta tutti gli utenti del sistema + aggiunge nuovi diritti d'accesso - toglie alcuni dei diritti d'accesso = imposta i diritti d'accesso r rappresenta il diritto d'accesso in lettura w rappresenta il diritto d'accesso in scrittura x rappresenta il diritto d'accesso in esecuzione

ESEMPIO: [root@localhost stefano]# ls -l totale 48 -rwxrwxr-x 1 root root 31682 apr 12 12:27 Traiettoria.sxc [root@localhost stefano]# chmod o-rwx Traiettoria.sxc [root@localhost stefano]# ls -l totale 52 -rwxrwx--- 1 root root 31682 apr 12 12:27 Traiettoria.sxc [root@localhost stefano]# chmod g-wx Traiettoria.sxc [root@localhost stefano]# ls -l totale 52 -rwxr----- 1 root root 31682 apr 12 12:27 Traiettoria.sxc [root@localhost stefano]# chmod u-x Traiettoria.sxc [root@localhost stefano]# ls -l totale 52 -rw-r----- 1 root root 31682 apr 12 12:27 Traiettoria.sxc [root@localhost stefano]# chmod a+x Traiettoria.sxc [root@localhost stefano]# ls -l totale 52 -rwxr-x--x 1 root root 31682 apr 12 12:27 Traiettoria.sxc [root@localhost stefano]#

La gestione dei dispositivi: In Unix ed in Linux tutti i dispositivi sono rappresentati da un file speciale che si trova all'interno della directory /dev: hda: disco master dell'interfaccia primaria (c: di Windows) hda1: prima partizione primaria di hda hda2: seconda partizione primaria di hda hda3: terza partizione primaria di hda hdb: hdc: hdd: fd0: Fd1: disco slave dell'interfaccia primaria (d: di Windows) disco master dell'interfaccia secondaria (e: di Win.) disco slave dell'interfaccia secondaria (f: di Win.) floppy disk A di Windows floppy disk B di windows

Altri dispositivi particolari: ttys0: ttys1:.. lp0: lp1:.. ram:. sda: sdb: prima porta seriale (COM1 di Windows). seconda porta seriale (COM2 di Windows). prima porta parallela (LPT1 di Windows). seconda porta parallela (LPT2 di Windows). memoria centrale primo CD/DVD secondo DC/DVD

Il comando mount: Per poter accedere ai dati contenuti in un dispositivo di memoria ausiliaria è necessario eseguire prima il comando mount. Qesto comando monta un file system su un dispositivo. La sua sintassi è: # mount [-t tipo] dispositivo directory dispositivo è il nome del dispositivo a cui accedere tipo è il tipo del file system da montare sul dispositivo (ext2, ext3, reiserfs ecc...) directory è il percorso di una cartella su cui montare il filesystem. Prima dell'operazione di montaggio, questa cartella deve essere vuota. Dopo il montaggio, questa cartella contiene l'intero file system che è stato montato.

Il comando umount: Per estrarre il supporto rimovibile da un dispositivo di memoria ausiliaria è necessario eseguire prima il comando umount con la seguente sintassi: # umount dispositivo # umount punto-di-montaggio Questo comando può essere eseguito solo se nessun utente o programma sta accedendo contemporaneamente al dispositivo che si desidera smontare. Per conoscere quali file system sono montati nel sistema si può far uso del comando df.

Esempio: [root@localhost root]# df -h Filesystem Dimens. Usati Disp. Uso% Montato su /dev/hda6 8.5G 2.5G 5.5G 31% / /dev/hda5 99M 9.6M 84M 11% /boot none 62M 0 61M 0% /dev/shm [root@localhost root]# mount /dev/fd0 /mnt/floppy [root@localhost root]# df -h Filesystem Dimens. Usati Disp. Uso% Montato su /dev/hda6 8.5G 2.5G 5.5G 31% / /dev/hda5 99M 9.6M 84M 11% /boot none 62M 0 61M 0% /dev/shm /dev/fd0 1.4M 320K 1.0M 23% /mnt/floppy [root@localhost root]#

La gestione dei processi: Il primo processo che viene creato dopo il caricamento del kernel Linux è il processo init. Questo processo legge le informazioni contenute nel file /etc/initrc per creare gli altri processi: init-- --->getty-->bash-->cat --->getty-->bash..

I comandi di gestione dei processi: Ps: visualizza un elenco dei processi presenti nel sistema Pstree: visualizza l'elenco dei processi sottoforma di albero. Top: visualizza dinamicamente lo stato corrente di ciascun processo. Kill: invia un segnale ad un processo. Killall: invia un segnale a tutti i processi coinvolti nell'esecuzione di un comando.

La realizzazione di programmi in linguaggio C: Per realizzare un programma in linguaggio C, si deve far uso del comando cc che traduce in codice macchina il programma sorgente contenuto nel file il cui nome appare come argomento. Il risultato della compilazione viene salvato nel file di nome a.out oppure nel file il cui nome segue l'opzione -o. Per esempio, il comando cc prova1.c -o prova1 salva nel file prova1 il risultato della compilazione del programma prova1.c.

Esempio: [stefano@localhost stefano]$ cat prova1.c #include <stdio.h> #include <sys/types.h> #include <unistd.h> void child_process () { while (1) sleep (1); } int main () { int i; pid_t p; for (i = 0; i < 10; i++) { p = fork (); if (p == 0) child_process (); else printf ("Creato il processo %d\n", p); } } [stefano@localhost stefano]$ cc prova1.c -o prova1 [stefano@localhost stefano]$

Esecuzione del programma: [stefano@localhost stefano]$./prova1 Creato il processo 9730 Creato il processo 9731 Creato il processo 9732 Creato il processo 9733 Creato il processo 9734 Creato il processo 9735 Creato il processo 9736 Creato il processo 9737 Creato il processo 9738 Creato il processo 9739 [stefano@localhost stefano]$ ps PID TTY TIME CMD 979 pts/0 00:00:00 bash 9730 pts/0 00:00:00 prova1 9731 pts/0 00:00:00 prova1 9732 pts/0 00:00:00 prova1 9733 pts/0 00:00:00 prova1 9734 pts/0 00:00:00 prova1 9735 pts/0 00:00:00 prova1 9736 pts/0 00:00:00 prova1 9737 pts/0 00:00:00 prova1 9738 pts/0 00:00:00 prova1 9739 pts/0 00:00:00 prova1 9740 pts/0 00:00:00 ps [stefano@localhost stefano]$

Esperienza di laboratorio: Realizzare un programma in linguaggio C che crea tanti processi quanti sono gli argomenti della funzione main. Ciascuno di questi processi visualizza, ad intervalli regiolari di un secondo, il corrispondente argomento della funzione main. Esempio: $programma pippo pluto minnie pippo pluto minnie..