Shake is a defragmenter that runs in user-space while the system is in use (for now, on GNU/Linux only), without the need to patch the kernel, and without the need to patch the kernel. Unlike xfs_fsr, it only uses functions common to all filesystems. It aims to evaluate the cost of fragmentation based on criteria such as fragment number, distance from "friends" (by default, a group of files used at the same time), file age (rewriting old files allow the filesystem to reclaim free space), file size, and number of "crumbs" (very small fragments that force the head to move repetetively). A Python module that parses the output of the verbose mode is included.
|Operating Systems||POSIX Linux|
Release Notes: This release adds support for Linux leases and updates the documentation.
Release Notes: The size unit was changed to kilobytes. Unnecessary get_ptime() calls were removed. The code was cleaned up. A workaround against ld behavior was added. A signal handler that tries to keep files as safe as it can was added. A Debian package was added. Support for posix_fadvise() was added. A crash on files ending with a hole was fixed. A new build system is featured.
Release Notes: A PPC target was added to the ebuild. A workaround for a reiser4 bug was added. Copyright notices and some comments were corrected.
Release Notes: A "static" useflag was added to the ebuild. "--one-file-system" was made the default. The option parsing and compilation on 64-bit platforms was fixed.
Release Notes: File lists allocation has been fixed. The output order has been changed. A typo in the man page has been fixed. An alpha Python wrapper has been added (not installed by default). The ability to get filelist from stdin has been added. unattr has been added to remove shake.ptime and others xattrs. The Makefile has been fixed.