直到昨天,我使用check_disk
它检查某些分区的可用空间时,一直都没有问题。现在我们刚刚从我们的主机中添加了 NAS 服务,我可以毫无问题地安装它,而且,由于我们的空间量是固定的,我想用 Nagios 检查可用空间,以免超额收费。
问题是,有时当我check_disk
去检查时,我会得到“未知”状态,因为当然自动文件系统不要始终保持分区处于安装状态。(Nagios 用户)check_disk 和 autofs建议为插件制作一个包装器,但我对此感到不舒服。
有更好的解决方案吗?
编辑:
好吧,我找到了一个解决方案:
- 我已经编译并安装了检查文件插入。
- 在 NAS 根目录上创建了一个文件:
.nagioscheck
。 - 配置 Nagios 经常检查该文件是否存在,而不是检查空间。
所以我可以检查 NAS 是否已安装以及是否还有可用空间。
服务状态:OK 文件或目录 /mnt/backup/.nagioscheck 存在
答案1
为什么不在 fstab 中创建静态条目,而是使用自动挂载以便始终挂载它?
在 GNU df 手册中:
此版本的 df 无法显示未挂载文件系统上的可用空间,因为在大多数类型的系统上,这样做需要对文件系统结构有非常不便携的深入了解。
因此,我猜想如果 GNU df 不显示未安装分区的可用空间,Nagios 插件可能也不会显示。但我可能错了 :-)
也许如果您正在使用 ext2/3 ,通过从 tune2f 中解析出空闲块、块数和块大小,您可能能够快速编写一个插件来实现这一点:
sudo tune2fs -l /dev/sdb1
答案2
有没有办法让nagios服务器直接查询NAS? 那将是最直接的做法。