Welcome to docs.opsview.com

Installation guide - Ubuntu Linux

Before you start

  • This page details manually installing Opsview on an Ubuntu platform. Note that we recommend using our automated installation method instead.
  • For supported Ubuntu releases please refer to platforms.
  • See our design notes for further information on planning for separate database servers, disk partitioning and security.

OS installation

For a fresh Ubuntu install we recommend using a 'netinst' image and then using aptitude to install the SSH Daemon. Other required packages will be installed as part of Opsview installation.



See the installation prerequisites information to set up users, groups and MySQL.

Importing repository signatures

For security, this repository is GPG signed. Follow our instructions to add the key to your server.

If you do not import our gpg keys, you could see errors such as:

W: GPG error: https://downloads.opsview.com squeeze Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY FB4C675977CB2CF6

The “NO_PUBKEY” portion of this message indicates that your system does not have the public key for this repository and so cannot verify its contents. You can ignore these warnings and import the keys later.

You could also see:

WARNING: The following packages cannot be authenticated!
  opsview-perl opsview-base libapache2-mod-auth-tkt-prefork-opsview opsview-core opsview-web opsview
Install these packages without verification [y/N]?

You can continue, though we recommend you verify the packages.

Opsview repositories

To install Opsview, create a new file, /etc/apt/sources.list.d/opsview.list. Further instructions.

Updating the package lists

When configuration is complete, update the repository information:

sudo apt-get update


Note: If you get this error:

E: The method driver /usr/lib/apt/methods/https could not be found.

This means that you do not have the required transport methods installed. You will need to install apt-transport-https: sudo apt-get install apt-transport-https.


Once the sources list has been updated to include the Opsview apt repository, the latest release of Opsview can be installed by running the following command as root.

sudo apt-get install opsview

You may get prompted for the mysql root user password. This is required to setup the databases used by Opsview.

You may get prompted to make mrtg.cfg root only. Reply yes.

Next, run the following command, as root, to complete the installation

/usr/local/nagios/installer/postinstall_root -p <MYSQL_ROOT_PASSWORD> -h <MYSQL_HOST> -P <MYSQL_PORT>

The Opsview server is now listening on port 3000, eg. http://opsview.example.com:3000/. Confirm that this works correctly before configuring Apache.

Using Apache as a proxy server

The performance of Opsview will be significantly improved by using Apache at the front end. All the following commands should be run as root.

sudo cp /usr/local/nagios/installer/apache_proxy.conf /etc/apache2/sites-available/opsview.conf
cd /etc/apache2/sites-available
sudo a2ensite opsview.conf
sudo a2dissite 000-default.conf

You will also need to install the Apache proxy_html module in order to use this configuration. On Ubuntu, you can install the libapache2-mod-proxy-html package:

sudo apt-get install libapache2-mod-proxy-html
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_html

Now Apache can be restarted:

sudo /etc/init.d/apache2 restart

You can now access Opsview at, for example, http://opsview.example.com/

You will now need to activate your copy of Opsview. See our activation documentation.

Logging in

Once Opsview has been installed, a single administrative user will have been created. The credentials for this user are:

Username: admin
Password: initial

You should change this password to prevent unauthorised access to Opsview - this can be done from the Administrator link at the top right of the page.

Check out our quick start guide to help you get familiar with Opsview.


MRTG emails due to permissions

NOTE: there may be a bug in the mrtg package which may cause a warning email to be sent to the system administrator every 5 minutes. This can be fixed by running:

sudo mkdir /var/www/mrtg

See this bug report and also this one for more information.

SNMP MIBs missing

On Ubuntu 12 precise, SNMP MIBs are not installed by default.

You will need to install the SNMP MIBs manually with:

sudo apt-get install snmp-mibs-downloader

See http://wiki.debian.org/SNMP for more information (package is in non-free repository).

Note, you may still get some MIB reading errors, for example:

$ snmpwalk -mALL -v2c -cpublic host | head
Unlinked OID in IPATM-IPMC-MIB: marsMIB ::= { mib-2 57 }
Undefined identifier: mib-2 near line 18 of /usr/share/mibs/ietf/IPATM-IPMC-MIB
Bad operator (INTEGER): At line 73 in /usr/share/mibs/ietf/SNMPv2-PDU
Undefined OBJECT-GROUP (diffServMIBMultiFieldClfrGroup): At line 2195 in /usr/share/mibs/ietf/IPSEC-SPD-MIB
Undefined OBJECT-GROUP (diffServMultiFieldClfrNextFree): At line 2157 in /usr/share/mibs/ietf/IPSEC-SPD-MIB
Undefined OBJECT-GROUP (diffServMIBMultiFieldClfrGroup): At line 2062 in /usr/share/mibs/ietf/IPSEC-SPD-MIB
Expected "::=" (RFC5644): At line 493 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Expected "{" (EOF): At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad object identifier: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad parse of OBJECT-IDENTITY: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
RFC1213-MIB::sysDescr.0 = STRING: "Cisco Internetwork Operating System Software
IOS (tm) C2600 Software (C2600-J1S3-M), Version 12.2(15)T7,  RELEASE SOFTWARE (fc2)
TAC Support: http://www.cisco.com/tac
Copyright (c) 1986-2003 by cisco Systems, Inc.
Compiled Sat 09-Aug-03 07:18 by ccai"
RFC1213-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.9.1.186
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (813825536) 94 days, 4:37:35.36
RFC1213-MIB::sysContact.0 = STRING: "support@opsview.com"
RFC1213-MIB::sysName.0 = STRING: "2611"
RFC1213-MIB::sysLocation.0 = STRING: "Reading"

These can be ignored.