Linux::realtimed - a drop-in daemon replacement for Incrond (see



This daemon is a drop-in replacement of Incrond compatible with its incrontab files (realtimed parses automatically Incrond tab files), that I was forced to write to overcome couple Incrond limitations:

  • dynamic recursive option

    Incrond has an option to recursively monitor directories, (inotify does not manage automatically it) but it is unable to detect directories in monitored paths created after the Incrond daemon is started.

  • Incrond leaves zombies around, realtimed not

  • realtimed creates automatically its own rsyslog and systemd entries and has a slew of other automated features (will integrage docs in 1.0 release)

  • realtimed uses epoll instead of select

the only drawback of realtimed is (for now) a slower fork, due to Perl interpreter overhead



This daemon makes use of Linux inotify system call, so it is intended only for Linux kernel >= 2.6.13 and glibc >= 2.5


non-core dependencies are Linux::Inotify2, EV, and JSON modules


The daemon needs of course to run as root, but all the child processes are ran accordingaly with incrontab files, that can specify different users. Some checks are performed to be sure no user can pass malicious/tricky paths to monitor.

HELP and development

the author would be happy to receive suggestions and bug notification. The code for this module is tracked on this GitHub page.


This daemon is free software and is distributed under same terms as Perl itself.


Copyright 2010-2038 by Anselmo Canfora.