
- •Введение
- •1 Тема 1. Назначение и функции ОС
- •1.1 ОС как базовая часть систем обработки данных (СОД)
- •1.2 Серверные ОС и рабочие станции
- •1.3 Многослойная структура ОС
- •1.4 ОС как базовая часть ПО ЭВМ
- •1.5 Режимы ядра и пользователя
- •1.6 Ядро и модули ОС
- •1.7 Три базовых концепции ОС: файл, пользователь, процесс
- •1.8 Системные вызовы fork(...) и exec*(…)
- •1.9 Дистрибутивы ОС
- •1.10 Лабораторная работа по теме №1
- •1.10.1 Рабочий стол УПК АСУ
- •1.10.2 Работа с личным архивом студента на flashUSB
- •1.10.3 Изучение рабочей среды пользователя upk
- •2 Тема 2. BIOS, UEFI и загрузка ОС
- •2.1 Архитектура х86
- •2.2 BIOS и его функции
- •2.3 Этапы и режимы POST
- •2.4 UEFI и его стандартизация
- •2.5 Блочные и символьные устройства компьютера
- •2.6 Винчестер и загрузочные устройства
- •2.7 Загрузочный сектор MBR, его назначение и архитектура
- •2.8 GRUB как универсальный загрузчик ОС
- •2.9 Меню и функции GRUB
- •2.10 Лабораторная работа по теме №2
- •2.10.1 Установка ПО GRUB на устройство flashUSB
- •2.10.2 Создание аварийного варианта ОС УПК АСУ
- •2.10.3 Практика настройки файла конфигурации grub.cfg
- •3 Тема 3. Языки управления ОС
- •3.1 Языки программирования и командные интерпретаторы
- •3.2 Базовый язык shell (sh)
- •3.3 Среда исполнения программ
- •3.4 Командная строка: опции и аргументы
- •3.5 Переменные shell
- •3.6 Специальные символы и имена файлов
- •3.7 Стандартный ввод/вывод и переадресация
- •3.8 Программные каналы
- •3.9 Сценарии
- •3.10 Фоновый и приоритетный режимы
- •3.11 Отмена заданий
- •3.12 Прерывания
- •3.13 Завершение работы ОС
- •3.14 Лабораторная работа по теме №3
- •3.14.1 Среда исполнения программ
- •3.14.2 Переменные, опции и аргументы командной строки
- •3.14.3 Стандартный ввод/вывод и переадресация
- •3.14.4 Программные каналы и сценарии
- •3.14.5 Работа с процессами и заданиями среды
- •3.14.6 Сценарии ПО GRUB
- •4 Тема 4. Управление файловыми системами ОС
- •4.1 Устройства компьютера
- •4.2 BOOT-сектор и разделы винчестера
- •4.3 Загрузочные сектора разделов
- •4.4 Структура файловой системы FAT32 (VFAT)
- •4.5 Структура файловой системы EXT2FS
- •4.6 Сравнение файловых систем
- •4.7 Стандартизация структуры ФС
- •4.8 Модули и драйверы ОС
- •4.9 Системные вызовы ОС по управлению устройствами и ФС
- •4.10 Три концепции работы с устройствами
- •4.11 Разделы дисков и работа с ними
- •4.12 Монтирование и демонтирование устройств
- •4.13 Файловые системы loopback, squashfs, overlayfs и fuse
- •4.14 Дисковые квоты
- •4.15 Лабораторная работа по теме №4
- •4.15.1 Типы, имена и узлы устройств
- •4.15.2 Структура винчестера и файловые системы
- •4.15.3 Стандартизация структуры ФС
- •4.15.4 Модули и драйверы ОС
- •5.15.5 Концепции работы с устройствами
- •4.15.6 FUSE и другие специальные ФС
- •4.15.7 Подключение рабочей области пользователя upk
- •5 Тема 5. Управление пользователями ОС
- •5.1 Пользовательские режимы работы ОС
- •5.2 Разграничение прав пользователей
- •5.3 Login и система доступа Linux-PAM
- •5.4 Команды управления пользователями
- •5.5 Лабораторная работа по теме №5
- •5.5.1 Инфраструктура управления пользователями
- •5.5.2 Реалные и эффективные права пользователя
- •5.5.3 Инфраструктура PAM
- •5.5.4 Команды управления пользователями
- •6 Тема 6. Теоретическая часть
- •6.1 Подсистема управления процессами
- •6.2 Главный родительский процесс init
- •6.3 Состояния процессов в ядре ОС
- •6.4 ОС реального времени
- •6.5 Алгоритм разделения времени
- •6.6 Четыре подхода к управлению процессами
- •6.7 Стандарты POSIX и сигналы
- •6.8 Работа пользователя с процессами
- •6.9 Системные вызовы ОС по управлению процессами
- •6.10 Подсистема управления оперативной памятью
- •6.11 Системные вызовы и разделяемая память
- •6.12 Передача сообщений
- •6.13 Лабораторная работа по теме №6
- •6.13.1 Сценарий загрузки ОС
- •6.13.2 Разные подходы к управлению процессами
- •6.13.3 Сигналы и средства IPC
- •Заключение
- •Список использованных источников

139
5.5 Лабораторная работа по теме №5
Цель лабораторной работы №5 — практическое закрепление учебного материала по теме «Управление пользователями ОС».
Метод достижения указанной цели — закрепление учебного материала, изложенного в первом разделе пособия посредством утилит ОС, а также выполнение заданий, приведенных в данном разделе.
Чтобы успешно выполнить данную работу, студенту следует:
•запустить с flashUSB ОС УПК АСУ, подключить личный архив и переключиться в сеанс пользователя upk;
•запустить на чтение данное пособие и на редактирование личный отчет;
•открыть одно или несколько окон терминалов, причем хотя бы в одном окне
терминала открыть Midnight Commander, для удобства работы с файловой системой ОС;
•приступить к выполнению работы, последовательно пользуясь рекомендациями представленных ниже подразделов.
Замечание
Многие команды ОС студенту еще не известны, поэтому следует:
•для вывода на консоль руководства по интересуемой команде, использовать: man имя_команды;
•для выяснения сущесвования команды, ее доступности и местоположения, использовать: command -v имя_команды;
•для уточнения правил запуска конкретной команды, можно попробовать один из вариантов: команда --help или команда -h или команда -?.
Впроцессе выполнения лабораторной работы студент заполняет личный отчет по каждому изученному вопросу!.
5.5.1 Инфраструктура управления пользователями
Прочитайте и усвойте учебный материал подраздела 5.1.
Исследуйте содержимое директорий: /etc/passwd, /etc/shadow, /etc/group, /etc/gshadow. Усвойте структуру и назначение этих файлов.
5.5.2 Реалные и эффективные права пользователя
Прочитайте и усвойте учебный материал подраздела 5.2.
Спомощью руководства man изучите утилиты whoami, id, chown и chmod.
Спомощью учебного материала подраздела 4.5, а также таблиц 4.9 и 4.10, изучите структуру поля дескриптора файлов i_mode.
Усвойте назначение битов SUID и SGID.
В директории ~/src создайте текстовый файл test и включите в него команды id и

140
whoami.
Сделайте файл ~/src/test исполняемым и, запуская его, исследуйте эффективные идентификаторы запускаемого процесса.
Находясь в директории ~/src, уснановите значения битов SUID и SGID командой: sudo chmod 3777 ./test
Запустите команды:
./test sudo ./test
Сравните результаты.
5.5.3 Инфраструктура PAM
Прочитайте и усвойте учебный материал подраздела 5.3.
Исследуйте содержимое директории /etc/skel и сравните с содержимым рабочей директории пользователя upk.
Изучите содержимое директории /lib/x86_64-linux-gnu/security. Изучите содержимое директории /etc/pam.d и файла /etc/pam.conf.
Изучите утилиту ldd и исследуйте с помощью нее ряд утилит, которые вы считаете, участвуют в контроле прав доступа пользователей.
5.5.4 Команды управления пользователями
Прочитайте и усвойте учебный материал подраздела 5.4. Изучите утилиты useradd, userdel и usermod.
Из главного меню рабочего стола откройте окно «Все настройки», выберите и запустите ПО, озаглавленное «Пользователи и группы», как показано на рисунке 5.2.
Добавьте нового пользователя, например с именем mmm.
Исследуйте содержимое директорий: /etc/passwd, /etc/shadow, /etc/group, /etc/gshadow. Запустите Midnight Commander в окне терминала и перейдите в директорию
/home/mmm.
Сравните содержимое директории /home/mmm с содержимым диреткоии /etc/skel. Закройте все окна пользователя upk и выйдите из его сеанса.
Войдите в сеанс пользователя mmm, запустите Midnight Commander в окне терминала и исследуте содержимое директории /home/upk.
Выйдите из сеанса пользователя mmm и зайдите в сеанс пользователя upk. Запустите главное окно работы с пользователями и удалите пользователя mmm. Исследуйте изменения структуры файлов и директорий.
Замечание
Учитывая, что настоящий дистрибутив не содержит графической утилиты управления пользователями, выполните данный пункт лабораторной работы с помощью утилит:
useradd, userdel и usermod.

141
Рисунок 5.2 — Главное окно работы с пользователями ОС
Завершив выполнение всех заданий и оформление отчета:
•провести архивирование и сохранение рабочей области upk;
•выключить компьютер и завершить выполнение лабораторной работы №5.