"On a clear disk you can seek forever. "(Battuta intraducibile)
Quando si installa o si aggiorna un sistema, si lavora molto sui dischi: bisogna crearvi dei filesystem in modo da poterci memorizzare dei file e riservare spazio per le varie parti del sistema.
Questo capitolo spiega tutte queste attività iniziali. Di solito, una volta impostato il sistema, non dovrete ripetere queste operazioni, tranne che per i floppy: dovrete ritornare a questo capitolo per aggiungere un nuovo disco o per rifinire l'utilizzo di quelli che avete.
I compiti di base nell'amministrazione dei dischi sono:
La formattazione, che fa diverse cose per preparare il disco all'uso, come controllare se ci sono settori danneggiati (oggigiorno non è necessario formattare la maggior parte degli hard disk).
Il partizionamento, se volete usare il disco per attività diverse che non devono interferire l'una con l'altra. Dovete ripartizionare se volete usare diversi sistemi operativi sullo stesso disco, o se volete tenere i file degli utenti separati da quelli di sistema, cosa che aiuta a proteggere questi ultimi e semplifica i backup.
La creazione di un filesystem (di tipo adatto) su ciascun disco o partizione. I dischi non risultano a Linux finché non ci create un filesystem: a quel punto potete memorizzarci file ed accedere a quelli presenti.
Il montaggio (mount) di diversi filesystem per formare una singola struttura ad albero, sia automaticamente che manualmente, a seconda delle circostanze (dovete smontare a mano i filesystem montati manualmente).
Il Capitolo 5 contiene informazioni sulla memoria virtuale e sulla cache del disco, di cui dovete essere coscienti quando usate i dischi.
UNIX, e quindi Linux, riconosce due tipi diversi di dispositivi: quelli a blocchi ad accesso casuale (come i dischi) e quelli a carattere (come i nastri e le linee seriali), alcuni dei quali sono seriali, altri ad accesso casuale. Ogni dispositivo supportato viene rappresentato nel filesystem come un file di device. Quando si legge o si scrive un file di device, i dati provengono o vanno al dispositivo che esso rappresenta; in questo modo per accedere ai dispositivi non è necessario nessun programma speciale (e nessuna metodologia speciale per la programmazione delle applicazioni, come la cattura degli interrupt o il mandare richieste ad una porta seriale); ad esempio, per mandare un file alla stampante, basta dire
$ cat nomefile > /dev/lp1 $ed il contenuto del file viene stampato (il file deve, naturalmente, essere in una forma riconoscibile dalla stampante). Comunque, dato che non è una buona idea avere diverse persone che inviano file usando cat contemporaneamente alla stampante, di solito si usa un programma speciale per farlo (normalmente lpr); un programma del genere si assicura che venga stampato solo un file alla volta e manderà gli altri in stampa in sequenza a mano a mano che la stampante ne finisce uno. Anche per la maggior parte degli altri dispositivi serve una cosa del genere; in effetti, in genere non ci si deve preoccupare per niente di questo tipo di file.
Dato che i dispositivi appaiono come file nel filesystem (nella directory /dev), è facile vedere quali file di device esistono usando ls o un altro comando adatto. Nell'output di ls -l la prima colonna contiene il tipo di file ed i suoi permessi. Ad esempio, per un dispositivo seriale sul mio sistema appare:
$ ls -l /dev/cua0 crw-rw-rw- 1 root uucp 5, 64 Nov 30 1993 /dev/cua0 $Il primo carattere della prima colonna, ad esempio `c' in crw-rw-rw- qui sopra, indica agli utenti informati il tipo del file, in questo caso un dispositivo a caratteri. Per i file ordinari il primo carattere è `-', per le directory è `d', e per i dispositivi a blocchi `b'; leggete la pagina man di ls per altre informazioni.
Notate che di solito tutti i file di device esistono anche se il dispositivo corrispondente può non essere installato, quindi se avete un file /dev/sda, non è detto che abbiate realmente un hard disk SCSI. Avere tutti i file di device rende più semplici i programmi di installazione e semplifica l'aggiunta di nuovo hardware (non c'è bisogno di trovare i parametri corretti e creare il file di device per il nuovo dispositivo).