Документация ispmanager 6 business

Утилита mgrctl

 

Утилита mgrctl предназначена для выполнения операций с панелью управления и вызова её функций из командной строки. По умолчанию она расположена в /usr/local/mgr5/sbin/mgrctl.

Синтаксис

/usr/local/mgr5/sbin/mgrctl [-m <manager>] [-u | -i [lang=<language>] | -l | [[-o <output format>] [-R | <funcname> [[<param>=<value>] ...]] [[-e ‘<param>=$<ENV_NAME>’] ...]]]

-m — определяет, к какой панели управления относится команда. После ключа укажите сокращённое название панели управления:

  • core — COREmanager;
  • ispmgr — ISPmanager;
  • ispmgrnode — узел кластера ISPmanager Business;
  • billmgr — BILLmanager;
  • vmmgr — VMmanager KVM или Cloud;
  • vemgr — VMmanager OVZ;
  • dcimgr — DCImanager;
  • dcimini — локация DCImanager;
  • ipmgr — IPmanager;
  • dnsmgr — DNSmanager.

-i — краткая информация обо всех возможных функциях панели управления. Если указана функция , то будет отображена краткая информация обо всех параметрах этой функции. Если указан параметр lang, то информация будет отображена на выбранном языке . Доступные значения: ru, en. По умолчанию — ru.

-o — формат вывода информации. Доступные значения: text, xml, devel, json. По умолчанию — text.

-l — приостановить работу панели управления. Панель управления останавливается вызовом функции exit. Блокируется возможность её повторного запуска.

Обратите внимание!
Если приостанавливается работа COREmanager, то приостанавливается работа всех панелей управления на сервере. После возобновления работы COREmanager будет возобновлена работа остальных панелей управления на сервере.

-u — возобновить работу панели управления, приостановленной при помощи ключа -l.

Обратите внимание!
В случае если:
  1. Командой mgrctl -m -l поочерёдно приостановлена работа нескольких панелей управления на сервере, включая COREmanager.
  2. Командой mgrctl -m core -u возобновляется работа COREmanager.
Работа остальных панелей управления не будет возобновлена.

-R — перезапустить панель управления перед выполнением функции.

— имя функции.

= — параметр функции и его значение.

-e ‘=$’  — параметры, передаваемые через переменные окружения

Передача параметров через переменные окружения


Обратите внимание!
Функция доступна в версии COREmanager 5.325 и выше.

Чтобы передать секретные данные в параметрах mrgctl, вы можете использовать переменные окружения. Для этого запустите утилиту с параметром 

 -e ‘<param>=$<ENV_NAME>’
Пояснения
Обратите внимание!
Укажите перед именем переменной знак $ и заэкранируйте аргумент =$.

Пример передачи пароля

  1. Задайте значение пароля в переменной окружения SECRET_PASSWORD: 
    export SECRET_PASSWORD=secret

  2. Создайте в ISPmanager пользователя для FTP: 
    /usr/local/mgr5/sbin/mgrctl -m ispmgr ftp.user.edit name=ftpuser home=/ owner=www-root -e 'passwd=$SECRET_PASSWORD' sok=ok

Примеры использования

Общие примеры

Завершение работы панели управления

/usr/local/mgr5/sbin/mgrctl -m <manager> exit

Список всех доступных функций mgrctl для панели управления

/usr/local/mgr5/sbin/mgrctl -m <manager> -i

Список параметров определённой функции панели управления

/usr/local/mgr5/sbin/mgrctl -m <manager> -i funcname lang=ru

Примеры для ISPmanager

Получить список всех WWW-доменов

/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain  | sed 's/=/ /' | awk '{print $2}'

Список WWW-доменов, принадлежащих определённому пользователю

/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain  su=<user>  | sed 's/=/ /' | awk '{print $2}'
Пояснения

Обновить все домены на внешних серверах имён

for i in $(/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain | awk '{print $1}' | awk -F = '{print $2}'); do /usr/local/mgr5/sbin/mgrctl -m ispmgr domain.fix elid=$i; done

Отключить PHP для всех WWW-доменов

for i in $(/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain | awk '{print $1}' | awk -F = '{print $2}'); do /usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain.edit php=off elid=$i sok=ok; done