Я пытался установить MRTG на Ubuntu (VMware Workstation) путем следования инструкциям на этом веб-сайте: https://help.ubuntu.com/community/MRTG.
Однако каждый раз, когда я достигаю этой точки конфигурации:
cfgmaker snmp_community_string@ip_address_of_device_to_be_monitored > /etc/mrtg.cfg
который в моем случае является:
cfgmaker public@192.168.1.126 > /etc/mrtg.cfg
Я продолжаю получать этот ответ:
bash: /etc/mrtg.cfg: Permission denied.
Я попытался выполнить эту команду с sudo
и sudo bash
, но ничто, кажется, не решает проблему.
Мне удалось выполнить snmpwalk
на устройстве я хочу контролировать (который является пи малины с вышеупомянутым IP-адресом), и посмотрите MIB RPI.
Моя цель состоит в том, чтобы получить график температуры ЦП RPI, но я действительно застреваю в этой точке и не могу продвинуться.
У кого-либо есть какая-либо подсказка о том, как продолжить двигаться?
Есть несколько способов достигнуть просто что:
Прилагают всю команду, используя единственные кавычки как это:
sudo bash -c 'cfgmaker public@192.168.1.126 > /etc/mrtg.cfg'
Создают сценарий в ~/bin
#!/bin/bash
cfgmaker public@192.168.1.126 > /etc/mrtg.cfg
и выполняют это с sudo
:
sudo MyScript.sh
Пробег sudo --shell
и выполните:
cfgmaker public@192.168.1.126 > /etc/mrtg.cfg
Ошибка означает, что у Вас нет достаточного разрешения открыть файл /etc/mrtg.cfg
для написания.
В дополнение к хороший ответ, предоставленный Fabby, чтобы управлять командой на неинтерактивной сессии, находящейся в собственности корня bash
, Вы можете также использовать tee
:
echo 'cfgmaker public@192.168.1.126' | sudo tee /etc/mrtg.cfg
, Если Вы хотите приложить (может быть время затем), используйте -a
выбор tee
:
echo 'cfgmaker public@192.168.1.126' | sudo tee -a /etc/mrtg.cfg
Один протест состоит в том, что последовательность покажут на терминале (STDOUT), Вы можете отключить это:
echo 'cfgmaker public@192.168.1.126' | sudo tee /etc/mrtg.cfg >/dev/null
<час> Вы можете также сделать то же самое, использующее Здесь Последовательности (<<<
) вместо трубопровода:
sudo tee /etc/mrtg.cfg <<<'cfgmaker public@192.168.1.126'
sudo tee -a /etc/mrtg.cfg <<<'cfgmaker public@192.168.1.126'
sudo tee /etc/mrtg.cfg <<<'cfgmaker public@192.168.1.126' >/dev/null
В качестве альтернативы можно использовать:
sudo su
cfgmaker public@192.168.1.126 > /etc/mrtg.cfg