Dear all,

jfsrec is now available for download, currently only as source code (se
below). Everyone is welcome to test this program. It is released as free
software and licensed under the GPL.

Please submit any bugs that you may find using the bug tracker at
http://sourceforge.net/tracker/?func=add&group_id=181515&atid=897511

Please continue further discussion on the jfsrec-related mailing list or
forums at:
http://sourceforge.net/forum/?group_id=181515 or
http://sourceforge.net/mail/?group_id=181515

jfsrec is a tool that can extract files and directories from a damaged JFS
volume.

What it can do:
 - Recover files and save them to a mounted filesystem.
 - Recover the directory structure.
 - Recover file and directory names.
 - Prioritize important files, by matching them with a regular expression.
- Exclude unimportant files.
 - Optionally skip files that seems to be fubar:ed.


How it does it:
First, the entire volume is scanned for potential inodes. Seemingly sane
inodes are saved for postprocessing. The postprocessing filters out inodes
that are not part of an inode extent, are duplicates, are unallocated, or
are part of an older installation.
The filtered out inodes are saved, and can again be validated and used, if
another inode requests it as its sibling or parent.
When a list of "good quality" inodes have been created, the actual
recovery process starts.
First the relationships between directories are recovered. Then the names
of all files and directories. The parent relation for each file is also
recovered during this process.
Then the directory structure are recreated. The next step is recovery of
all inodes. Inodes recovers depending on their type. Directory inodes only
sets their own dates. File inodes saves the file data, and sets its dates.
Symlinks and special inodes is not taken care of yet.
Needless to say, this process is quite time consuming.


What it cannot do (yet):
 - Handle non-ASCII filenames correctly. Filenames are UTF8-encoded, but
the filename is truncated.
 - Handle multiple versions of the same filename (but with different inode
number)
 -  Handle symlinks and special inodes.
It still prints a lot of debug messages thats irrelevant to non-developers.

Obtaining it:
Checkout the source code from the svn repository:
 svn co https://svn.sourceforge.net/svnroot/jfsrec jfsrec
 ./configure && make

The boost libraries filesystem, program_options as well as regex, are
required. Get them from boost.org, or via your favorite package manager.

How it came to be:
One day my boot loader stopped working. So I had to boot my computer using
an Ubuntu boot CD. When I tried to fix the boot loader I needed a little
more disk space than the ram disk had, so I decided to format the swap
partition. Unfortunately, the device numbering on the boot CD was not the
same as on my installation. That lead to the fatal mistake, the /dev/md2 I
formatted, which was the swap space on my installation, was the same as
/dev/md3 on my installation, which was the root partition. I did not find
any commercial or open tools to try, but I found some interesting mails on
this mailing list and the idea was born...


Best wishes,
Simon Lundell



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jfs-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jfs-discussion

Reply via email to