By Alan Denney he discussion opened with a beginner's look at the tasks that a Linux file system must perform, and the vulnerabilities of the file system if failure occurs in the midst of a given task. For example, certain hard disks and controllers do not handle an abrupt loss of power very well. Indirect blocks may not be saved. In Linux ext2 file systems, the inode table is especially vulnerable because it has no redundant copy.
Data loss can be substantial if the inode table is corrupted.
If any of these checks fails, we know that we have problems somewhere. The next generation of Linux file systems will be journaling file systems. If the primary file system crashes, the journal can be used to undo any partially completed tasks that would leave the file system in an inconsistent state. Well-known Linux contributor Stephen Tweedie is reportedly working on journaling extensions for the Linux ext2 file system. A couple of well-known Unix implementations of journaling file systems may be on their way to the Linux world in the near future.