File System Layout

  • /usr/bin
    • auto_reschedule_nagios_check

      Checks for any service checks that have stopped running and tries to restart them. Used for distributed setups.

    • dcc_configure

      System configurator for a collector node.

    • nagrestconf_install

      System configurator for a collector or slave node.

    • restart_nagios

      Nagios restarter. Cron will run this tool.

    • nagctl

      Writes csv files to be versioned by subversion and ensures that each REST command is valid.


      Only used for upgrade. There has been no need to use this for a couple of years now.

    • update_nagios

      Applies configurations sent by slaves. Called by cron.

    • csv2nag

      Nagios configuration writer.

    • slc_configure

      System configurator for a standalone or slave node. Initialises the subversion repository.

  • /usr/share/doc/nagrestconf/

    Documentation and samples.

  • /usr/share/man/man8/

    Manual pages for the tools.

  • /usr/share/nagrestconf/htdocs/

    Files served by the Web server are stored in this directory.

    • rest/

      PHP files for the REST interface are stored here.

    • nagrestconf/

      PHP files for the Web interface are stored here.

      • plugins/

        Plugin PHP files are stored here.

      • plugins-enabled/

        Plugins will be shown if links to files in the plugins directory are placed in this directory.

  • /etc/apache2/conf.d/

    The installer puts Apache Web configuration files in this directory.

  • /etc/nagrestconf/

    Configuration files for Nagrestconf tools are stored here.

  • /etc/nagios/objects/

    Contains directories for each environment, named 'folders' in the REST API.

    For a standalone server this will often contain a directory named 'local'.

    For a collector node this will contain many directories, one for each slave node.

    • setup/

      Current in-progress configuration before being applied.

    • versions/

      Checked out subversion repository containing the configuration.

    • setup.known_good/

      The last configuration that worked in nagios is stored in this directory.

  • /etc/nagios/repos/

    Subversion repository containing the configuration.

    If this is a slave node then this will be subversion synced to the collector node when a configuration is applied.