IPA(8) IPA(8) НАИМЕНОВАНИЕ ipa -- утилита учёта статистики СИНТАКСИС ipa -h|v ipa [-c dir] [-u user] [-g group] [-p pid_file] -k signal ipa [-c dir] [-u user] [-g group] [-f conf_file] -t [-t] ipa [-d] [-c dir] [-u user] [-g group] [-f conf_file] [-p pid_file] [-o log_file] [-i log_ident] ipa -x [-c dir] [-u user] [-g group] [-f conf_file] [-r rule [-l limit [-s sublimit]|-t threshold]] section [subsection] ОПИСАНИЕ IPA это ``Pluggable accounting system''. Пакет IPA состоит из трёх утилит общего назначения для учёта и ведения статистики: ipa, ipactl и ipastat. Каждая из этих утилит описана в собственной странице докумен- тации. ipa это утилита учёта статистики. Страница документации ipa.conf(5) содержит полное описание конфигурирования ipa и описывает все возможно- сти этой утилиты. ipa периодически собирает статистику с IPA модулей систем учёта и пере- даёт эту статистику IPA модулям баз данных в соответствии с установками в конфигурационном файле ipa.conf(5). Возможно одновременно использо- вать несколько систем учёта и баз данных. Доступные опции: -c dir Определяет директорию, для которой ipa сразу же выполнит функцию chroot(2), директория должна быть задана с абсолютным путевым именем. Рабочая директория не изменяется. -d Не переходить в фоновый режим. Если используется лог-файл, то все сообщения также выводятся в стандартный вывод ошибок (stderr). Если используется syslog, то сообщения копируются в stderr только на некоторых системах. Эта опция полезна для отладки. -f conf_file Использовать данный конфигурационный файл вместо конфигурацион- ного файла, заданного по умолчанию. Конфигурационный файл дол- жен быть задан с абсолютным путевым именем. -i log_ident Использовать данный идентификатор лог-сообщений (по умолчанию идентификатор лог-сообщений -- ``ipa''). -k signal Послать сигнал запущенной копии ipa. Доступны следующие аргу- менты: shutdown (послать сигнал SIGTERM), reconfigure (послать сигнал SIGHUP), kill (послать сигнал SIGKILL), test (проверить заблокирован ли PID-файл, сигнал не посылается). PID запущенной копии берётся как PID процесса имеющего эксклюзивную блокировку на PID-файл. Сигнал не будет посылаться в том случае, если PID- файл не заблокирован эксклюзивно. -o log_file Записывать лог-сообщения в заданный лог-файл, вместо использова- ния syslog. Этот файл может быть удалён во время работы ipa, при необходимости он будет создан заново. Это свойство помогает организовать ротацию лог-файлов. -p pid_file Использовать данный PID-файл, вместо PID-файла, заданного по умолчанию. Эта опция позволяет запускать несколько копий ipa одновременно. -t Проверить конфигурационный файл, вывести его содержимое и завер- шить работу. Эта опция позволяет проверить, понимает ли ipa и IPA модули ваш конфигурационный файл или нет. Два ключа -tt включают так называемый ``режим подражания реальной конфигура- ции'', в этом режиме ipa установит все значение по умолчанию и применит установки из секций rulepat для секций rule. -u user Изменить UID запущенной копии ipa на указанного пользователя. Указанное значение может быть именем пользователя или UID. Если опция -g не указана, то GID будет равен группе указанного поль- зователя, также будут установлены все дополнительные группы пользователя. -g group Изменить GID запущенной копии ipa на указанною группу. Указан- ное значение может быть именем группы или GID. Эта опция также заменяет все дополнительные группы пользователя. -x Запустить команды из данной секции (подсекции) и завершить работу. Нельзя запустить какую-либо команду из autorule и rulepat секций. См. страницу документации ipa.conf(5) для полу- чения информации об именах секций и подсекций, правилах, лими- тах, подлимитах и порогах. -h Вывести информацию о доступных опциях и завершить работу. -v Вывести номер версии, некоторые установки, что поддерживается из ipa.conf(5) и завершить работу. Во время старта ipa эксклюзивно блокирует свой PID-файл, чтобы избежать запуска нескольких своих копий и сохраняет свой PID в этом файле. Этот сохранённый PID никаким образом не используется в ipa. ipa завершает свою работу, если получит сигнал SIGTERM. Это единствен- ный правильный метод завершения работы ipa. Если в командной строке указан ключ -d, то сигнал SIGINT обрабатывается также, как и сигнал SIGTERM (сигнал SIGINT обычно посылается программе запущенной в интер- активном режиме, если набрать последовательность Control-C на клавиа- туре). ipa перечитает конфигурационный файл (заданный по умолчанию или опре- делённый в командной строке, когда запускалась ipa), если получит сиг- нал SIGHUP. Если ipa будет не сможет обработать конфигурационный файла, то она завершит свою работу. Прочтите страницу документации ipa.conf(5) для большей информации о том, в каких случаях лучше перечи- тать конфигурацию, чем останавливать и потом снова запускать ipa. Не посылайте сигнал SIGKILL запущенной копии ipa, используйте этот сиг- нал только в том случае, если ipa не работает должным образом и не реа- гирует на сигнал SIGTERM (или сигнал SIGINT, если ipa запущена в интер- активном режиме). Это замечание присутствует здесь лишь потому, что опция -k воспринимает аргумент kill. Заметьте, что ipa ловит выше перечисленные сигналы, только если в дан- ный момент времени не выполняется какая-либо функция из используемых IPA модулей и не запускаются команды в синхронном режиме. Обработка других сигналов не определена. Когда ipa запускается в фоновом режиме, то она перенаправляет стандарт- ный ввод (stdin) в /dev/null (см. реальный путь в выводе команды ``ipa -v''), вывод в стандартный вывод (stdout) и стандартный вывод ошибок (stderr) перенаправляется во внутренние pipe(2) и асинхронно посылается в лог с префиксами *STDOUT и *STDERR соответственно. Оба конца каждого pipe(2) устанавливаются в неблокирующий режим. Так как любой pipe(2) имеет ограниченный размер своих буферов, то некоторая информация посланная в stdout или stderr может быть потеряна. В любом случае это лучше, чем просто игнорировать вывод в stdout и stderr. Когда ipa запускается в интерактивном режиме, то stdin и stderr рабо- тают как обычно (stderr используется для вывода лог сообщений). ipa сама не посылает никаких сообщений в stdout и stderr (когда запу- щена в фоновом режиме), но библиотечные функции или запускаемые команды могут посылать сообщения в stdout и stderr. ДИАГНОСТИКА ipa завершает свою работу с кодом возврата 0 в случае успешного завер- шения работы, и с кодом возврата отличным от нуля, если произошла какая-то ошибка. По умолчанию ipa запускается в фоновом режиме и не следует полагаться на возвращаемый код (это всего лишь код возврата исходного процесса), лучше посмотреть содержимое лог-файла. Если необ- ходимо контролировать код возврата, то запускайте ipa в интерактивном режиме (используйте ключ -d). ФАЙЛЫ ipa.pid ipa.conf (запустите ipa с ключём -h, чтобы увидеть путевые имена файлов, исполь- зуемых по умолчанию) ДРУГИЕ ИСТОЧНИКИ ipactl(8), ipastat(8), ipa.conf(5), ipastat.conf(5), ipa_mod(3) АВТОР Andrey Simonenko <simon@comsys.ntu-kpi.kiev.ua> НЕДОРАБОТКИ Если вы обнаружите какие-либо ошибки, то, пожалуйста, сообщите мне по email. 16 апреля 2005 г. IPA(8)