SYNCER(4) FreeBSD Kernel Interfaces Manual SYNCER(4)


syncerfile system synchronizer kernel process




The syncer kernel process helps protect the integrity of disk volumes by flushing volatile cached file system data to disk.

The kernel places all vnode(9)'s in a number of queues. The syncer process works through the queues in a round-robin fashion, usually processing one queue per second. For each vnode(9) on that queue, the syncer process forces a write out to disk of its dirty buffers.

The usual delay between the time buffers are dirtied and the time they are synced is controlled by the following sysctl(8) tunable variables:

Variable Default Description
kern.filedelay 30 time to delay syncing files
kern.dirdelay 29 time to delay syncing directories
kern.metadelay 28 time to delay syncing metadata


The syncer process is a descendant of the ‘update’ command, which appeared in Version 6 AT&T UNIX, and was usually started by /etc/rc when the system went multi-user. A kernel initiated ‘update’ process first appeared in FreeBSD 2.0.


It is possible on some systems that a sync(2) occurring simultaneously with a crash may cause file system damage. See fsck(8).
July 14, 2000 FreeBSD