Creating the Ext2 Filesystem
There
are generally two stages to creating a filesystem on a disk. The
first step is to format it so that the disk driver can read and write
blocks on it. Modern hard disks come preformatted from the factory
and need not be reformatted; floppy disks may be
formatted on Linux using the
superformat
utility program. The second
step involves creating a filesystem, which means setting up the
structures described in detail earlier in this chapter.
Ext2 filesystems are created by the
mke2fs
utility program; it assumes the
following default options, which may be modified by the user with
flags on the command line:
Block size: 1,024 bytes
Fragment size: block size (block fragmentation is not implemented)
Number of allocated inodes: one for each group of 4,096 bytes
Percentage of reserved blocks: 5 percent
The program performs the following actions:
Initializes the superblock and the group descriptors.
Optionally, checks whether the partition contains defective blocks; if so, it creates a list of defective blocks.
For each block group, reserves all the disk blocks needed to store the superblock, the group descriptors, the inode table, and the two bitmaps.
Initializes the inode bitmap and the data map bitmap of each block group to 0.
Initializes the inode table of each block group.
Creates the
/rootdirectory.Creates the
lost+founddirectory, which is used bye2fsckto link the lost and found defective blocks.Updates the inode bitmap and the data block bitmap of ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access