15-498 -- Lab #2 (File System Recovery)

Due Date

March 20th, 2012

Overview

This lab is designed to help you reinforce your understanding of file system metadata, by asking you to write tools to recover corrupted file systems. Your goal is to recover as much of the original data as possible. You may take one of two approachs: You may repair the existing file system, or you may export the recovered tree.

Although your tools need only deal with the types of defects present in the file systems with which you are presented, it should work on another file system presenting with the same type of defects.

Partners

You may work with up to two other people (total team size of up to three) on this assignment.

Warning

We were devious in corrupting the file systems. The meta data may be spoiled in any number of ways -- including maliciously, pathogenically, incorrect.

Provided File Systems

Look in /afs/andrew/course/15/498-s12/www/applications/labs/lab2. You will find one damaged FAT file system, one clean Ext3 file system, and several damaged Ext3 file systems. Your tools should recover as much as possible of the FAT file system, and your choice of damaged Ext3 file systems. The "clean" Ext3 fiel system is provided to you as a reference, but it was not the basis for any of the damaged file systems.

Hint

Especially for Ext3, pretty please start with the good file system. Make sure you can interpret it. Then, once you can do that, move on to making sense of the one that we damaged. Remember, the name of the game here is to focus on, "What do we have?", "Does it make sense?", and "What can we do with it?", rather than on lamenting what has been lost or forever damages.