[cgl_discussion] [cgl_valid] Simulating a system failure to force a filesystem rec overy

Andy Pfiffer andyp at osdl.org
Wed Aug 7 10:23:13 PDT 2002

On Wed, 2002-08-07 at 09:55, Fleischer, Julie N wrote:
> Validation -
> As part of testing a resilient file system, I want a test case where I am
> sure that I have simulated a system failure so that on startup fsck (I
> believe) must be performed.  In addition, it would be even better if that
> fsck could have to repair something (i.e., the system failure happened in
> the middle of a logical write).
> Does anyone know how I can do this reliably?

As far as triggering an fsck, for non-journaled filesystems that are
listed in /etc/fstab and automatically mounted on reboot, all you need
to do is use reboot(2) with LINUX_REBOOT_CMD_RESTART without a previous

You could probably arrange to reliably cause enough dirty state to be
stuck in the bufffer cache that some form of repair would always be

You might try this: create a new directory, and in that new directory,
randomly create, write, re-write, re-name, and unlink a few 100 files
and directories. Make sure it runs for a few seconds (like 3), and then
call reboot().

Saftey tip: don't do this on an ext2-based filesystem that you expect to
be sane when the system reboots. ;^)


More information about the cgl_discussion mailing list