Ubuntu 上安装 MRTG 并监控 RPI

Ubuntu 上安装 MRTG 并监控 RPI

我一直尝试按照本网站上的说明在 Ubuntu(VMware Workstation)上安装 MRTG:https://help.ubuntu.com/community/MRTG

但是,每当我到达这个配置点时:

cfgmaker snmp_community_string@ip_address_of_device_to_be_monitored > /etc/mrtg.cfg

就我的情况来说:

 cfgmaker [email protected] > /etc/mrtg.cfg

我不断收到这样的回复:

bash: /etc/mrtg.cfg: Permission denied.

我尝试使用sudo和运行该命令sudo bash,但似乎没有任何方法可以解决问题。

snmpwalk我设法在我想要监控的设备(具有上述 IP 地址的树莓派)上执行并查看 RPI 的 MIB。

我的目标是获取 RPI 的 CPU 温度图表,但我现在真的陷入困境,无法继续前进。

有人知道如何进行吗?

答案1

有几种方法可以实现这一点:

  1. 使用单引号将整个命令括起来,如下所示:

    sudo bash -c 'cfgmaker [email protected] > /etc/mrtg.cfg'
    
  2. 在中创建脚本~/bin

    #!/bin/bash
    cfgmaker [email protected] > /etc/mrtg.cfg
    

    并执行sudo

    sudo MyScript.sh
    
  3. 运行sudo --shell并执行:

    cfgmaker [email protected] > /etc/mrtg.cfg
    

答案2

该错误意味着您没有足够的权限打开文件/etc/mrtg.cfg进行写入。

除了Fabby 给出了很好的答案要在的非交互式 root 拥有的会话中运行该命令bash,您还可以使用tee

echo 'cfgmaker [email protected]' | sudo tee /etc/mrtg.cfg

如果您想要附加(可能是下一次),请使用-a以下选项tee

echo 'cfgmaker [email protected]' | sudo tee -a /etc/mrtg.cfg

需要注意的是,该字符串将显示在终端(STDOUT)上,您可以通过以下方式禁用此功能:

echo 'cfgmaker [email protected]' | sudo tee /etc/mrtg.cfg >/dev/null

<<<您还可以使用 Here Strings( ) 而不是管道来做同样的事情:

sudo tee /etc/mrtg.cfg <<<'cfgmaker [email protected]'
sudo tee -a /etc/mrtg.cfg <<<'cfgmaker [email protected]'
sudo tee /etc/mrtg.cfg <<<'cfgmaker [email protected]' >/dev/null

答案3

或者你可以使用:

sudo su
cfgmaker [email protected] > /etc/mrtg.cfg

答案4

我在 sudo 下运行时遇到了同样的问题,所以我改用 su,命令运行没有错误。如果您不知道您的 root 密码,那么您必须先更改 root 密码,然后才能以 root 身份运行此命令。

相关内容