我使用的是hostextinfo语句,以便在我的地图中显示图标。 例如:
define hostextinfo { hostgroup_name apple-devices icon_image base/apple.png icon_image_alt Apple vrml_image apple.png statusmap_image base/apple.gd2 }
这很好。
但是,当我使用以下语句来使用存储在htdocs/images/logos/symbols而不是htdocs/images/logos/base ,它不起作用,并且将显示一个询问点商标。
define hostextinfo{ hostgroup_name network-devices icon_image symbols/switch.png icon_image_alt Switch vrml_image switch.png statusmap_image symbols/switch.gd2 }
到目前为止,这是我所尝试的:
http://obfuscated.net/nagios3/images/logos/base/正在返回403 Forbidden但http://obfuscated.net/nagios3/images/logos/symbols/正在返回404 Not Found 。 apache2.conf和cgi.cfg文件来找出没有成功的图像权限。 编辑这里有一些列表来显示文件的权限。 我无法看到base和symbols之间有什么不同
/usr/share/nagios/htdocs/images/logos# ls -l . total 64 drwxr-xr-x 2 root root 12288 Nov 25 08:38 andrade drwxr-xr-x 2 root root 4096 Nov 25 08:38 base drwxr-xr-x 2 root root 4096 Nov 25 08:38 bernhard drwxr-xr-x 2 root root 12288 Nov 25 08:38 cook drwxr-xr-x 2 root root 4096 Nov 25 08:38 didier drwxr-xr-x 2 root root 12288 Nov 25 08:38 logos drwxr-xr-x 2 root root 4096 Nov 25 08:38 remus drwxr-xr-x 2 root root 4096 Nov 25 08:38 satrapa drwxr-xr-x 2 root root 4096 Nov 25 08:38 symbols drwxr-xr-x 2 root root 4096 Nov 25 08:38 werschler /usr/share/nagios/htdocs/images/logos# ls -l base/switch40.png -rw-r--r-- 1 root root 869 Dec 6 2009 base/switch40.png /usr/share/nagios/htdocs/images/logos# ls -l symbols/router.png -rw-r--r-- 1 root root 169 Dec 6 2009 symbols/router.png
你知道在哪里访问这些图片的权限apache2存储?
在ubuntu上, nagios3软件包会将Web界面提供的所有文件安装到/usr/share/nagios3/htdocs/ 。
可以通过nagios-images软件包安装用于地图的其他映像,并将文件安装在/usr/share/nagios/htdocs/ 。
你可以注意到,一个path指的是nagios3而另一个指的是nagios 。
另外, /usr/share/nagios3/htdocs/images/logos包含/usr/share/nagios3/htdocs/images/logos中的子目录的符号链接列表。 但是, symbols符号链接实际上是缺less的,这就是为什么地图无法使用该目录中的文件。
创build如下的符号链接解决了这个问题:
/usr/share/nagios3/htdocs/images/logos# ls -l symbols lrwxrwxrwx 1 root root 47 Dec 3 04:31 symbols -> ../../../../nagios/htdocs/images/logos/symbols/