Download Latest Version fstransform-0.9.3-src.tar.bz2 (200.8 kB)
Email in envelope

Get an email when there's a new version of file-system transformation tool

Home / fstransform-0.3.7
Name Modified Size InfoDownloads / Week
Parent folder
fstransform-0.3.7-src.tar.bz2 2012-01-21 92.1 kB
Totals: 1 Item   92.1 kB 0
fstransform is a tool to change a file-system from one format to
another, for example from jfs/xfs/reiser to ext2/ext3/ext4, in-place
and without the need for backup. Idea from Sergei Tzukanov (convertfs
author), but it is fully independent code.

The current version of fstransform is fully functional, and ready for
testing from the general public. It has been tested on the following
file-systems, both as source and target:
ext2, ext3, ext4, jfs, minix, reiserfs, xfs

fstransform provides a script 'fstransform.sh' that automatically
performs all the step required for the transformation.
It must be executed _as_root_,
and it searches for all the programs it needs before starting.

For 'fstransform.sh' to have a chance to succeed, you need the following:

1) a little free space, typically at least 5%,
   on the original device you want to transform

2) the file-system on the original device must support sparse files
   and one of the two ioctls FIEMAP or FIBMAP

3) the following programs must be available:
   the two custom-made tools 'fsmove' and 'fsremap' (distributed with
   fstransform) and several common Linux/Unix tools:
      which, expr, id, blockdev, losetup, mount, umount,
      mkdir, rmdir, rm, mkfifo, dd, sync, fsck, mkfs 

Note: if the original device is almost full, the custom-made tool 'fsremap',
invoked by 'fstransform.sh', will create a relatively small backup file
("secondary storage") in your $HOME directory.
This secondary storage file will be at most as large as half your free RAM.

You can pass the option '-s <size>[k|M|G|T|P|E|Y|Z]' to the tool 'fsremap'
in order manually set the secondary storage size,
but please understand that using a too small secondary storage
can slow down the procedure.

To pass the same option to 'fstransform.sh', you must execute something like
  fstransform.sh --opts-fsremap='-s <size>' <other-options-and-arguments> 




Detailed instructions about how to use fstransform are in the
'README.fstransform' file included with the source code.

At the moment, fstransform requires GNU C++ and is only tested on Linux.
Source: README, updated 2012-01-21