Hi,
I did a fresh install of zimbra 8 on CentOS 6.5 and after the installation notice stats were not running. After investigating the issue and reviewing numerous log files, I decided to look at the perl script (zmstat-fd). There is an expression where zmstat-fd checks the log file location via a realpath function.
ls -ld /opt
lrwxrwxrwx. 1 root root 10 Apr 16 01:43 /opt -> /usr/local
/opt/zimbra/libexec/zmstat-fd
Error: Specified log file must be created in /tmp, /var/log, /opt/zimbra/zmstat, /opt/zimbra/log, or /opt/zimbra/data/tmp
from zmstat-fd
$LOGFILE=realpath($LOGFILE);
if ($LOGFILE !~ /^\/tmp|^\/var\/log|^\/opt\/zimbra\/log|^\/opt\/zimbra\/data\/tmp|^\/opt\/zimbra\/zmstat/) {
print "Error: Specified log file must be created in /tmp, /var/log, /opt/zimbra/zmstat, /opt/zimbra/log, or /opt/zimbra/data/tmp\n";
print "\n";
exit(1);
But when you create a symbolic link, realpath returns the, well, real path. In my case, I added a simple 'print' statement in the script and behold..
perl -w /opt/zimbra/libexec/zmstat-fd
/usr/local/zimbra/zmstat/fd.csv
The expression will fail and zmstat-fd will not start. You'll need to update the zmstat-fd script to include your realpath.
if ($LOGFILE !~ /^\/tmp|^\/var\/log|^\/opt\/zimbra\/log|^\/opt\/zimbra\/data\/tmp|^\/opt\/zimbra\/zmstat|^\/usr\/local\/zimbra\/zmstat/) {
print "Error: Specified log file must be created in /tmp, /var/log, /opt/zimbra/zmstat, /opt/zimbra/log, or /opt/zimbra/data/tmp\n";
print "\n";
exit(1);
}
Hopefully, this will be resolved in a future release.
I did a fresh install of zimbra 8 on CentOS 6.5 and after the installation notice stats were not running. After investigating the issue and reviewing numerous log files, I decided to look at the perl script (zmstat-fd). There is an expression where zmstat-fd checks the log file location via a realpath function.
ls -ld /opt
lrwxrwxrwx. 1 root root 10 Apr 16 01:43 /opt -> /usr/local
/opt/zimbra/libexec/zmstat-fd
Error: Specified log file must be created in /tmp, /var/log, /opt/zimbra/zmstat, /opt/zimbra/log, or /opt/zimbra/data/tmp
from zmstat-fd
$LOGFILE=realpath($LOGFILE);
if ($LOGFILE !~ /^\/tmp|^\/var\/log|^\/opt\/zimbra\/log|^\/opt\/zimbra\/data\/tmp|^\/opt\/zimbra\/zmstat/) {
print "Error: Specified log file must be created in /tmp, /var/log, /opt/zimbra/zmstat, /opt/zimbra/log, or /opt/zimbra/data/tmp\n";
print "\n";
exit(1);
But when you create a symbolic link, realpath returns the, well, real path. In my case, I added a simple 'print' statement in the script and behold..
perl -w /opt/zimbra/libexec/zmstat-fd
/usr/local/zimbra/zmstat/fd.csv
The expression will fail and zmstat-fd will not start. You'll need to update the zmstat-fd script to include your realpath.
if ($LOGFILE !~ /^\/tmp|^\/var\/log|^\/opt\/zimbra\/log|^\/opt\/zimbra\/data\/tmp|^\/opt\/zimbra\/zmstat|^\/usr\/local\/zimbra\/zmstat/) {
print "Error: Specified log file must be created in /tmp, /var/log, /opt/zimbra/zmstat, /opt/zimbra/log, or /opt/zimbra/data/tmp\n";
print "\n";
exit(1);
}
Hopefully, this will be resolved in a future release.