由于权限问题,无法在我的 Nagios 地图中使用 images/logos/base 之外的图像

由于权限问题,无法在我的 Nagios 地图中使用 images/logos/base 之外的图像

我使用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.confcgi.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 访问这些图像的权限存储在哪里吗?

答案1

在 ubuntu 上,该nagios3包会将 Web 界面提供的所有文件安装到/usr/share/nagios3/htdocs/.

可以通过包安装用于地图的附加图像nagios-images,并将文件安装在中/usr/share/nagios/htdocs/

您可以注意到,一条路径指的是 ,nagios3而另一条路径指的是nagios

此外,/usr/share/nagios3/htdocs/images/logos包含指向 中的子目录的符号链接列表/usr/share/nagios3/htdocs/images/logos。但是,symbols符号链接实际上丢失了,这就是地图无法使用该目录中的文件的原因。

创建如下所示的符号链接可以解决问题:

/usr/share/nagios3/htdocs/images/logos# ls -l symbols
lrwxrwxrwx 1 root root 47 Dec  3 04:31 symbols -> 
  ../../../../nagios/htdocs/images/logos/symbols/

相关内容