LINUX System Administrator



Documenti analoghi
3/22/11 Prof. Pizzutilo, dott. Novielli

Elementi di amministrazione di un sistema LINUX

Organizzazione di Sistemi Operativi e Reti

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

Installazione LINUX 10.0

Il Software. Il software del PC. Il BIOS

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

FoLUG Forlì Linux User Group. Partizionamento

Terza lezione: Directory e File system di Linux

Sequenza di avvio di Linux:

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

Sistemi Operativi Il Sistema Operativo Windows (parte 3)

Struttura del Micro Filesystem (µfs)

Utenti e gruppi. Ogni utilizzatore di UNIX ha associato: Nomeutente nome alfanumerici UID identità numerica

Capitolo Silberschatz

File system II. Sistemi Operativi Lez. 20

Indice. settembre 2008 Il File System 2

File System II parte

12. Implementazione di un File System Struttura a livelli Allocazione contigua

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

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il File System. Il file system

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

Sistemi Operativi. Organizzazione logica ed implementazione di un File System

Link e permessi. Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione. Corso di Sistemi Operativi A. A

Struttura del sistema operativo GNU/Linux

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

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

Controllo di processi

Il computer: primi elementi

Sistemi Operativi. Lez. 16 File System: aspetti implementativi

Il Sistema Operativo: il File System

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Il File System di Linux

Mac Application Manager 1.3 (SOLO PER TIGER)

Le Infrastrutture Software ed il Sistema Operativo

Lesson #6. Miscellaneous. Roberto De Virgilio

Il sistema operativo: interazione con l utente

Laboratorio di Programmazione

NOZIONI BASE SHELL E SCRIPT LINUX

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Access. P a r t e p r i m a

Interfaccia del file system

Software di base. Corso di Fondamenti di Informatica

Sistema operativo: Gestione della memoria

Scopo. Costruire un firewall solido. Meno software possibile. Più semplice da configurare possibile. Più affidabile possibile. Riduzione dei rischi

Gestione della memoria centrale

Sequenza di avvio di Linux:

Corso di Informatica

Il Sistema Operativo (1)

Corso UNIX avanzato. Utente avanzato. Amministratore. Gestione proprio account Gestione dei propri processi Ricerca e manipolazione file

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

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

Filesystem. Il file system è organizzato in blocchi logici contigui

Gestione del file system

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

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

fare hard link fra file system diversi e su directory.

Corso di Informatica

DESKTOP Internal Drive. Guida all installazione

Organizzazione degli archivi

Organizzazione della memoria

Partizionamento del disco

Sistemi Operativi (modulo di Informatica II)

MANUALE PARCELLA FACILE PLUS INDICE

Introduzione alla. Alessandra Giordani Lunedì 27 febbraio

Capitolo 1 Installazione del programma

L installer di Torinux

Samsung Auto Backup FAQ

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Corso di Amministrazione di Reti A.A. 2002/2003

Gli Extended file system di Linux (Ext2/Ext3/Ext4)

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

Dispensa di database Access

Procedura di installazione di Xubuntu 8.10 su un PC

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Creare e ripristinare immagine di sistema con Windows 8

Intel One Boot Flash Update Utility Guida dell utente

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

LaCie Ethernet Disk mini Domande frequenti (FAQ)

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica

Installare GNU/Linux

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Progettazione di Basi di Dati

Cosa è un foglio elettronico

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

Protezione. Protezione. Protezione. Obiettivi della protezione

Web Application Libro Firme Autorizzate

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1

Come modificare la propria Home Page e gli elementi correlati

Database. Si ringrazia Marco Bertini per le slides

Zeroshell su vmware ESXi 4.1

Informatica. Il software (S.O.) e ancora sulle basi numeriche

Drivers. Introduzione Tipologie Struttura Interazione con il kernel

Stream EDitor (sed) sed NON modifica l'input 2. L'output viene inviato allo standard output e puo' essere rediretto

Corso di Sistemi di Elaborazione delle informazioni

IL MULTIBOOT. Un sistema multiboot consiste nella possibilità di caricare più sistemi operativi sullo stesso computer.

Le Partizioni. Corsi di Formazione "Open Source & Scuola" Provincia di Pescara gennaio 2005 aprile WinFAT32 24,00% WinNTFS 22,00% Swap 11,00%

Costruzione del layout in gino cms

Transcript:

LINUX System Administrator Questi lucidi sono stati prodotti sulla base dei seguenti riferimenti: Corso UNIX di Roberto Polillo dell Università di Milano Corso Unix di Marco Liverani dell Università di Roma Corso di Laboratorio di sistemi Operativi Dip. Informatica dell Università di Bari a cura di De Carolis, Pizzutilo, Bianchi. Corso di Linux di Paolo Torroni System administrator Root = superutente che ha il controllo totale del sistema Cosa deve fare: Installare e aggiornare il sistema operativo Creare il file system Installare e aggiornare il software applicativo Monitorare l utilizzo del file system Gestire l accesso degli utenti Effettuare il back-up dei dati importanti Installare e configurare servizi di rete Rendere sicuro il sistema e monitorarlo costantemente Operazioni consentite solo al superuser Montare e smontare il filesystem Creare device file Modificare l orologio del sistema e Cambiare le proprietà di un file Aumentare i limiti d uso delle risorse e Definire le priorità dei processi Definire l host name del sistema e Configurare le interfacce di rete Spegnere il sistema 1

Cosa è il FS E quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza i concetti: di file: unità logica di memorizzazione di directory: insieme di file (e directory) di partizione: insieme di file associato ad un particolare dispositivo fisico (o porzione di esso) N.B. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato. Strutture dei dischi La visione dell utente di un unico file system logico può essere fisicamente realizzata da più file system, situati su dispositivi fisici distinti. La partizione di un unico dispositivo fisico in più file system presenta numerosi vantaggi: File system diversi possono supportare un diverso utilizzo. Aumento dell affidabilità. L efficienza può essere migliorata variando i parametri del file system. Si evita che un programma utilizzi tutto lo spazio disponibile. Si velocizza la ricerca ed il ripristino su/da nastri di backup. Il file system root è sempre disponibile su disco. Altri file system possono essere montati cioè integrati nella gerarchia di directory del root file system. 2

Associazione di un file system logico ai dispositivi fisici Descrive lo stato del file system complessivo: n. di blocchi complessivo, n. di inode, n. di blocchi liberi, Blocco logico multiplo di blocchi fisici Copia di backup del primary superblock Layout del disco Label Boot area Primary superblock Cylinder Group 1 summary Block Inode Table Data Block area Backup Superblock Cylinder Group 2 summary Block Inode Table Data Block area Ogni disco contiene: Una label con la tabella delle partizioni Una boot area Un superblock (con copia di backup) N gruppi di cilindro Un insieme di gruppi di cilindro può essere associato ad un filesystem Unix 3

Blocchi e Frammenti in LINUX ext2 FS Lo spazio su disco è gestito dal sistema operativo in blocchi e frammenti di blocchi. In ext2, i frammenti e i blocchi devono avere la stessa dimensione. I file possono essere di qualsiasi dimensione, perciò possono non terminare sul margine di un blocco. Così per ogni file una parte dell'ultimo blocco viene sprecata. Assumendo che la dimensione dei file sia casuale, c'è approssimativamente mezzo blocco sprecato per ogni file sul disco (``frammentazione interna' ). Ad esempio il comando df i fornisce lo stato del filesystem sui dischi in linea in termini di i-node (files) (con parametro k si avrebbe tutto espresso in kbytes): Ad es: Filesystem Inodes IUsed IFree %IUsed Mounted on /dev/hda3 64256 12234 52022 19% / /dev/hda5 96000 43058 52942 45% /var Ci sono circa 12000 file su / (root) e circa 44000 file su /var. Con dei blocchi grandi 1 KB, circa 6 + 22 = 28 MB di spazio su disco sono sprecati nei blocchi di coda dei file. Se ext2 avesse scelto una dimensione del blocco di 4 KB, si sarebbe sprecato uno spazio 4 volte superiore. Tuttavia il trasferimento dati è più veloce per blocchi di dati grossi e contigui. È per questo che ext2 prova a riservare spazio in unità di 8 blocchi contigui per i file in crescita. Lo spazio riservato e non utilizzato viene rilasciato quando il file viene chiuso, pertanto non c'è spreco di spazio. Struttura logica del disco Nella operazione di formattazione il disco può essere diviso in più partizioni. Ciascuna partizione è vista dal Sistema Operativo come un disco logico (con disk device completamente separati) c (partizione di overlapping) a Root ( / ) b Swap d /export/home e /export/swap f /usr Partizione = serie continua di blocchi 4

Il disco e le partizioni Il processo di formattazione (comando format) scrive l indirizzo e segna i piatti dei dischi su cui definire ogni settore. Una volta che il disco è stato formattato, il disco viene diviso in partizioni (con il comando fdisk). Ciò permette di trattare il disco come un gruppo di aree di dati indipendenti invece di un unico insieme di blocchi. Il device driver conosce la superficie fisica dell intero disco, mentre gli altri software lavorano tramite l astrazione delle partizioni. Le partizioni permettono di effettuare il dump con più semplicità, proteggono lo spazio di disco degli utenti da sconfinamenti di altri, migliorano le prestazioni (più rapido accesso) e confinano danni potenziali di programmi e dati che crescono rapidamente ed in modo incontrollato. La tabella delle partizioni risiede nella label del disco. Le partizioni sono distinte e separate dal punto di vista concettuale, ma nel disco viene anche creata una partizione ( c ) di overlapping che è l immagine di tutto il disco per permettere l accesso al disco attraverso un normale device file dei comandi a livello utente (per scrivere una disk label o duplicare il contenuto del disco in un disco di backup). Per installare un filesystem su una partizione del disco si deve utilizzare il comando mkfs (che crea un filesystem ext2fs) I File System Ogni SO ha il proprio filesystem e non sempre questi sono tra loro compatibili: Win 95 (Osr2) e Win 98 FAT16, FAT32 Win NT FAT16, NTFS Linux FAT16, FAT32, NTFS, Durante la fase di avvio della macchina (boot) per prima cosa vengono consultate le informazioni che risiedono nel bios del PC. Qui viene indicata la posizione del Master Boot Record (MBR) che prende il controllo della macchina e cerca nella tabella delle partizioni la prima partizione contrassegnata come attiva. Da essa carica il Boot Record (BR) specifico del SO che vi risiede e lo esegue. Il BR contiene il codice necessario per caricare tutto il resto del SO. 5

File system Il File System è dunque un astrazione usata dal Kernel per rappresentare ed organizzare la memoria di massa del sistema. Il Kernel integra queste risorse sotto una singola gerarchia che inizia con / (root) e si dirama verso il basso in un certo numero di sottodirectory (che vengono attaccate all albero dei file con il comando mount e staccate col comando umount ) Root è la directory madre cui sono associate per default un set minimo di sottodirectory (/etc, /dev, /bin o /sbin, /tmp, /unix, ) /usr qui risiedono la maggior parte dei programmi standard, oltre ai manuali in linea e le librerie /var con le directory di spool, i file di log, le informazioni di account, ed altri file di dimensioni variabili (mail server, ) /home con le directory degli utenti Associazione descrittore di file inode Le system call che fanno riferimento a file aperti indicano il file passando come argomento un descrittore di file. Il descrittore di file viene utilizzato dal kernel come indice alla tabella dei file aperti per il processo in corso. Ogni elemento della tabella contiene un puntatore a una struttura di file. A sua volta questa struttura di file punta sull inode. La tabella dei file aperti ha una lunghezza fissa che può essere impostata soltanto nella fase di boot, quindi il numero di file aperti simultaneamente nel sistema ha un limite fissato. 6

Tabelle Unix disco TABELLA DEI DESCRITTORI DI FILE UTENTE Tabella associata ad ogni processo utente. La tabella contiene una riga per ogni file aperto dal processo con indirizzo della riga della tabella globale (dei file aperti) relativa al file. TABELLA GLOBALE DEI FILE APERTI Tabella del sistema operativo che contiene una riga per ogni file aperto nel sistema. Ogni riga contiene l indirizzo del corrispondente i-node (nella tabella degli i-node), l indicazione della posizione corrente del file ed il contatore del numero di riferimenti da parte dei processi a questo file. TABELLA DEGLI I- NODE Le righe contengono la copia in memoria degli i-node del volume per realizzare una maggiore efficienza Il FS Ext2 Il FS Extended 2 (ext2) è quello più diffuso in Linux, quello che viene usato normalmente per formattare le partizioni in cui viene installato il sistema. Principali caratteristiche di ext2: Dimensione massima del filesystem Dimensione massima dei files Lunghezza massima dei nomi Fast symbolic links Supporta ctime, mtime e atime Spazio riservato per root Attributi estesi dei files Parametri modificabili 4 TB 2 GB 255 caratteri Si Si Si Si Si Come tutti i filesystem unix anche l'ext2 è organizzato in una struttura comprendente super_block, inodes, directory e files. 7

Super-Block Lo spazio all'interno di un filesystem unix è organizzato logicamente come un array lineare di blocchi di dimensioni uguali. Dimensione blocco logico: indipendente dalla dimensione dei blocchi del dispositivo fisico - di solito di 1024 bytes, ma può essere fissata anche in 2048 o 4096 bytes. Dimensione blocco fisico: su HD il blocco fisico è di 512 bytes (quindi un blocco logico occupa di solito 2 blocchi fisici). Il fs ext2 è descritto da un blocco particolare detto super_block è memorizzato in posizione fissa all'inizio del fs stesso e ne descrive le caratteristiche, dimensioni, struttura, stato ecc. Super-Block Sono contenuti tre tipi fondamentali di informazioni: Caratteristiche del filesystem (dimensioni, struttura, magic number, ecc.) stabilite al momento della creazione e non possono più essere modificate, per es. la dimensione dei blocchi, il n.ro di blocchi, il n.ro di inodes. Parametri modificabili (maximal mount count, error behaviour, ecc.) possono essere cambiati dal superuser con il programma tune2fs, che permette di variare ad es. il numero massimo di volte che il fs può essere rimontato prima di forzare un fsck automatico, oppure il comportamento in caso di errore. Un parametro modificabile è la % di spazio che può essere riservata ad un utente privilegiato, normalmente root. Questo consente al sistema di continuare a disporre di spazio su disco anche quando il fs si riempie per l'uso smodato degli utenti. Variabili di stato (file system state, free blocks, mount count, ecc.) descrivono invece lo stato del fs e vengono aggiornate automaticamente man mano che il fs viene usato, per esempio il numero di blocchi liberi, lo stato (montato o meno), il numero di volte che esso è stato montato, ecc. Manca informazione sul tipo e sulla struttura fisica del device o della partizione in cui esso è ospitato. Il fs è totalmente indipendente da queste informazioni, che sono importanti per poter accedere fisicamente alla partizione o al device. Si demanda al device driver tutte le operazioni necessarie per accedere al singolo blocco logico. 8

I Cylinder Group ext2 è suddiviso logicamente in più parti, dette cylinder groups I cg vengono gestiti come entità separate ed autonome pur facendo parte dello stesso fs. Duplice scopo: 1. si vogliono minimizzare le conseguenze di eventuali errori, cioè far sì che se alcuni dati di un cg risultano corrotti, il danno resti limitato all'interno del cg stesso e non si propaghi a tutto il fs. 2. la tendenza a localizzare i files nell'interno delle loro directory per ridurre i tempi di accesso, cosa che viene ottenuta cercando di allocare inodes e blocchi nello stesso cylinder group delle directory. Per ridurre ulteriormente le possibilità che un intero fs venga corrotto a causa di eventuali errori, sia il super_block che le group descriptor tables vengono duplicati in ogni cylinder group, come mostrato in figura. I Cylinder Group Se uno dei super_block o group descriptor viene corrotto a causa di errori, esso può essere ripristinato a partire da una delle sue copie. Abbiamo quindi una struttura altamente ridondante che permette il recovery di eventuali errori. 9

I Cylinder Group Lo spazio all'interno del fs è gestito separatamente ed autonomamente per ciascun cylinder-group. Ciascun cg contiene una block bitmap, che indica quali blocchi del cg sono stati allocati per files o directories, una inode bitmap, che indica analogamente quali inode risultano allocati, ed una inode table che contiene gli inodes appartenenti al cg. Bitmap organizzata come una sequenza di bits: ogni bit indica se il corrispondente inode o blocco è libero o occupato. ogni bitmap occupa esattamente un blocco e quindi il numero massimo di inodes o di blocchi che possono essere contenuti in un cg è data dalla dimensione in bytes di un blocco moltiplicata per 8. Ad es. un fs con blocchi da 1K 8192 (1024 * 8) blocchi per cg, poiché la block bitmap può contenere al max 8192 bits. Inode Ad ogni file è associata una piccola tabella, detta inode ("index-node"), contenente ü gli attributi del file ü gli indirizzi dei primi blocchi del disco su cui è memorizzato il file ü l indirizzo di un blocco a singola indirezione contenente gli indirizzi di blocchi a singola indirezione ü l indirizzo di un blocco a doppia indirezione contenente gli indirizzi di ulteriori blocchi di dati su disco Ogni i-node è identificato da un i-number Gli attributi contenuti nell i-node di un file sono: Tipo: ordinario, directory, speciale Posizione: dove si trova Dimensione: quanto è grande Numero di links: quanti nomi ha Permessi: chi può usarlo e come Creazione: quando è stato creato Modifica: quando è stato modificato di recente Accesso: quando è stato l accesso più recente 10

Inode L'inode è dunque la risorsa principale di un fs unix. Ad ogni file o directory è associato univocamente un inode che ne identifica le caratteristiche ed indica dove sono memorizzati fisicamente i dati. Tutte le operazioni su un file o una directory vengono effettuate tramite il suo inode, che contiene tutte le informazioni sul file stesso, esclusi i dati veri e propri : directory E un file come tutti gli altri, con l'unica differenza che i dati in esso contenuti sono le informazioni sui files nella directory, e viene pertanto gestito in modo particolare dal fs e dal kernel. Ciascuna entry di directory è: un record di lunghezza variabile allineata alla word (4 bytes) contenente solamente il nome del file ed il suo numero di inode. Ogni directory ha almeno 2 entry:. la directory stessa.. la directory padre Tutte le altre informazioni sul file non hanno niente a che fare con la directory in cui esso è contenuto e sono pertanto memorizzate nel suo inode. La directory serve solo a collegare il nome del file col suo inode. 11

directory La directory entry di ext2 è descritta dalla seguente struttura: #define EXT2_NAME_LEN 255 struct ext2_dir_entry { u32 inode; /* Inode number */ u16 rec_len; /* Directory entry length */ u16 name_len; /* Name length */ char name[ext2_name_len]; /* File name */ }; I device file Il Kernel comunica con le periferiche attraverso file speciali chiamati device file presenti (creati con mknod o mkfs) nella directory /dev. Questi file rappresentano il legame tra periferica e kernel TIPI di DEVICE b Block : (per il trasferimento di blocchi prefissati di caratteri alla volta con il kernel che funge da buffer per tali device i dischi, il floppy disk, il CDROM, ) c Character o Raw: ( per il trasferimento di diversi caratteri alla volta senza che il kernel funga da buffer, dato che lo stesso device svolge questo ruolo ttya, ) 12

/dev Nome Descrizione Dos /dev/fd0 prima unità a dischetti A: /dev/fd1 seconda unità a dischetti / dev/ hda primo disco fisso IDE/EIDE / dev/ hdb secondo disco fisso (o CD-ROM) IDE/EIDE / dev/ hdc terzo disco fisso (o CD-ROM) IDE/EIDE / dev/ sda primo disco SCSI / dev/ sdb secondo disco SCSI B: Creare un filesystem Per installare un filesystem su una partizione LINUX del disco si deve usare il comando mkfs -c <partizione> <dimensione> Ad es.: mkfs c /dev/fd0 1440 Il filesystem appena creato deve essere montato prima di diventare disponibile per i processi UNIX I danni non gravi (inode non referenziati, blocchi di dati indicati come liberi ma usati in un file, informazioni di superblock sbagliate, ecc ) di un filesystem possono essere riparati con il comando: e2fsck /dev/ (file sia block che raw (character)) La partizione di root deve sempre essere controllata per prima. I dischi sono controllati automaticamente al boot con e2fsck p, che esamina i filesystem locali riportati nel file /etc/fstab e corregge gli eventuali errori. La directory lost+found viene creata automaticamente quando si definisce un filesystem e viene usata da e2fsck per le emergenze (quindi non si deve cancellare) 13

mkfs(8) - Linux man page NAME mkfs - build a Linux file system mkfs SYNOPSIS *mkfs* [ *-V* ] [ *-t* /fstype/ ] [ *fs-options* ] /filesys/ [ /blocks/ ] DESCRIPTION *mkfs* is used to build a Linux file system on a device, usually a hard disk partition. /filesys/ is either the device name (e.g. //dev/hda1/, //dev/sdb2/) or the mount point (e.g. ///, //usr/, //home/) for the file system. /blocks/ is the number of blocks to be used for the file system. OPTIONS *-V* Produce verbose output, including all file system-specific command that are executed. Specifying this option more than once inhibits execution of any file system-specific commands. This is really only useful for testing. *-t*/ fstype/ Specifies the type of file system to be built. If not specified, the default file system type (currently ext2) is used. *fs-options* File system-specific options to be passed to the real file system builder. Although not guaranteed, the following options are supported by most file system builders. *-c* Check the device for bad blocks before building the file system. *-l*/ filename/ Read the bad blocks list from /filename/ *-v* Produce verbose output. mount Un file system deve essere montato prima di diventare disponibile per i processi del kernel in quello che in gergo si chiama mountpoint (punto di innesto), che poi non è altro che una comune directory vuota. Al bootstrap viene automaticamente montato su / il root file system Per identificare le partizioni Linux usa i file situati nella directory /dev. La system call mount (ed umount) ha due argomenti: nome di un file ordinario nome di un file speciale relativo ad un device removibile contenente un file system (fd1, fd2) La sintassi dei comandi mount ed umount è la seguente: î mount [<opz>] [<dev>] [<dir> mountpoint] -a (utilizza /etc/fstab per montarli tutti) -t [no]<tipo-di-fs> [, ] -o <opz-specifiche-di-fs> [, ] es. mount -t vfat /dev/fd0 /floppy î umount [<opz>] [<dev>] [<dir>] es. umount /mount/cdrom 14

mount Per fare in modo di non dover digitare il comando mount ad ogni avvio del O.S.: Per fare ciò si può agire in tre modi: 1- inserendo la riga insmod vfat all'intemo del file /etc/rc.d/rc.local 2- editando il file /etc/modules.conf 3- Oppure ci si può affidare alle utility apposite sviluppate dalle varie distribuzioni (COAS di OpenLinux 2.2, Lisa di OpenLinux 1.3, YaST di SuSE, Linuxconf di Red Hat). Il file /etc/fstab contiene l elenco dei file system montati : nome Innesto Tipo Opzioni Dump Check /dev/hda3 / ext2 defaults 1 1 /dev/hdb1 /home ext2 defaults 0 2 proc /proc proc defaults 0 0 /dev/hda2 none swap sw /dev/hda1 /mnt/dosc vfat quiet,umask=000 0 0 /dev/sda /mnt/dosd vfat user,noauto,quiet 0 0 /dev/sda1 /mnt/scsimo ext2 user,noauto 0 0 /dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 0 roggen.brot.dg:/ /mnt/roggen nfs ro,user,noauto 0 0 /dev/fd0 /mnt/dosa vfat user,noauto,quiet 0 0 Effetto della mount mount /fd1 /usr/user1! 15

Uso della mount Si crea una directory che servirà come mount-point: di solito le directory adibite a questo compito si trovano in /mnt ma nulla vieta di crearla altrove: mkdir /mnt/floppy Con il comando mount /dev/fd0 /mnt/floppy si monta la partizione fd0 (device di disco floppy) sotto la directory / mnt/floppy. Per vedere tutto quella che c'è in questa partizione basterà digitare il comando ls iaf /mnt/floppy Se in /dev non è presente fd0, occorre prima crearlo: mkfs /dev/fd0 1440 L elenco dei filesystem attualmente in uso (montati durante l interazione dell utente) è contenuto in /etc/mtab Aggiungere utenti Il processo di aggiunta di nuovi utenti è realizzato in 6 passi: Definire l account dell utente nel file /etc/passwd Definire una password iniziale Creare la home directory dell utente Aggiungere l utente nel file /etc/group Memorizzare le informazioni di accounting Configurare la quota (lo spazio) sui dischi Si usa in comando di amministrazione adduser 16

GESTIONE DEGLI UTENTI - 1 La gestione degli utenti comprende le operazioni di aggiunta, modifica, cambio password di tutti gli utenti che possono accedere in shell alla macchina. Per aggiungere a mano un utente al sistema si deve (come root): Editare /etc/passwd aggiungendo una riga per il nuovo utente; Editare /etc/group aggiungendo un nuovo gruppo per il nuovo utente (non indispensabile); Se esiste il file /etc/shadow editarlo aggiungendo una nuova riga per l'utente; Creare la home del nuovo utente: mkdir /home/nomeutente; Ricreare l'ambiente base nella nuova home: cp /etc/skel /home/nomeutente; Modificare il proprietario della home: chown -R nomeutente:nomegruppo / home/nomeutente; Modificare i permessi della home: chmod -700 /home/nomeutente; Modificare la password dell'utente: passwd nomeutente Tutto quanto viene automaticamente fatto con comandi e tool di amministrazione GESTIONE DEGLI UTENTI 2 Comandi principali useradd oppure adduser [opzioni] nomeutente Aggiunge un utente, è possibile tramite le varie opzioni disponibili modificare tutte le impostazioni di default di inserimento utenti. userdel [opzioni] nomeutente Elimina un'utente, da sottolineare che la sua home con il suo contenuto non viene cancellata. groupadd [opzioni] nomegruppo Aggiunge un gruppo. passwd [nomeutente] Modifica la password di un'utente chsh [opzioni] Cambia il tipo si shell disponibile al login di un'utente 17

GESTIONE DEGLI UTENTI 3 File di configurazione /etc/passwd File che contiene le informazioni dell'utente, uno per riga, con questo formato: username : password : UserID : GroupID : commento : homedirectory : comando di login /etc/groupfile contenente le informazioni sui gruppi e le loro relazioni. Formato: NomeGruppo : commento : GroupID: Utenti,Del,Gruppo /etc/shadow Se il sistema gestisce le shadow, questo è il file che contiene le password criptate e ulteriori dati. Nei campi, separati da :, sono inserite informazioni sulla scadenza della password, l'ultima volta in cui è stata modifcata, giorni di avviso prima della scadenza della password... Archiviare e comprimere files Il comando TAR Tar <opt> <file1> <file2>. Opzioni principali: Es: tar cvf /mnt/floppy/filepasswd /etc/passwd tar cvf backup.tar /etc c crea nuovo archivio v verbose mode f nome del file dove porre l archivio (.tar di default) x estrae i files dall archivio t elenca i files contenuti nell archivio z filtra l archivio tramite gzip/gunzip Z filtra l archivio mediante Compress/Uncompress Il comando GZIP/GUNZIP Gzip <-liv> <file1> -liv=livello di compressione, max 9 Es: gzip -9 backup.tar tar cvf - /etc gzip -9c > backup.tar.gz gunzip c backup.tar.gz tar xvf tar cvfz backup.tar.gz /etc 18

Installazione Linux su PC 1. Controllo dell hardware supportato, ad es. su http://hardware.redhat.com 2. Partizionamento e formattazione del disco rigido 3. Installazione del Boot Loader (LILO, GRUB) 4. Configurazione delle schede di rete 5. Scelta della password di root 6. Configurazione dell autenticazione password Abilitazione MD5 per password fino a 256 caratteri Abilitazione shadow password 7. Selezione dei pacchetti applicativi da installare 8. Configurazione di scheda video e monitor Il comando fdisk l visualizza le partizioni del disco [root@deis73 root]# fdisk l Disco /dev/hda: 255 testine, 63 settori, 4865 cilindri Unità = cilindri di 16065 * 512 byte Dispositivo Avvio Inizio Fine Blocchi Id Sistema /dev/hda1 * 1 1275 10241406 83 Linux /dev/hda2 1276 1721 3582495 83 Linux /dev/hda3 1722 2167 3582495 83 Linux /dev/hda4 2168 4865 21671685 f Win95 Ext'd /dev/hda5 2168 2320 1228941 82 Linux swap /dev/hda6 2321 4865 20442681 83 Linux 19

Il comando df visualizza le partizioni, i rispettivi mount point e l'ammontare di spazio libero su disco [root@deis76 root]# df Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda1 10080488 307968 9260452 4% / /dev/hda6 20121812 6248500 12851180 33% /home none 257344 0 257344 0% /dev/shm /dev/hda3 3526204 1962660 1384420 59% /usr /dev/hda2 3526204 331488 3015592 10% /var Il file /etc/fstab elenca tutti i file system con i rispettivi mount point [root@deis73 root]# cat /etc/fstab /dev/hda4 / ext3 defaults 1 1 none /dev/pts devpts gid=5,mode=620 0 0 /dev/hda7 /home ext3 defaults 1 2 none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0 /dev/hda5 /win vfat defaults 0 0 /dev/hda6 swap swap defaults 0 0 /dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0 /dev/cdrom1 /mnt/cdrom1 iso9660 noauto,owner,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner 0 0 20

Il comando mount mostra i file system attualmente montati [root@deis73 root]# mount /dev/hda4 on / type ext3 (rw) none on /proc type proc (rw) none on /dev/pts type devpts (rw,gid=5,mode=620) /dev/hda7 on /home type ext3 (rw) none on /dev/shm type tmpfs (rw) /dev/hda5 on /win type vfat (rw) init è il primo processo che parte Livelli di esecuzione (runlevels): 0 halt 1 single-user 2 multi-user senza servizi di rete 3 multi-user 4 non usato 5 multi-user con interfaccia grafica 6 reboot /etc/inittab è il file di configurazione /etc/rc.d/ contiene gli script di inizializzazione per ciascun livello All atto della creazione, la home directory viene riempita con il contenuto di /etc/skel/ Quando si avvia una shell, vengono eseguiti degli script di inizializzazione Bash login: /etc/profile e poi ~/.bash_profile oppure /etc/profile e poi ~/.bash_login oppure /etc/profile e poi ~/.profile Bash logout: ~/.bash_logout Bash interattiva: ~/.bashrc 21

Limitare superiormente lo spazio su un file system a disposizione di ciascun utente 1. In /etc/fstab aggiungere l opzione usrquota al file system considerato e aggiornare il mount point /dev/hda7 /home ext3 defaults,usrquota 1 2 # mount /home -o remount 2. Creare il file aquota.user che descrive le quote # quotacheck uv /home 3. Abilitare/disabilitare le quote # quotaon uv /home # quotaoff uv /home 4. Configurare il valore delle quote tramite vi # edquota pippo 5. Controllare l utilizzo delle quote # quota -u pippo # repquota /home Monitoraggio last mostra l elenco degli accessi più recenti lastlog mostra l ultimo accesso per ciascun utente who mostra gli utenti attualmente connessi ps mostra lo stato dei processi attivi top mostra i processi in tempo reale kill termina un processo du mostra le dimensioni di un file system df mostra lo spazio disponibile su disco /var/log contiene i log di sistema 22