Shake
Shake is a free userspace defragmenter for GNU/Linux that can reorganize fragmented files while the system is running.
What Shake is
Shake is a free userspace defragmenter for GNU/Linux that can reorganize fragmented files while the system is running. It uses heuristics based on file size, last-shake time or change time, access-time patterns, and fragment counts to decide what to process. By default, it skips files larger than 95 MB and files newer than two months; files whose last-shake time or change time is older than eight times 31 days are eligible. Options can change the size thresholds and tolerances. To inspect fragmentation without changing files, use the `--pretend` and `--verbose` options. A sorted list of MP3 files can be piped into Shake to defragment them and place them close together on disk in lexical order. Installation instructions cover Ubuntu/Debian, Gentoo, and Arch Linux, as well as a source build using CMake and libattr development files. Shake uses extended attributes for incremental operation. The author recommends mounting the partition with `user_xattr`; Shake can run without it, but less efficiently. Usage instructions call for root access and recommend running it on an idle whole partition for better results. The project page names Brice Arnould as the author.
Good
- Can run while the system is in use.
- Preview fragmentation without changing files.
- Supports Ubuntu/Debian, Gentoo, and Arch Linux.
- Options adjust file thresholds and tolerances.
Watch out
- Usage instructions require root access.
- Incremental use is less efficient without `user_xattr`.
- Files larger than 95 MB are skipped by default.
Who it suits
Shake is suited to GNU/Linux users comfortable with root access who want to reorganize fragmented files or inspect fragmentation. Its documented installation routes include several distributions and a source build.
Verdict
Shake offers configurable file selection and a preview mode for GNU/Linux. Users should account for its root-access requirement and the recommended `user_xattr` mount option when planning incremental use.
The facts
Each one read from Shake's own pages, with the date it was checked.
What it does
- Age behavior
- By default, Shake processes files whose last shake time or ctime is older than eight times 31 days and skips files newer than two months; these values can be changed with options.checked 4 Oct 2001
- Extended attributes
- The maker recommends mounting the partition with user_xattr; Shake can run without it but is less efficient because it uses extended attributes to store information for incremental use.checked 4 Oct 2001
- File ordering
- You can pipe a sorted file list into Shake to defragment files and place files close together in lexical order on disk.checked 5 Oct 2001
- File selection
- Shake uses file size, last-shake date or ctime, access-time patterns, and fragment counts in deciding whether files are fragmented enough to process.checked 5 Oct 2001
- File size behavior
- By default, files larger than 95 MB are skipped, and the page says this behavior can be changed with `--big-tolerance`.checked 5 Oct 2001
- Filesystem requirement
- The maker recommends mounting the partition with user_xattr; Shake can run without it but is less efficient for incremental use.checked 5 Oct 2001
- How it works
- It defragments files by rewriting fragmented files.checked 5 Oct 2001
- Installation
- The maker lists Ubuntu/Debian, Gentoo, and Arch Linux installation options and instructions for building from source with CMake and libattr development files.checked 4 Oct 2001
- Install options
- The page lists Ubuntu/Debian, Gentoo, and Arch Linux installation options and instructions for building from source.checked 5 Oct 2001
- Preview
- The `--pretend` and `--verbose` options can show fragmentation without running a defragmentation pass.checked 5 Oct 2001
- Preview mode
- Shake can report fragmentation without changing files using the --pretend and --verbose options.checked 4 Oct 2001
- Purpose
- Shake is a userspace defragmenter for GNU/Linux that can run while the system is in use.checked 5 Oct 2001
- Root access
- The usage instructions say to run Shake as root.checked 5 Oct 2001
- Source code
- The maker links to a public GitHub repository whose file list includes COPYING and GPL.txt.checked 5 Oct 2001
- Support contact
- The project page lists [email protected] as the author's email address.checked 5 Oct 2001
- Usage
- The maker says to run Shake as root on a directory and recommends running it on the whole partition when it is not in use for better results.checked 4 Oct 2001
The company
- Founded
- 2008checked 28 Sep 2001
- Maker
- The project page names Brice Arnould as the author.checked 4 Oct 2001
- Maker location
- The maker's about page says he lives in Evilard, a village close to Berne, Switzerland.checked 4 Oct 2001
Alternatives to Shake
- 1

Autoruns
Free planWindows6.2Free plan - 2
DymaxIO
Windows6.2From $5.75 a month - 3

Auslogics Driver Updater
Free planWindows6.1Free plan - 4
IObit Smart Defrag
Free planWindows6.0From $1.67 a month - 5

Disk SpeedUp
Free planWindows5.9Free plan - 6

UltimateDefrag 6
Windows5.9$19.97, paid once
