Cacti (home)ForumsDocumentation



This area is for user contributed Frequently Asked Questions. They will be cleaned up and added to the Official FAQ

Status Unknown

If the status of your device remains 'Unknown', ensure that you have added graphs to that device.

If there are no graphs, Cacti will not poll the device, and the status will remain 'Unknown'.

How does the Simple Network Management Protocol (SNMP) work?


Initial Graph does not appear

When viewing in tree mode, the initial graph does not show up. When you click on it, the graphs appear fine.

This may be an RRDTool version conflict. Go to Console/Configuration/Settings/General and ensure that RRDTool Utility Version is set to the correct version under Required Tool Versions

Linegod 2009/10/01 08:09

Can you graph Data Sources (ds) from different RRDs

I know it's kind of a pain to update an RRD to add fields after the fact, so I was also 
looking at potentially showing data from two different RRDs
on a single graph.

Is that possible?


Yes, search the forums1) for 'aggregate', or use the Aggregate plugin2)

External Resources


Deprecated Warnings

You may see the following errors in Cacti if you install with PHP 5.3.x

PHP Deprecated:  Assigning the return value of new by reference is deprecated in
/usr/share/cacti/lib/adodb/ on line 866

PHP Deprecated:  Function ereg() is deprecated in /var/www/html/087e/lib/html_validate.php 
on line 38

Function split() is deprecated in /var/www/html/087e/lib/functions.php on line 1744

Function session_unregister() is deprecated in /var/www/html/087e/lib/functions.php 
on line 359


"PHP 5.3.0 introduces two new error levels: E_DEPRECATED and E_USER_DEPRECATED. The
E_DEPRECATED error level is used to indicate that a function or feature has been deprecated.
The E_USER_DEPRECATED level is intended for indicating deprecated features in user code,
similarly to the E_USER_ERROR and E_USER_WARNING levels."

These are simply warnings for functions that will eventually be unsupported in PHP.

As these have been fixed in 0.8.8, simply following the recommended procedure and do not show these warnings in production systems. Edit your /etc/php.ini and set the following values:

; error_reporting
;   Default Value: E_ALL & ~E_NOTICE
;   Development Value: E_ALL | E_STRICT
;   Production Value: E_ALL & ~E_DEPRECATED
error_reporting = E_ALL & ~E_DEPRECATED

Restart apache after adjusting the settings.

If for some reason you have no access to php.ini or cannot restart apache, add the following line of code to include/config.php


Time Zone Warning

Similar to the Deprecated Warning, you may see the following warning in your logs

PHP Warning:  strtotime(): It is not safe to rely on the system's timezone settings. You are
*required* to use the date.timezone setting or the date_default_timezone_set() function. In case
you used any of those methods and you are still getting this warning, you most likely misspelled
the timezone identifier. We selected 'Europe/Berlin' for 'CET/1.0/no DST' instead in
/usr/share/cacti/include/global_constants.php on line 156

In this case, simply follow the directions. Set your timezone in /etc/php.ini

; Defines the default timezone used by the date functions
date.timezone =America/Regina

Of course, read , and find your correct timezone.

As always, restart apache after any change to /etc/php.ini

When attempting to run poller.php you get: This script is only meant to run at the command line.

Most likely caused by a misconfiguration in your php.ini file. Make sure the following is set in it:

register_argc_argv = On
safe_mode = Off


My traffic graphs won't exceed 114 mbit/s

Traffic graphs clip at 114 mbit/s. To resolve this clipping, use SNMP v2c and 64-bit counters.

For now, see this forum post

Linegod 2009/10/01 08:05

Show exact numbers

In the legend of the graph, you want the full number displayed, not the unit number.  ie:  1950 vs 1.95k

Change the Graph Item GPRINT Type to 'Exact Numbers' instead of 'Normal'

What does µ , m , p , etc stand for

-18  a - atto
-15  f - femto
-12  p - pico
-9   n - nano
-6   µ - micro
-3   m - milli
0    (no unit)
3    k - kilo
6    M - mega
9    G - giga
12   T - tera
15   P - peta
18   E - exa

Please note that the Base Value (–base) in the Graph template determines the conversion base between these.

Base Value (--base) = 1000 -> 1 Megabyte = 1000 Kilobyte
Base Value (--base) = 1024 -> 1 Megabyte = 1024 Kilobyte

I don't see any graphs on the main graph page, but when I click on one, I see 4 graphs with data.

This can happen when you have the wrong version of RRDTool selected in Cacti. Set it by going to Settings and applying the proper RRDTool Utility Version.


How do I stop the command windows from opening every 5 minutes?

This is occurring because your Cacti scheduled task is using the same user account you've logged onto the server with. The recommended fix is have the scheduled task run under a different user account. An unsupported method would be to use VBScript to hide the PHP windows.

Why doesn't Windows return Disk or CPU usage via SNMP?

  • Open up the SNMP Service and click on the Agent tab. Make sure all the service checkboxes are marked (they are not by default). Restart the SNMP service.
  • Increase the SNMP timeout to 3-5 seconds (yes, this is a longstanding issue with the Windows SNMP agent when fetching disk information)
  • Decrease the Maximum OID's Per Get Request.

ERROR: change root is not supported by your OS or at least by this copy of rrdtool.

This error message occurs when you use the Win32 build of RRDTool instead of Cygwin with versions prior to 1.2.15. RRDTool 1.2.30 Win32 build (or newer) is recommended.

All my graphs are blank. Enabling graph debugging reveals a blank RRDTool Says output

This typically occurs when the NTFS permissions on cmd.exe or rrdtool.exe are not set correctly. Both need Read/Execute rights by the web server's user account. Read about the exact details in the installation guide.

How do I get WMI scripts working on remote computers?

There are several things one needs to do to accomplish this:

  1. Open a hole in the firewall for DCOM. For the Windows XP/2003 firewall, do the following:
    • Open up the Windows Firewall control panel
    • Click on Add Port.
    • Name: DCOM. Port: 135. Type: TCP
    • You might need to change the scope of the rule, depending on where you will be remotely querying the server from.
    • Start | Run: gpedit.msc
    • Navigate to: Computer Configuration | Administrative Templates | Network | Network Connections | Windows Firewall
    • Enable the following:
      • Allow remote administration exception
      • Allow local port exceptions
  2. Edit WMI security
    • Start | Run: wmimgmt.msc.
    • Get properties on WMI Control.
    • Go to the Security tab
    • Click on the Root folder, then the security button at the bottom
    • Click on Advanced
    • Add the cactiuser account that's going to be used. Assign the following rights:
      • Enable Account
      • Enable Remote
    • Change the Apply onto to to: This namespace and subnamespaces.
    • Click OK several times and close the WMI window.
  3. Edit DCOM security
    • Start | Run: dcomcnfg
    • Navigate to: Component Services | Computers | My Computer.
    • Get properties on My Computer
    • Click on the COM Security tab.
    • Under Launch and Activate Permissions, click on Edit Limits
    • Add the cactiuser account that's going to be used. Assign the following rights:
      • Remote Activation
    • Click OK and exit.

I'm getting errors with: Warning: fgets(): supplied argument is not a valid stream resource: <filename>

This is most likely due to incorrect NTFS permissions on that file/folder. This prevents Cacti from accessing the file(s) to execute the code.

How do I install the Microsoft SNMP agent?

How do I configure the Microsoft SNMP agent?

Debian and Ubuntu

Because of requirements by Debian the file layout in the packages for Debian and Ubuntu are different than found in the cacti file from this site. All documentation is written for the default setup. Please be aware of the following differences:

  1. All browsable files are located in /usr/share/cacti/site/ instead of /var/www/cacti/
  2. Configuration is done in /etc/cacti/debian.php instead of /var/www/cacti/include/config.php
  3. rrd files are stored in /var/lib/cacti/rra instead of /var/www/cacti/rra/ (symlink from /usr/share/cacti/site/rra is included)
  4. Cli scripts are located in /usr/share/cacti/resource/ (symlink from /usr/share/cacti/site/resource is included)
  5. Log files are located in /var/log/cacti/ (symlink from /usr/share/cacti/site/log is included)
  6. Local resources should be installed in /usr/local/share/cacti/resource/
  7. Local plugins should be installed in /usr/local/share/cacti/plugins (but this needs to be setup manually, please read README.Plugins)
  8. Cacti is run under the www-data user

Personal Tools