Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
variant_13.doc
Скачиваний:
4
Добавлен:
19.12.2018
Размер:
147.97 Кб
Скачать

Операционные системы Вариант 13 Лабораторная работа № 1

Пример файла аудита

Файл аудита – файл, содержащий записи о действиях пользователей в системе, каждая запись которого удовлетворяет следующему образцу:

<метка_времени>{табуляция}

<имя_пользователя>{табуляция}

<тип_записи>[{табуляция}<имя_файла>]

{конец_строки}

Метка времени содержит дату и время регистрации действия.

Тип записи может принимать следующие значения:

  • login – вход пользователя в систему.

  • logout – выход пользователя из системы.

  • open – открытие файла.

  • read – чтение содержимого файла.

  • write – изменение содержимого файла.

  • exec – исполнение файла.

Поле имени файла определено только для записей типа open, read, write, exec.

Журнал может содержать следующую последовательность записей:

10.10.2002\t17:00:00:000\tuser\tlogin\n

10.10.2002\t17:00:03:750\tuser\tread\t/home/user/file1\n

10.10.2002\t17:00:10:950\tuser\tlogout\n

  1. Ответить на поставленные контрольные вопросы:

  • каким образом можно ввести новую или удалить существующую переменную среды окружения для текущего сеанса shell?

  • в каких ситуациях удобно использовать редактор SED?

  • используя справочник man, узнайте, возможно, ли применять команду chmod, для рекурсивной смены прав доступа к файлам/подкаталогам внутри каталога?

  1. Написать скрипт на языке shell, выполняющий поиск и уничтожение файлов с определенным именем (имя файла и каталоги поиска должны являться параметрами скрипта). Например: искать и удалять файлы с именем “ftpd???.log” из каталога временных файлов (“/usr/tmp”).

  2. Написать скрипт на языке shell, выполняющий периодический поиск и уничтожение файлов, с определенным содержанием (содержание файла, каталог поиска и период поиска должны являться параметрами скрипта). Например: каждые 30 мин. искать и удалять из каталога временных файлов (“/usr/tmp”) все файлы, содержащие строку "ftpd: session closed ok".

  3. Разработать shell скрипт, использующий sed для анализа готового файла журнала аудита (формат файла приведен в примере).

Скрипт должен выполнять следующие действия:

  • сгруппировывать события по дням;

  • выводить статистику событий в журнале, а именно:

  • количество событий от разных пользователей

  • количество событий в зависимости от типа события

  • количество событий по дням;

  • удалять строки содержащие, определенное имя пользователя, которое задается переменной в скрипте.

  1. Используя редактор SED и скриптовый язык SHELL, разработать программу, которая выводит на экран содержимое текущего каталога в порядке возрастания размеров файлов. При этом имена каталогов должны выводиться первыми.

Лабораторная работа № 2

Пример файла аудита

Файл аудита – файл, содержащий записи о действиях пользователей в системе, каждая запись которого удовлетворяет следующему образцу:

<метка_времени>{табуляция}

<имя_пользователя>{табуляция}

<тип_записи>[{табуляция}<имя_файла>]

{конец_строки}

Метка времени содержит дату и время регистрации действия.

Тип записи может принимать следующие значения:

  • login – вход пользователя в систему.

  • logout – выход пользователя из системы.

  • open – открытие файла.

  • read – чтение содержимого файла.

  • write – изменение содержимого файла.

  • exec – исполнение файла.

Поле имени файла определено только для записей типа open, read, write, exec.

Журнал может содержать следующую последовательность записей:

10.10.2002\t17:00:00:000\tuser\tlogin\n

10.10.2002\t17:00:03:750\tuser\tread\t/home/user/file1\n

10.10.2002\t17:00:10:950\tuser\tlogout\n