Introduction

ngflushd is a daemon that really can spin-down unused hard-disks, even if they use transactional file systems. Some ideas implemented by this software were taken from the original noflushd. But the new version is a complete rewrite and fixes several other short comings like:

Unfortunately there is no contact with the original noflushd author (no response to email). The old noflushd code is difficult to maintain and written in a Kerningham-Richie style C. On the other hand ngflushd uses C99 style and is more object oriented.

What it is not ...

There are at least three other ways to spin-down hard-disks ...

All of these don't work well for workstations and servers, they are intended for lap-tops or external disks. Especially the lap-top mode does almost the opposite of what ngflushd does. The later tries to keep the disk spun-down occasionally for long periods of inactivity whereas lap-top mode tries to spin-down the disk frequently and even for short periods of time. ngflushd does use some of the tricks that lap-top mode uses plus some more.

Please do not consider using ngflushd for a disk array (RAID). This is contradictive, as using ngflushd will (slightly) increase the likelihood of data damage whereas a RAID array is usually expected to decrease such likelihood.

Documentation and Download

The user documentation comes as a detailed manual page. Developers can use doxygen to generate technical documentation.

The software can be downloaded as a Debian/Ubuntu package (i386 only), as a neutral binary archive with a little installer (i386 only) and as source code. The software is easy to build from source (at least on a Linux/Debian system).

History

September 2008 - Version 0.93 Released

Now it really detects the spin-state of SATA disks. Some ugly entries in /proc/partitions (that appeared in some broken kernels) no longer cause warnings. This version works fine with Debian Lenny and better than ever (which can be attributed to general improvements in Linux Power Management).

In 2007 - Version 0.92 Released

... but I forgot to up-load it ...

July 2006 - Version 0.90 Released

Now ngflushd has been separated from noflushd. The new code is a complete re-write, is fully documented (doxygen) and should be easy to maintain. The author is using the technology it is based on for more than a year but suspended the project because of the missing SCSI Spin-Up support in the kernel (at that time) and because of an obscure problem that finally turned out to be CIFS related.

Now (summer 2006) the situation has changed and development continues. The author uses it on three machines with 1 to 3 disks per machine. File systems in use are ReiserFs and Ext3. One of the machines is a small server (the one with the three disks). With proper system configuration the server can even spin down it's system disk for reasonable periods.

Some old noflushd functions got removed from ngflushd - as they don't make any sense and don't work for todays kernels. The ngflushd program supports only 2.6 kernels.