Monitorix on ReadyNAS, part 2

The default Monitorix installation (see previous post) puts the log and database files in /var/lib/monitorix/, which is part of the root partition. This partition is only 4 GB in size, and when it is 80% full the NAS sends an email to the admin email address:

System volume ‘root’ usage is 81 %. This condition should not occur in normal conditions. Please contact technical support.

Ouch… Well, it is easy enough to move the log and rrd files to a better location. As this problem is likely to occur for most software installed on the NAS, I decided to make a directory /home/admin/from_root, where things that originally lived on the root partition can be moved.

First su to become root, then stop the monitorix service:

service monitorix stop

Edit /etc/monitorix.conf using your favourite editor (vim, nano, emacs…). The beginning of mine (where the paths are defined) now looks like this:

# Monitorix – configuration file
#
# See monitorix.conf(5) manpage for a detailed description of each option.
#

title = Place a title here
hostname = RN312
theme_color = black
refresh_rate = 150
iface_mode = graph
enable_zoom = y
netstats_in_bps = n
disable_javascript_void = n
temperature_scale = c

base_dir = /usr/share/monitorix/
#base_lib = /var/lib/monitorix/
base_lib = /home/admin/from_root/monitorix
base_url = /monitorix
base_cgi = /monitorix-cgi

<httpd_builtin>
enabled = n
host =
port = 8080
user = nobody
group = nogroup
log_file = /home/admin/from_root/monitorix/log/monitorix-httpd
hosts_deny =
hosts_allow =
<auth>
enabled = n
msg = Monitorix: Restricted access
htpasswd = /var/lib/monitorix/htpasswd
</auth>
</httpd_builtin>
# Log files pathnames
# —————————————————————————–
log_file = /home/admin/from_root/monitorix/monitorix
secure_log = /var/log/secure
mail_log = /var/log/maillog
milter_gl = /var/milter-greylist/greylist.db
imap_log = /var/log/imap
hylafax_log = /var/spool/hylafax/etc/xferfaxlog
cups_log = /var/log/cups/page_log
ftp_log = /var/log/proftpd/access.log
fail2ban_log = /var/log/fail2ban.log
spamassassin_log = /var/log/maillog
clamav_log = /var/log/clamav/clamav.log
cg_logdir = /var/CommuniGate/SystemLogs/
squid_log = /var/log/squid/access.log

Now that this is done, move the existing files to the new location:

mkdir /home/admin/from_root/
mkdir /home/admin/from_root/monitorix
cp /var/lib/monitorix/* /home/admin/from_root/monitorix

Almost there. Before starting the service again it is useful to monitor the application’s log file. Make sure you have two shells running side by side. In one of them start a tail of the log file:

tail -f monitorix -n 50

Now start the service again, using the second shell. You can now monitor the startup log entries, and if all goes well there will be no (serious) errors.

service monitorix start