Man pages на русском

         

RUNACCT(1M)


НАЗВАНИЕ

runacct - ежедневная обработка статистики

СИНТАКСИС

/usr/lib/acct/runacct [ммдд [фаза]]

ОПИСАНИЕ

Утилита runacct является основной shell-процедурой ежедневной обработки статистики. Обычно она планируется для регулярного запуска cron'ом [см. ]. Процедура runacct подытоживает накопленную за день информации о сеансах, о процессах, об оплате и об использовании дискового пространства. Готовится также сводка об использовании команд. Наконец, отчет форматируется с помощью процедуры prdaily [см. ] и помещается в каталог сводной статистической информации /usr/adm/ acct/sum.

День, за который подводятся итоги, задается аргументом ммдд, где мм - номер месяца (01 - 12), а дд - номер дня в месяце (01 - 31).

Смысл аргумента фаза состоит в следующем. Выполнение процедуры runacct подразделяется на несколько независимых фаз и может начинаться с любой из них. Прежде чем приступить к некоторой фазе, runacct записывает ее имя в файл statefile. Эту информацию можно использовать при повторном подведении итогов за определенный день, если успешному завершению первой попытки помешали ошибки: по умолчанию, когда задан только день, выполнение процедуры runacct начинается с фазы, имя которой сохранено в файле statefile. Если фаза задана явно, содержимое файла statefile игнорируется.

При отсутствии аргументов процедура runacct выполняет полное подведение итогов за текущий день.

Фазы выполняются в таком порядке:

SETUP

Перемещение текущей учетной информации в рабочие файлы.

WTMPFIX

Проверка целостности файла /etc/wtmp, при необходимости корректировка сведений о дате/времени.

CONNECT1

Получение записей о сеансах работы пользователей в системе.

CONNECT2

Преобразование записей о сеансах в сводный формат tacct [см. ].

PROCESS

Преобразование статистической информации о процессах в сводный формат tacct.

MERGE

Слияние записей о сеансах работы пользователей и о выполнении процессов.

FEES

Преобразование результатов процедуры chargefee [см. ] в сводный формат и слияние с данными, полученными в предыдущей фазе.

DISK




Слияние информации об использовании диска с данными, полученными в предыдущей фазе.

MERGETACCT

Слияние текущей информации из файла daytacct с данными из файла-отчета /usr/adm/acct/sum/tacct.

CMS

Получение сводки по использованию команд.

USEREXIT

Выполнение действий, специфичных для конкретной конфигурации.

CLEANUP

Форматирование итогового отчета, удаление временных файлов и выход.

В процедуре runacct предусмотрена защита файлов со статистической информацией от повреждений в случае обнаружения ошибок. Процедура фиксирует ход собственной работы в файле-журнале active (расположенном, как и другие рабочие файлы, в каталоге /usr/lib/acct/nite). При обнаружении какой-либо ошибки на устройство /dev/console выводится диагностическое сообщение, пользователям root и adm посылаются почтовые уведомления [см. ], а выполнение процедуры прекращается. Для защиты от одновременного запуска нескольких экземпляров процедуры runacct используются файлы-замки lock и lock1. Файл-замок lastdate предохраняет от двукратного подведения итогов за один и тот же день.

Прежде чем перезапустить runacct после неудачи, следует прежде всего выяснить характер ошибки (по диагностической записи в файле active), а затем ликвидировать некорректности в исходных файлах (таких как pacct и /etc/wtmp). Наконец, необходимо удалить файлы-замки lock, lock1 и lastdate.

ПРИМЕРЫ

Запуск runacct:

nohup runacct 2>/usr/adm/acct/nite/fd2log &

Перезапуск runacct:

nohup runacct 0602 2>>/usr/adm/acct/nite/fd2log &

Перезапуск runacct с определенной фазы:

nohup runacct 0602 CMS 2>>/usr/adm/acct/nite/fd2log &

ФАЙЛЫ

/etc/wtmp /usr/adm/pacct* /usr/adm/acct/nite/active /usr/adm/acct/nite/daytacct /usr/adm/acct/nite/lock /usr/adm/acct/nite/lock1 /usr/adm/acct/nite/lastdate /usr/adm/acct/nite/statefile /usr/adm/acct/nite/ptacct*.ммдд

СМ. ТАКЖЕ

, , , , , , , .

в Справочнике пользователя.

, , в Справочнике программиста.

ДИАГНОСТИКА

Диагностические сообщения помещаются в различные файлы, выводятся на устройство /dev/console и посылаются по почте пользователям root и adm.

СЮРПРИЗЫ

Обычно нецелесообразно перезапускать runacct с фазы SETUP. Следует вручную выполнить начальные действия, а затем произвести перезапуск командой

runacct ммдд WTMPFIX

В случае неудачного выполнения фазы PROCESS, необходимо удалить последний из файлов ptacct*, так как он неполон









Содержание раздела