[rrd-developers] rrdcached daemonize failed, exiting

kevin brintnall kbrint at rufus.net
Tue Sep 23 04:24:35 CEST 2008


On Mon, Sep 22, 2008 at 06:34:08PM -0700, Bernard Li wrote:
> Hi Florian, Kevin:
> 
> I am trying to start rrdcached as the user nobody, however, I get the
> following error message:
> 
> -bash-3.00$ rrdcached -g
> daemonize failed, exiting.

Bernard,

The server logs most of the failures to syslog (under daemon.*).  You
could check there.

I suspect that your user doesn't have sufficient privileges to write the
pid file (by default $LOCALSTATEDIR/run/rrdcached.pid).  This will show
up in the server logs for sure.

Keep in mind that your daemon needs write access to your files.  In your
case, you will need to have your RRD files writable via "nobody"...  Thus,
other processes which are running with "nobody" privileges will be able to
over-write your RRD files.

In my case, I have created a separate role account which owns the RRD
files (and runs my pollers).  Then, I create a special directory for it to
write its journal files and pid:

  % pwd
  /var/db/rrdcached

  % ls -ld . *   
  drwxr-x---  2 stats  stats   512B Sep 22 22:28 ./
  -r--r--r--  1 stats  stats     6B Sep 12 22:28 pid
  -rw-r--r--  1 stats  stats   146M Sep 23 02:20 rrd.journal
  -rw-r--r--  1 stats  stats   224M Sep 22 22:28 rrd.journal.old

Thus, I invoke:

  rrdcached -j /var/db/rrdcached -p /var/db/rrdcached/pid ...

> Is it because the account is too restrictive?  Would it be possible
> for rrdcached to daemonize as another user?

Most OS will let you do this..  This is what I do in startup scripts:

  su $USER -c "/usr/local/sbin/rrdcached --flags ..."

HTH.

-- 
 kevin brintnall =~ /kbrint at rufus.net/



More information about the rrd-developers mailing list