Control++: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 13: Строка 13:
Все файлы настроек могут быть отредактированы вручную системным администратором при настройке нужных конфигураций.
Все файлы настроек могут быть отредактированы вручную системным администратором при настройке нужных конфигураций.


При запуске программы от имени <i>su</i> для переключения режима, например <code>control++ set some_mode</code>, которому соответствует вариант ограничений ulims_x, вариант прав perm_y и сценарий sh_z, программа попытается скопировать файл <code>/etc/control++/ulimits/ulims_x</code> в каталог <code>/etc/security/limits.d/</code>, попытается применить права на файлы в соответствии с описанием в <code>/etc/control++/permissions/perm_y</code> и запустить сценарий <code>/etc/control++/permissions/sh_z</code>. В случае невозможности осуществления какой-либо из операций будет выведено сообщение об ошибке. Если какой-то из параметров не указан (например название сценария оболочки) то соответствующая операция не будет выполняться.
При запуске программы от имени <i>su</i> для переключения режима, например <code>control++ set some_mode</code>, которому соответствует вариант ограничений <i>ulims_x</i>, вариант прав <i>perm_y</i> и сценарий <i>sh_z</i>, программа попытается скопировать файл <code>/etc/control++/ulimits/ulims_x</code> в каталог <code>/etc/security/limits.d/</code>, попытается применить права на файлы в соответствии с описанием в <code>/etc/control++/permissions/perm_y</code> и запустить сценарий <code>/etc/control++/permissions/sh_z</code>. В случае невозможности осуществления какой-либо из операций будет выведено сообщение об ошибке. Если какой-то из параметров не указан (например, название сценария оболочки) то соответствующая операция не будет выполняться.


== Использование ==
== Использование ==

Версия от 16:57, 26 января 2018

Control++ - консольная программа для настройки GNU+Linux системы, позволяющая переключать режимы, каждый из которых определяется своим файлом ulimits, а также своим набором описаний прав на файлы системы и запускаемым сценарием оболочки. Написана на C++. Распространяется по лицензии GPLv3.0.

Принцип работы

Параметры control++ определяются файлом ini-формата /etc/control++/control++.conf. Данный ini-файл состоит из секции main и секций описания каждого из режимов. Секция main включает определение текущего режима (current_mode), списка доступных режимов (modes), списка вариантов ограничений (ulimits) и списка вариантов наборов прав на файлы (permissions). Каждая из секций режимов может состоять из определения варианта ограничений (ulimits), варианта набора прав (permissions) и запускаемого сценария оболочки для данного режима (scripts).

Файлы ulimits для каждого варианта ограничений находятся в /etc/control++/ulimits/название_варианта.

Файлы с описанием набора прав являются файлами ini-формата и находятся в /etc/control++/permissions/название_варианта.

Файлы сценариев оболочки находятся в /etc/control++/scripts/название_варианта.

Все файлы настроек могут быть отредактированы вручную системным администратором при настройке нужных конфигураций.

При запуске программы от имени su для переключения режима, например control++ set some_mode, которому соответствует вариант ограничений ulims_x, вариант прав perm_y и сценарий sh_z, программа попытается скопировать файл /etc/control++/ulimits/ulims_x в каталог /etc/security/limits.d/, попытается применить права на файлы в соответствии с описанием в /etc/control++/permissions/perm_y и запустить сценарий /etc/control++/permissions/sh_z. В случае невозможности осуществления какой-либо из операций будет выведено сообщение об ошибке. Если какой-то из параметров не указан (например, название сценария оболочки) то соответствующая операция не будет выполняться.

Использование

Переключение\установка режима: control++ <название_режима>

Установка режима по-умолчанию: control++ reset

Отображение списка доступных режимов: control++ list

Отображение текущего режима: control++ status

Отображение содержимого главного файла настройки: control++ conf

Отображение справочной информации: control++ help

Ссылки

Проект на git.altlinux.org