- •Операционные системы Вариант 13 Лабораторная работа № 1
- •Лабораторная работа № 2
- •1. Ответить на поставленные контрольные вопросы:
- •Лабораторная работа № 3
- •1. Ответить на поставленные контрольные вопросы:
- •Лабораторная работа № 4
- •Лабораторная работа № 5
- •Лабораторная работа № 6
- •Лабораторная работа № 7
- •Лабораторная работа № 8
Операционные системы Вариант 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
…
-
Ответить на поставленные контрольные вопросы:
-
каким образом можно ввести новую или удалить существующую переменную среды окружения для текущего сеанса shell?
-
в каких ситуациях удобно использовать редактор SED?
-
используя справочник man, узнайте, возможно, ли применять команду chmod, для рекурсивной смены прав доступа к файлам/подкаталогам внутри каталога?
-
Написать скрипт на языке shell, выполняющий поиск и уничтожение файлов с определенным именем (имя файла и каталоги поиска должны являться параметрами скрипта). Например: искать и удалять файлы с именем “ftpd???.log” из каталога временных файлов (“/usr/tmp”).
-
Написать скрипт на языке shell, выполняющий периодический поиск и уничтожение файлов, с определенным содержанием (содержание файла, каталог поиска и период поиска должны являться параметрами скрипта). Например: каждые 30 мин. искать и удалять из каталога временных файлов (“/usr/tmp”) все файлы, содержащие строку "ftpd: session closed ok".
-
Разработать shell скрипт, использующий sed для анализа готового файла журнала аудита (формат файла приведен в примере).
Скрипт должен выполнять следующие действия:
-
сгруппировывать события по дням;
-
выводить статистику событий в журнале, а именно:
-
количество событий от разных пользователей
-
количество событий в зависимости от типа события
-
количество событий по дням;
-
удалять строки содержащие, определенное имя пользователя, которое задается переменной в скрипте.
-
Используя редактор 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
…