Struttura del sistema operativo GNU/Linux http://www.glugto.org/ Cos'è un filesystem Cosa vuol dire FHS Composizione albero di directory Concetto di Mount Utente root Permessi su files e directory GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 1 Capitolo 1: Filesystem http://www.glugto.org/ Un filesystem è il modo in cui i file sono immagazzinati e organizzati su un dispositivo di archiviazione, come un hard disk o un CD-ROM Il filesystem è parte integrante e fondamentale di ogni sistema operativo GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 2 Esistono molti tipi di filesystem Ogni filesystem ha delle caratteristiche che lo differenziano dagli altri Ogni utente sceglie, in fase di installazione di un Sistema Operativo, un tipo di filesystem in base alle sue esigenze GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 3 Elenco dei filesystem Ambiente Microsoft Ambiente Linux Fat Ext2 Fat32 Ext3 Ntfs ReiserFS JFS XFS ...e molti altri ancora! GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 4 Caratteristiche salienti dei filesystem più diffusi Ext2: simile al FAT di Microsoft, buone prestazioni, ottima stabilità, NESSUNA FUNZIONE DI JOURNAL Ext3: evoluzione dell'Ext2 (e quindi più complesso), ottime prestazioni, velocissima la scrittura e la lettura dei files su disco, dispone di journal ReiserFS: molto performante, il primo a poter disporre del journal, ideale per partizioni con molti files di piccole dimensioni ... GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 5 Ma che cos'è il journal??? Il journal è un registro sul quale vengono temporaneamente scritte le informazioni prima che queste siano effettivamente scritte su disco QUINDI in caso di interruzione di corrente o crash della macchina le informazioni sono “recuperate” dal registro di journal e nessun dato viene perso GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 6 Consigli ● ● ● Utilizzare SEMPRE un filesystem journaled Scegliere un filesystem discretamente recente e che sia contemporaneamente stabile e performante Scegliere il filesystem in base ai nostri scopi e a “ciò che diventerà” la nostra macchina (pc per uso desktop/personale, server di posta, server web, file server,...) GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 7 Piccola curiosità... Poichè il “creatore” e principale sviluppatore del ReiserFS, Hans Reiser, è stato arrestato per omicidio nel corso del 2006, probabilmente in futuro questo filesystem non subirà modifiche / sviluppi / migliorie, e quindi non si “evolverà” verso un filesystem migliore... forse anzi finirà in disuso... GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 8 Capitolo 2:FHS (Filesystem Hierarchy Standard) E' lo standard che definisce le directory principali e il loro contenuto in ogni distribuzione GNU/Linux (il contenuto di ogni cartella) GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 9 Vantaggi Per l'utente ---> saprà esattamente dove cercare i file che gli interessano, siano di configurazione, files eseguibili o documenti personali Per i software ---> sapranno esattamente da dove richiamare le proprie configurazioni e dove installarsi GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 10 ...e Windows? Windows al contrario non è FHS in quanto all'interno di C: si può trovare pressochè di tutto, le cartelle non hanno nomi “standard” (vedi Programmi e Program Files) e probabilmente dopo qualche mese l'hard disk sarà un groviglio di cartelle e files sparsi un po' dappertutto... GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 11 Capitolo 3: Albero di directory Poiché Linux è FHS compliant (rispettoso della gerarchia del filesystem) in OGNI installazione troveremo SEMPRE le stesse cartelle e la collocazione dei files nelle cartelle sarà sempre la stessa (i programmi sempre nella stessa cartella, le loro configurazioni sempre in un altra, i documenti degli utenti in una apposita,...) GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 12 Risorse del computer addio... In ambiente Linux il fantomatico “Risorse del Computer” non esiste “l'inizio” dell'hard disk si chiama ROOT e si rappresenta con il simbolo / (slash) GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 13 La Root può essere definita in tanti modi... La prima cartella del Sistema Operativo La cartella principale La cartella madre La cartella “radice” (in inglese root=radice) L'inizio del filesystem ... TUTTE LE RESTANTI CARTELLE SONO SOTTODIRECTORY DI ROOT GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 14 Contenuto delle cartelle principali Bin – contiene i files eseguibili parte del sistema operativo Boot – contiene i files necessari all'avvio del computer Dev – contiene i files speciali di periferica* Etc – contiene i files di configurazione del sistema e dei programmi Home – è L'UNICA cartella dove gli utenti possono salvare i propri documenti, creare files e directory liberamente simile a Documents and Settings, Lib – contiene le librerie di sistema e dei programmi *concetto approfondito più avanti GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 15 Media – è la cartella dove vengono montate* di default le periferiche di archiviazione (hdd, lettori cd-rom e floppy,...) Root – è la cartella Home dell'utente Root* Sbin – contiene i files eseguibili di sistema eseguibili solo dall'utente Root* Usr – contiene i programmi “extra” installati dagli utenti Tmp – contiene i dati temporanei Var – contiene tutti i dati variabili nel tempo GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. *concetto approfondito più avanti 16 ...cosa sono i files di periferica? In ambiente GNU/Linux TUTTO è visto dal Sistema Operativo come un file QUINDI anche TUTTI i componenti del pc (schede, mouse, tastiera, monitor,...) sono visti come dei files GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 17 QUINDI Nella cartella /dev ci sono dei files “speciali”, non modificabili né cancellabili da nessuno, abbinati a ogni periferica del nostro pc GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 18 ...e cosa vuol dire “montare una periferica”? Montare vuol dire rendere accessibile una periferica di archiviazione al Sistema Operativo Montare significa “assegnare” una cartella a una periferica di archiviazione, affinchè accedendo a questa cartella si acceda normalmente alla periferica e al suo contenuto La cartella di default dove vengono montati le periferiche è /media, tuttavia una periferica può essere montata in ogni cartella del filesystem GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 19 ...poco più in su dicevamo che... Root – è la cartella Home dell'utente Root* Sbin – contiene i files eseguibili di sistema eseguibili solo dall'utente Root* GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 20 Ma chi è l'utente Root? ATTENZIONE! La directory Root e l'utente Root sono 2 cose COMPLETAMENTE diverse!!! GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 21 L'utente Root L'utente Root è l'equivalente dell'utente Administrator in ambiente Microsoft E' l'unico utente che può fare qualunque operazione sul computer senza limitazioni GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 22 Utente Root / Administrator Ambiente Microsoft Ambiente Linux Quasi sempre al termine di un'installazione si accede al pc come Administrator Gli utenti accedono alla macchina con utenze “normali”, non amministrative QUINDI QUINDI Gli utenti possono fare qualunque cosa Svariate operazioni non si possono fare QUINDI QUINDI ... ... GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 23 Ambiente Microsoft Ambiente Linux Molto spesso sono gli stessi utenti a “creare” problemi al pc con operazioni di cui ignorano addirittura il significato GNU/Linux User Group Torino Molto difficilmente problemi nell'avvio del pc o dei programmi sono imputabili agli utenti Rilasciato sotto licenza CC-by-nc-sa. 24 Quindi Linux è limitato rispetto a Windows? NO! Gli utenti possono comunque accedere al computer con i massimi privilegi e compiere operazioni “delicate” Ogni utente può, in ogni momento, “elevare” momentaneamente il proprio utente a utente amministratore per svolgere le operazioni più critiche GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 25 Ma se è possibile diventare utente Root, perchè introdurre questo ulteriore passaggio? La presenza di 2 classi di utenti (Root / tutti gli altri utenti con diritti “limitati”) Impedisce agli utenti di manomettere (anche inavvertitamente) il computer ➔ Impedisce agli utenti di creare files e cartelle in qualunque punto del filesystem ➔ Impedisce che operazioni critiche vengano svolte senza prestare troppa attenzione ➔ GNU/Linux User Group Torino Rilasciato sotto licenza CC-by-nc-sa. 26