
Министерство науки и высшего образования Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОННИКИ (ТУСУР)
Кафедра комплексной информационной безопасности электронно-
вычислительных систем (КИБЭВС)
АДМИНИСТРИРОВАНИЕ ASTRA LINUX. ПРОЦЕССЫ В LINUX
Отчет по лабораторной работе №2
по дисциплине «Безопасность операционных систем»
Студент гр. 712-2
___________ Л.С. Болтушкин
__________
Руководитель Преподаватель кафедры КИБЭВС
_______ __________ С.А. Пашкевич
__________
Томск 2024
Введение
Целью данной лабораторной работы является изучение процессов в
Linux, общих понятий о программах, процессах и потоках выполнения,
жизненного цикла процесса, мониторинга процессов, сигналов, управления приоритетом процесса и заданиями.
2

1 ХОД РАБОТЫ
1.1 Жизненный цикл процесса
Самый простой способ посмотреть список процессов, запущенных в текущей командной оболочке, это использовать команду ps (рисунок 1.1).
Рисунок 1.1 – Список процессов командой ps
Чтобы просмотреть все процессы, необходимо приписать опцию -е, а
для максимально подробной информации опцию -F (рисунок 1.2).
Рисунок 1.2 – Подробный список процессов
Чтобы просмотреть список процессов в виде дерева, и понимать какой процесс имеет какие дочерние процессы, необходимо выполнить команду ps - efH (рисунок 1.3).
3

Рисунок 1.3 – Список процессов в виде дерева
Для просмотра списка процессов с потоками нужно использовать опцию
-L (рисунок 1.4).
Рисунок 1.4 – Список процессов с потомками
Просмотр списка процессов определенного пользователя представлен на рисунке 1.5.
4

Рисунок 1.5 – Список процессов определенного пользователя
1.2 Утилита мониторинга процессов top
Чтобы вывести список процессов Linux необходимо выполнить команду top (рисунок 1.6).
Рисунок 1.6 – Команда top
Для того, чтобы сделать вывод программы цветным, необходимо нажать
Z (рисунок 1.7).
5

Рисунок 1.7 – Цветной вывод программы
Чтобы вывести дерево процессов Linux следует нажать сочетание клавиш Shift+V (рисунок 1.8).
Рисунок 1.8 – Дерево процессов
Для отображения потоков используется сочетание клавиш Shift+H (рисунок 1.9).
6

Рисунок 1.9 – Отображение потоков
Если недостаточно стандартных полей с информацией о процессах, то возможно нажать Shift+F и выбрать дополнительные поля, которые следует отображать (рисунок 1.10).
Рисунок 1.10 – Добавление полей
7

1.3 Сигналы
На рисунке 1.11 представлено выполнение команды kill -l.
Рисунок 1.11 – Список сигналов
Если требуется завершить процесс, то рекомендуется следующая очередность передачи сигналов процессу: 15 (SIGTERM), 2 (SIGINT), 3 (SIGQUIT), 9 (SIGKILL), данные шаги представлены на рисунке 1.12.
Рисунок 1.12 – Завершение процессов
Встроенная в bash команда trap позволяет создавать обработчики сигналов для командного интерпретатора bash: trap команда сигнал (рисунок
1.13).
Рисунок 1.13 – Приостановка и возобновление процесса
8

1.4Управление заданиями
Врисунке 1.14 была рассмотрена команда yes.
Рисунок 1.14 – Команда yes
Чтобы на экран не выводилась эта бесконечная последовательность есть возможность перенаправить стандартный вывод команды yes на /dev/null (рисунок 1.15).
Рисунок 1.15 – Команда /dev/null
На рисунке 1.16 приведен перевод процесса в фоновый режим.
Рисунок 1.16 – Перевод процесса в фоновый режим
Для того, чтобы узнать статус процесса, нужно исполнить команду jobs,
которая является внутренней командой оболочки (рисунок 1.17)
Рисунок 1.17 – Статус процесса
9

Когда к заданию обращаются по его номеру, тогда перед этим номером в командной строке нужно поставить символ процента (рисунок 1.18).
Рисунок 1.18 – Проверка результата
1.5 Управление приоритетом процесса
Чтобы посмотреть все активные на данный момент процессы в Linux,
используется сочетание опций aux (рисунок 1.19).
Рисунок 1.19 – Активные процессы
Также можно отсортировать список процессов (рисунок 1.20).
10