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 in 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à multi-utente (telinit 3 o telinit 5) e, se non c'è più lavoro amministrativo da fare, dovreste uscire dall'account di root.