#!/usr/bin/env bash set -euo pipefail # Deploy the LibreNMS check_mk agent on a monitored host. # Ported from KNELServerBuild ProjectCode/Modules/OAM/oam-librenms.sh [#474]. # Upstream agent scripts live in ./agent/ (kept verbatim, do not edit). # snmpd sudo rules for the extends live in ./snmp-sudo.conf (install via # sudoers policy separately — see AGENTS.md security-change rules). SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" AGENTS_PATH="$SCRIPT_DIR/agent" echo "Setting up librenms agent..." cat "$AGENTS_PATH/distro" > /usr/local/bin/distro chmod +x /usr/local/bin/distro mkdir -p /usr/lib/check_mk_agent/plugins mkdir -p /usr/lib/check_mk_agent/local cat "$AGENTS_PATH/check_mk_agent" > /usr/bin/check_mk_agent chmod +x /usr/bin/check_mk_agent cat "$AGENTS_PATH/check_mk@.service" > /etc/systemd/system/check_mk@.service cat "$AGENTS_PATH/check_mk.socket" > /etc/systemd/system/check_mk.socket systemctl enable check_mk.socket systemctl start check_mk.socket #Modules commented out below, we will roll out on systems that use them, most of the fleet doesn't use those modules cat "$AGENTS_PATH/dmi.sh" > /usr/lib/check_mk_agent/local/dmi.sh cat "$AGENTS_PATH/dpkg.sh" > /usr/lib/check_mk_agent/local/dpkg.sh #cat "$AGENTS_PATH/mysql.sh" > /usr/lib/check_mk_agent/local/mysql.sh cat "$AGENTS_PATH/ntp-client" > /usr/lib/check_mk_agent/local/ntp-client #cat "$AGENTS_PATH/ntp-server.sh" > /usr/lib/check_mk_agent/local/ntp-server.sh cat "$AGENTS_PATH/os-updates.sh" > /usr/lib/check_mk_agent/local/os-updates.sh cat "$AGENTS_PATH/postfixdetailed" > /usr/lib/check_mk_agent/local/postfixdetailed cat "$AGENTS_PATH/postfix-queues" > /usr/lib/check_mk_agent/local/postfix-queues #cat "$AGENTS_PATH/smart.sh" > /usr/lib/check_mk_agent/local/smart #cat "$AGENTS_PATH/smart.sh.config" > /usr/lib/check_mk_agent/local/smart.config chmod +x /usr/lib/check_mk_agent/local/*