I filesystem vengono creati, cioè inizializzati, con il comando mkfs . In realtà esiste un programma separato per ciascun tipo di filesystem, e mkfs è solo un'interfaccia che avvia il programma adatto a seconda del tipo di filesystem desiderato. Il tipo viene selezionato con l'opzione -t tipofs.
I programmi richiamati da mkfs hanno interfacce su linea di comando leggermente diverse. Le opzioni più comuni ed importanti sono riassunte qui sotto; per altri dettagli consultare la pagina man.
Per creare un filesystem ext2 su un floppy, si dovrebbero dare i seguenti comandi:
- -t tipofs
- Seleziona il tipo di filesystem.
- -c
- Attiva la ricerca dei blocchi danneggiati e ne inizializza di conseguenza la lista.
- -l nomefile
- Legge la lista di blocchi daneggiati iniziale dal file nomefile.
Per prima cosa il floppy è stato formattato (l'opzione -n fa in modo che non vengano ricercati i blocchi danneggiati); poi viene attivata la ricerca con badblocks , con l'output rediretto in un file, blocchi-dann. Infine, si è creato il filesystem, con l'elenco dei blocchi danneggiati letto da quello che era stato trovato dal comando badblocks .$
fdformat -n /dev/fd0H1440
Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.
Formatting ... done
$
badblocks /dev/fd0H1440 1440 > blocchi-dann
$
mkfs -t ext2 -l blocchi-dann /dev/fd0H1440
mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10
360 inodes, 1440 blocks
72 blocks (5.00%) reserved for the super user
First data block=1
Block size=1024 (log=0)
Fragment size=1024 (log=0)
1 block group
8192 blocks per group, 8192 fragments per group
360 inodes per group
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
$
Si poteva usare nello stesso modo l'opzione -c di mkfs , invece di badblocks ed un file separato, come riportato nell'esempio qui sotto.
L'opzione -c è più conveniente che usare separatamente badblocks , ma badblocks è indispensabile per i controlli dopo la creazione del filesystem.$
mkfs -t ext2 -c /dev/fd0H1440
mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10
360 inodes, 1440 blocks
72 blocks (5.00%) reserved for the super user
First data block=1
Block size=1024 (log=0)
Fragment size=1024 (log=0)
1 block group
8192 blocks per group, 8192 fragments per group
360 inodes per group
Checking for bad blocks (read-only test): done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
$
Il processo per preparare i filesystem sugli hard disk o sulle partizioni è lo stesso che per i floppy, tranne che non è necessaria la formattazione.