LFS_CLEANERD(8) BSD System Manager's Manual LFS_CLEANERD(8)
lfs_cleanerd -- garbage collect a log-structured file system
lfs_cleanerd [-bcdfmqs] [-l load-threshhold] [-n number-of-segments]
[-r report-frequency] [-t timeout] node
The lfs_cleanerd command starts a daemon process which garbage-collects
the log-structured file system residing at the point named by node in the
global file system namespace. This command is normally executed by
mount_lfs(8) when the log-structured file system is mounted. The daemon
will exit within a few minutes of when the file system it was cleaning is
Garbage collection on a log-structured file system is done by scanning
the file system's segments for active, i.e. referenced, data and copying
it to new segments. When all of the active data in a given segment has
been copied to a new segment that segment can be marked as empty, thus
reclaiming the space taken by the inactive data which was in it.
The following options are available:
-b Use bytes written, rather than segments read, when determining
how many segments to clean at once.
-c Coalescing mode. For each live inode, check to see if it has too
many blocks that are not contiguous, and if it does, rewrite it.
After a single pass through the filesystem the cleaner will exit.
-d Run in debug mode. Do not become a daemon process, and print
debugging information. More -d s give more detailed debugging
-f Use filesystem idle time as the criterion for aggressive clean-
ing, instead of system load.
Clean more aggressively when the system load is below the given
threshhold. The default threshhold is 0.2.
-m Use mmap, rather than rereading the Ifile to update the cleaner's
knowledge of the filesystem. Do not use this option.
Clean this number of segments at a time: that is, pass this many
segments' blocks through a single call to lfs_markv, or, if -b
was also given, pass this many segments' worth of blocks through
a single call to lfs_markv.
-q Quit after cleaning once.
Give an efficiency report after every report-frequency times
through the main loop.
-s When cleaning the file system, send only a few blocks through
lfs_markv at a time. Don't use this option.
Poll the filesystem every timeout seconds, looking for opportuni-
ties to clean. The default is 300, that is, five minutes. Note
that lfs_cleanerd will be automatically awakened when the
filesystem is active, so it is not usually necessary to set
timeout to a low value.
lfs_bmapv(2), lfs_markv(2), lfs_segwait(2), mount_lfs(8)
The lfs_cleanerd utility first appeared in 4.4BSD.
BSD December 11, 1993 BSD