Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

  1. Создать сценарий iostat-agent-plugin-install.sh.
    Раскрыть
    titleСодержимое файла iostat-agent-plugin-install.sh...
    Блок кода
    languagebash
    #!/bin/bash
    ZABBIX_CONF="/etc/zabbix/zabbix_agentd.conf"
    #Проверка, выполняется ли скрипт с правами sudo
    if [ "$(id -u)" -ne 0 ]; then
        echo -e "Этот скрипт должен быть запущен с правами sudo.\nЗапустите меня так: sudo ./iostat-agent-plugin-install.sh\nВыхожу."
        exit 1
    fi
    # Обновление репозиториев
    apt update >/dev/null 2>&1 || echo "Кажется что то с репозиториями, проверьте их!" && exit 1
    # Установка пакетов
    apt install sysstat zabbix-agent -y >/dev/null 2>&1 || echo "Похоже что-то не так с установкой, поставьте вручную: sudo apt install zabbix-agent sysstat -y" && exit 1
    # Копирование скрипта
    echo "Кладу скрипт агента в /etc/zabbix/scripts/iostat.sh"
    mkdir /etc/zabbix/scripts/
    mv ./iostat.sh /etc/zabbix/scripts/iostat.sh
    # Установка прав на скрипт
    echo "Поправлю права на скрипт, должно быть '-rwxr-x---(750) root zabbix'"
    chmod 750 /etc/zabbix/scripts/iostat.sh
    chown root:zabbix /etc/zabbix/scripts/iostat.sh
    chmod +x /etc/zabbix/scripts/iostat.sh
    # Проверка прав
    ls -ld /etc/zabbix/scripts/iostat.sh
    echo "UserParameter=iostat[*],/etc/zabbix/scripts/iostat.sh "none" "$1" "$2"" | tee /etc/zabbix/zabbix_agentd.conf
    # Проверяем наличие строки UnsafeUserParameters и её значение
    if grep -Eq '^#?\s*UnsafeUserParameters\s*=\s*(0|[^1])' "$ZABBIX_CONF"; then
        # Если строка закомментирована или значение не 1, то приводим её к UnsafeUserParameters=1
        echo "Настрою параметр UnsafeUserParameters на 1 в $ZABBIX_CONF"
        # Используем sed для замены или добавления строки
        sed -i 's/^#*\s*UnsafeUserParameters\s*=.*/UnsafeUserParameters=1/' "$ZABBIX_CONF"
        # Перезапуск Zabbix агент
        systemctl restart zabbix-agent
        echo "Zabbix агент перезапущен с изменениями."
        else
                echo "Параметр UnsafeUserParameters не найден, добавляю в конец файла."
                echo "UnsafeUserParameters=1" | tee -a "$ZABBIX_CONF"
    	    systemctl restart zabbix-agent
    fi
  2. Запустить сценарий:
    Command

    chmod +x iostat-agent-plugin-install.sh

    sudo ./iostat-agent-plugin-install.sh

...