новости
статьи
.решения

LILALO - ПО ведения журналов работы в консоли UNIX-систем

LILALO позволяет автоматически фиксировать полный ход работы с терминалом Unix-системы, включая текст команд и результат их выполнения, текущий каталог вызова, время вызова и множество других. Кроме записи работы с терминалом автоматически фиксируются изменения, сделанные с помощью текстового редактора.

Полученные в ходе записи данные могут быть представлены в формате XML, пригодном для дальнейшего анализа хода работы, создания заготовок документации и сценариев командного интерпретатора.

В процессе работы в консоли Unix/Linux-системы, будь то непосредственное выполнение задач администрирования, экспериментирование с целью найти и описать решение какой-то задачи или самообучения, демонстрация приемов работы на живых примерах или что-то другое, часто возникает необходимость зафиксировать происходящий в консоли процесс.

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

Запись обычно выполняется одним из нескольких способов:

- запись вручную на бумаге;
- запись вручную в электронном виде;
- запись путем копирования мышью в текстовый редактор;
- с применением программы script.

Каждый из этих способов имеет собственные недостатки.

Запись вручную на бумаге.

Преимущества:

- может использоваться для записи команд, которые выполняются на другом компьютере или демонстрируются с помощью проектора.

Недостатки:

- долго;
- неудобно;
- может содержать ошибки;
- непригодна к дальнейшей электронной обработке.

Запись вручную в электронном виде обладает теми же достоинствами и недостатками, что и в случае ручной записи, но результат записи поддается дальнейшей электронной обработке.

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

Недостатком является то, что копирование в текстовый редактор требует дополнительных действий и, что особенно важно, при обучении - оно невозможно во время демонстрации команд.

Программа script автоматически выполняет запись всего происходящего на терминале, где она запущена.

Преимущества использования программы script для записи:

- запись производится прозрачно;
- может выполняться во время демонстрации;
- запись не содержит ошибок.

Недостатки:

- необходимость в обработке после завершения записи;
- запись может производиться только для действий, выполняемых непосредственно в командной строке.

Предлагаемое решение, система ведения журналов работы с терминалом Unix-системы LiLaLo (http://xgu.ru/wiki/LiLaLo), свободно от всех перечисленных выше недостатков и обладает рядом преимуществ.

LiLaLo использует для записи программу script. Однако, в отличие от программы script в чистом виде, во время записи фиксируются не только команды и результат их работы, но и множество дополнительной информации о командах. Это позволяет в дальнейшем более полно реконструировать ход работы. Кроме того, информация, которую LiLaLo автоматически записывает при ведении журнала, позволяет выполнять анализ хода работы и автоматически создавать заготовки для сценариев командного интерпретатора.

Автоматическая запись дополнительной информации о командных строках возможна за счет модификации приглашения командного интерпретатора. Хотя визуально это (практически) никак не заметно, приглашение командного интерпретатора модифицируется, и в него, в скрытом виде, добавляется несколько параметров, характеризующих команду, которая набирается в этом приглашении и будет выполнена. В их числе:

- текущий каталог, из которого производится вызов команды;
- время;
- код завершения предыдущей команды и ряд других.

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

Записанные данные хранятся в формате программы script, то есть, фактически, непосредственно в виде набора команд терминалу. Они могут быть обработаны и представлены в структурированной форме, в виде XML-файла. Который в дальнейшем может быть либо преобразован в HTML-файл и визуализирован, либо может просто попасть в хранилище.

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



Игорь Чубин, Учебный центр "Сетевые технологии", Киев, igor@chub.in
обсудить статью
© сетевые решения
.
.