Parte I
Il sistema


1 Introduzione
 1.1 Il computer
 1.2 Il sistema operativo
 1.3 La rappresentazione delle informazioni
 1.4 La memorizzazione delle informazioni
 1.5 Gli utenti
 1.6 L’interfaccia utente
 1.7 L’hardware
 1.8 I dischi
 1.9 Il filesystem
 1.10 Il layout della tastiera
 1.11 Il software
 1.12 Il kernel ed i processi
 1.13 La notifica degli eventi
 1.14 Le reti di computer
 1.15 Le distribuzioni di GNU/Linux
 1.16 L’installazione
 1.17 I pacchetti
 1.18 Reperibilità della documentazione
 1.19 Riferimenti
2 Avvio ed arresto del sistema
 2.1 Il boot
 2.2 Parametri di avvio
 2.3 Avvio del sistema
 2.4 I file di configurazione
 2.5 I runlevel
 2.6 I terminali virtuali
 2.7 I daemon
 2.8 Accesso al sistema
 2.9 Arresto del sistema
 2.10 Riferimenti
3 Il filesystem
 3.1 I dispositivi di memoria di massa
 3.2 Partizionamento del disco
 3.3 I file di dispositivo
 3.4 Inizializzazione del filesystem
 3.5 La struttura del filesystem
 3.6 Il filesystem ext2
 3.7 Journaled filesystem
 3.8 Il VFS
 3.9 mount e umount
 3.10 “Navigare” nel filesystem
 3.11 Alcune directory particolari
 3.12 I permessi e l’umask
 3.13 Limitazioni di accesso al filesystem
 3.14 Lo swap
 3.15 Il quota
 3.16 RAID
 3.17 LVM
 3.18 RAM disk
 3.19 Copia e ripristino di partizioni
 3.20 Montaggio automatico dei fileystem
 3.21 Comandi utili
 3.22 Riferimenti
4 Operazioni su file e directory
 4.1 Creazione di file
 4.2 Creazione di directory
 4.3 Copia di file o directory
 4.4 Spostamento o rinominazione di file o directory
 4.5 Modificare la data/ora di un file o directory
 4.6 Cancellazione di file o directory
 4.7 Visualizzazione del contenuto di un file
 4.8 Modifica del contenuto di un file
 4.9 Ricerca di file o nel contenuto di file
 4.10 Differenze tra file
 4.11 Ordinamento
 4.12 Archiviazione e compressione
 4.13 Le espressioni regolari
 4.14 Riferimenti
5 Utenti ed accesso al sistema
 5.1 User account
 5.2 Group account
 5.3 La cifratura della password
 5.4 Il meccanismo delle shadow password
 5.5 Impersonare un altro utente
 5.6 Casi particolari
 5.7 La registrazione degli eventi
 5.8 La libreria PAM
 5.9 La procedura di login
 5.10 Comandi utili
 5.11 Riferimenti
6 Il kernel ed i processi
 6.1 Il kernel
 6.2 LKM - I moduli del kernel
 6.3 I device driver
 6.4 I processi
 6.5 Lo scheduler
 6.6 La comunicazione tra processi
 6.7 I file di lock
 6.8 Riferimenti
7 La shell ed i job
 7.1 La shell
 7.2 Le varie shell
 7.3 Bash - Bourne Again Shell
 7.4 Riferimenti
8 La stampa
 8.1 Introduzione
 8.2 Postscript e Ghostscript
 8.3 Lo spooler
 8.4 CUPS
 8.5 Comandi utili
 8.6 Riferimenti
9 Il tempo
 9.1 L’orologio di sistema
 9.2 La schedulazione dei job
 9.3 Riferimenti
10 Il suono
 10.1 Concetti di base
 10.2 La riproduzione del suono
 10.3 Configurazione
 10.4 Riferimenti
11 L’interfaccia grafica
 11.1 Concetti di base
 11.2 X Window System
 11.3 X Display Manager
 11.4 Window manager
 11.5 Desktop environment
 11.6 I temi del desktop
 11.7 Caratteri particolari
 11.8 Gli pseudo terminali
 11.9 La gestione dei font
 11.10 Riferimenti
12 Applicazioni utili
 12.1 Gestione del filesystem
 12.2 Terminale grafico
 12.3 Calcoli
 12.4 Scrittura di testi
 12.5 Grafica
 12.6 Audio
 12.7 Office automation
 12.8 Visualizzazione file PDF
 12.9 Web browser
 12.10 Tool per lo sviluppo
 12.11 Riferimenti
13 Installazione del software
 13.1 I pacchetti
 13.2 Riferimenti
14 Cenni sui database
 14.1 Introduzione
 14.2 Tipi di database
 14.3 Entità e relazioni
 14.4 I RDBMS
 14.5 La gestione degli utenti
 14.6 Implementazioni di database
 14.7 Riferimenti
15 Sviluppo di applicazioni
 15.1 Introduzione
 15.2 Gli algoritmi ed i programmi
 15.3 I metodi di programmazione
 15.4 I linguaggi di programmazione
 15.5 Gli strumenti
 15.6 Riferimenti