Thursday, January 16, 2014

AIX: logging and error logging


Логирование в AIX'e ведется даймоном syslogd, который читает настройки  из файла /etc/syslog.conf во время активации даймона или при получении сигнала прерывания. 
Запуск и останов даймона осуществляется с помощью SRC(немного про SRC).
#stopsrc -s syslogd
#startsrc -s syslogd

Определения типов в базе лога
# alog -L 
Просмотр лога типа console
#alog -o -t console

 Логирование ошибок начинается с запуска следующего даймона:
#/usr/lib/errdemon 
Для удобства запуска можно сделать алиас.
#alias errdemon=/usr/lib/errdemon
Чтобы просмотреть настройки, выполняем команду: 
#errdemon -l
Настроек немного, из общего можно выделить следующие:
Log File                          /var/adm/ras/errlog
Log Size                         1048576 bytes
Memory Buffer Size      32768 bytes
Duplicate Removal        true
Duplicate Interval          10000 milliseconds
Для того, чтобы остановить логирование ошибок, нужно выполнить команду:
#/usr/lib/errstop

Итак, даймон запущен, логирование включено, посмотрим какие ошибки записаны в лог:
#errpt 
Посмотреть все ошибки
#errpt -a
Посмотреть все ошибки (упрощенный вид) 
#errpt -A
Посмотреть запись лога с идентификатором identifier
#errpt -a -j identifier

Для удаления записей из лога, используется команда
#errclear


Успехов.

Friday, January 10, 2014

AIX: System resource controler


SRC (System Resource Controller ) используется для контроля служб и субситем. Субситема (subsystem) - это любая программа или процесс (или группа программ или процессов), котроллируемая с помощью SRC. Субсервер (subserver) - процесс, контроллирыемый субсистемой. Чтобы было чуток понятней, рассмотрим на примере. Inetd - субсистема, контроллируемая с помощью SRC. xmtopas - субсервер, который стартует посредством запуска inetd.

С помощью SRC можно контролировать:
1. Запуск, останов службы, а также статус ее выполнения.
2. Ведение логов аварийного завершения субсистемы
3. Запуск уведомлений при аварийном завершении программы
4. Поддержка выполнения операций на удаленной системе
5. Обновление конфигурационных файлов субсистемы (без ее остановки).

Для просмотра всех служб (активных и неактивных) используется команда:
# lssrc -a

Группа субсистем - это объединение специфичных субсистем, для более удобного управления ими. Например, группа субсистем TCP/IP, SNA Services, Network Information System (NIS), и Network File Systems (NFS).

SRC в большинстве случаев запускается при старте ОС. Хотя это не обязательно, но строго рекомендовано по одной простой причине: запуская SRC при старте ОС позволяет команде init перезапустить SRC, если она вдруг остановится по какой-либо причине.
Для этого в файле /etc/inittab указывается запуск службы srcmstr. 

Все службы (даймоны), которые будут запускаться при старте, определены в файле /etc/inittab.
В случае, если нужно добавить новую службу в автостарт, добавляем новую строку в /etc/inittab по данному формату.
<ID>:<Run Level>:<Action>:<Command>
Например, domino:2:once:dominostartscript

Run Level: от 0 до 9. 0 и 1 - системные уровни, 2 - по умолчанию, с 3-его по 9-й пользовательские уровни запуска.
Action:
once - означает, что процесс запустится и остановится
wait - означает, что процесс запустится и по выполнению остановится
respawn - означает, что если процесс не был запущен, то произойдет его запуск. Запуск отслеживается кроном.
Для изменения значений в файле /etc/inittab используется команда chitab
#chitab domino:2:wait:dominostartscript

Но вернемся к главной теме.
Команда lssrc используется для просмотра статуса о субсистеме sftpd
#lssrc -s sftpd
В данном случае для просмотра статуса о группе субситем:
#lssrc -g nfs

Для запуска/остановки субсистемы, например sftpd, используются команды:
#startsrc -s sftpd 
#stopsrc -s sftpd 


Успехов. Комментарии приветствуются.

Wednesday, January 8, 2014

AIX Загрузка I (Aix loading I)

Немножко теории.
Когда поступил сигнал о включении питания, ОС определяет, какое устройство используется для загрузки машины по умолчанию. По умолчанию, используется нормальный список загрузки (normal boot list), который содержит один или несколько жестких дисков. При нормальной загрузке выполняются все сценарии: стартуют все процессы, включаются терминалы, подключается строка ввода логина мульти-пользовательского режима, стартуют сетевые службы, загружаются конфигурации других машин. 

Загрузка с жесткого диска. 
В процессе загрузки сервер тестирует "железо", загружает и запускает операционную систему, конфигурирует устройства. Для того, чтобы ОС загрузилась нужно выполнить 2 условия:
1. "Boot-image" должен быть доступен для загрузки ОС
2. Должен присутствовать доступ к файловым системам root и /usr

В процессе загрузки с жесткого диска "Boot-image" находится на локальном диске, с которого и запускается ОС. В это время происходит конфигурации всех устройств ( а также запуск драйверов). После того как процесс загрузки завершится все файловые системы смотрированы и готовы к эксплуатации.  

Рассмотрим более подробно процесс запуска - он состоит из трех фаз:
1. Read Only Storage (ROS) фаза или по-простому "Инициализация ядра системы".
На этой фазе проверяются есть ли проблемы с "железом", если проблем не обнаружено ROS загружает bootlist. В зависимости от того, что в нем определено происходит загрузка: либо с Cd-rom'а, либо с жесткого диска и т.п. В случае жесткого диска, система считывает image в память и иницилизирует ОС.
Для пересоздания образа, с которого загружается ОС (фаза 1) имеется команда:
#bosboot -a -d /dev/hdiskN

2. Base Device Configuration Phase, фаза иниализации устройств.
Происходит конфигурации с помощью команды cfgmgr.
сfgmgr производит инициализацию устройств, используя класс Config_rules из ODM (object data manager). Данный класс ODM содержит различные методы, которые используются для управления устройствами системы. Отдельно хочу отметить, что файловые системы /, /usr, /var и /tmp монтируются на данном этапе, остальные файловые системы монтируются на 3-ем этапе, с помощью вызова конфигурационного файла /etc/rc.

3. System Boot Phase, фаза инициализации системы.
На этой фазе загрузки происходит инициализация всех логических томов, подключение свопа и загрузка всех служб, определенных в файле /etc/inittab.

Загрузка с дистрибутива.
В момент загрузки сервера нужно (примерно через 30 - 40 секунд) нажать F1 (реже F4 или F5), чтобы попсать в SMS (System Management services). С помощью данной службы выбрать загрузку с CD-Rom'а.


Файл /etc/inittab отображает все процессы, которые загрузились с помощью init'а. А также отображает когда служба загрузилась. Формат простой:
[Identifier] : [runlevel] : [Action] : [Command]
Если /etc/inittab по какой-либо причине сломается, система не сможет загрузится, поэтому лучше всего иметь запасную копию данного файла. IBM не рекомендует редактировать /etc/inittab напрямую, а только с помощью команд: chitab, mkitab, lsitab.

Успехов. Комментарии приветствуются.