Il file /etc/fstab rende possibile montare automaticamente, all'avvio del sistema, alcuni filesystem. Contiene una serie di righe che descrivono i vari filesystem, i loro punti di mount e altre opzioni. Quello che segue è un esempio di file /etc/fstab:
/dev/hda1 / ext2 defaults 1 1 /dev/hda5 /home ext2 defaults 1 2 /dev/hda6 swap swap defaults 0 0 /dev/fd0 /mnt/floppy auto sync,user,noauto,nosuid,nodev,unhide 0 0 /dev/cdrom /mnt/cdrom auto user,noauto,nosuid,exec,nodev,ro 0 0 none /proc proc defaults 0 0 none /dev/pts devpts mode=0622 0 0 |
il dispositivo che ospita il filesystem;
il punto di mount;
il tipo di filesystem;
le opzioni per montare il dispositivo;
il flag di dump, un programma di backup;
l'ordine in cui fsck (FileSystem ChecK) controllerà i filesystem.
C'è sempre una voce per il filesystem radice. Le partizioni di swap sono speciali perché non sono visibili nella struttura delle directory, e il loro campo nel punto di mount presenta la parola chiave swap. Torneremo a parlare di /proc in maggior dettaglio nel capitolo Il filesystem /proc. Un altro filesystem particolare è /dev/pts.
Ma torniamo al nostro compito. Avete spostato l'intera gerarchia /usr nella directory /dev/hdb1/, e quindi volete che sia montata come /usr/ all'avvio. Quello che dovete fare è aggiungere questa voce al file /etc/fstab:
/dev/hdb1 /usr ext2 defaults 1 2 |
Ci sono due opzioni speciali: noauto e user. L'opzione noauto specifica che il filesystem non deve essere montato all'avvio, ma soltanto al momento desiderato. L'opzione user specifica che qualunque utente può montare e smontare il filesystem. Tipicamente, queste due opzioni sono usate per i drive CD-ROM e per i floppy, ma valgono anche per i dischi rigidi. Ci sono anche altre opzioni, infatti il file /etc/fstab è persino corredato da una sua pagina di manuale (fstab(5)).
L'ultimo, ma non meno importante, vantaggio nell'uso di questo file è che semplifica la sintassi del comando mount: per montare un filesystem descritto nel file basta rifarsi al punto di mount oppure al dispositivo. Ad esempio, per montare un floppy disk si può digitare:
$ mount /mnt/floppy |
$ mount /dev/fd0 |
cancellare tutti i file della directory /usr (della "vecchia" /usr, dato che la "nuova" non è stata ancora montata!): rm -Rf /usr/*;
montare la "nuova" /usr/: mount /usr/
e avete finito. Adesso potete tornare in modalità multiutente (telinit 3 o telinit 5) e, se non c'è più lavoro amministrativo da fare, dovreste uscire dall'account di root.