Контрольная работа
Контрольная работа включает 1 теоретический вопрос и 3 задачи.
В ответе на теоретический вопрос указать ссылки на использованные
источники.
Решение задач отобразить следующим образом: команда или текст скрипта
с пояснениями для каждой команды и использованных ключей; результат
выполнения задания (в виде скриншота экрана командной строки).
Вариант выбирается по первой букве фамилии студента (таблица 1).
Вариант 1
Теоретический вопрос:
1. Понятие операционной системы. Архитектура и функции операционных
систем.
Задание:
1. Найти все файлы в системе, которые были созданы не более суток назад.
2. Напишите скрипт, который считает количество запущенных пользователем
процессов. Имя пользователя вводится с клавиатуры. Перед этим выводится
список пользователей, работающих в системе.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.0.0, подсеть на 64 адреса;
b. запрета входящих соединений для сервиса http с хостов сети, к
которой настроена маршрутизация.
Вариант 2
Теоретический вопрос:
1. Основные принципы построения операционных систем. Классификация
операционных систем по структуре и назначению.
Задание:
1. Получите имена всех пользователей системы, у которых в качестве
командной оболочки используется программа /bin/bash.
2. Скрипт записывает в файл, заданный в первом параметре, слово, заданное
во втором параметре, столько раз, сколько задано в третьем параметре.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.1.0, подсеть на 128
адресов;
b. запрета входящих соединений для сервиса ftp с хостов сети, к которой
настроена маршрутизация.
Вариант 3
Теоретический вопрос:
1. Типы ядер ОС. Основные функции ядра. Состав ядра Unix.
Задание:
1. Получите с помощью одной команды файл, содержащий все числовые
идентификаторы пользователей, зарегистрированных в системе.
2. Написать скрипт, который рекурсивно выводит все файлы из заданного
каталога, переданного в качестве параметра, в следующем формате:
Имя_файла – Тип_файла.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 172.31.3.0, подсеть на 32 адреса;
b. запрета входящих соединений для сервиса smtp с хостов сети, к
которой настроена маршрутизация.
Вариант 4
Теоретический вопрос:
1. Файловая система Unix. Функции файловой системы. Структура ФС.
Задание:
1. Задайте право на чтение для всех пользователей всем файлам, имена
которых содержат букву «а».
2. Написать скрипт, который производит рекурсивно поиск заданной
подстроки в файлах указанного каталога. Подстрока и каталог для поиска
задаются в качестве параметров. Если каталог не задан, то использовать в
качестве каталога текущий.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.5.0, подсеть на 8 адресов;
b. запрета входящих соединений для сервиса tcp с хостов сети, к которой
настроена маршрутизация.
Вариант 5
Теоретический вопрос:
1. Стандартные каталоги ФС Unix. Виды имён файла.
Задание:
1. Создать файл, содержащий имена всех файлов, созданных в текущем
месяце, и имена пользователей, их создавших.
2. Скрипт рекурсивно просматривает файлы, начиная с указанного в
параметре каталога, и выдаёт сообщение при появлении в списке имени
файла, заданного в параметре.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.7.0, подсеть на 8 адресов;
b. запрета входящих соединений для сервиса ssh с хостов сети, к которой
настроена маршрутизация.
Вариант 6
Теоретический вопрос:
1. Файловая система Unix. Типы файлов. Атрибуты файлов.
Задание:
1. Создать сжатый архив всех файлов, размер которых превышает 1 Кбайт.
2. Подсчитать количество строк во всех файлах с заданными правами доступа
каждого класса пользователей.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 10.30.1.0, подсеть на 256 адресов;
b. запрета входящих соединений для сервиса http с хостов сети, к
которой настроена маршрутизация.
Вариант 7
Теоретический вопрос:
1. Файловая система Unix. Основные команды работы с файлами и с текстом
файлов.
Задание:
1. Определить количество файлов или подкаталогов в корневом каталоге, к
которым все имеют полные права доступа.
2. Найти файл, содержащий максимальное число упоминаний слова,
заданного в параметре скрипта.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.9.0, подсеть на 32 адреса;
b. запрета входящих соединений для сервиса https с хостов сети, к
которой настроена маршрутизация.
Вариант 8
Теоретический вопрос:
1. Понятие директории. Команды работы с директориями.
Задание:
1. В одном из текстовых файлов перенести третью от начала строку в конец
файла.
2. В параметрах скрипта задан список имён файлов. Файлы, содержащие
чётное количество строк, скопировать в один файл, а с нечётным
количеством строк – в другой файл.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 172.19.0.0, подсеть на 128
адресов;
b. запрета входящих соединений для сервиса tcp с хостов сети, к которой
настроена маршрутизация.
Вариант 9
Теоретический вопрос:
1. Управление пользователями и правами доступа в Unix. Стандартный
ввод/вывод. Средства подстановки команд.
Задание:
1. Сформируйте файл со списком файлов в домашнем каталоге, выведите на
экран этот список в алфавитном порядке и общее количество файлов.
2. Написать скрипт, копирующий файлы с расширением, заданным в
параметре, из текущего каталога и его подкаталогов во вновь созданный.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.1.0, подсеть на 256
адресов;
b. запрета входящих соединений для сервиса ftp с хостов сети, к которой
настроена маршрутизация.
Вариант 10
Теоретический вопрос:
1. Процессы в Unix: понятие процесса, типы процессов, контекст процесса,
операции над процессами.
Задание:
1. Определить количество подкаталогов в /home, к которым нет публичных
прав доступа.
2. В заданном каталоге определить, какие имена файлов являются жёсткими
ссылками на один и тот же файл.
Формат вызова: команда каталог.
Команда ls с опцией –l выдаёт числа файловых индексов. Файлы, у которых эти числа
совпадают, и являются жёсткими ссылками на один и от же файл.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.3.0, подсеть на 32 адреса;
b. запрета входящих соединений для сервиса smtp с хостов сети, к
которой настроена маршрутизация.
Вариант 11
Теоретический вопрос:
1. Процессы в Unix: свойства, атрибуты, состояния процессов.
Задание:
1. Создать файл, содержащий список процессов системы, имеющих ненулевой
приоритет.
2. Вычислить среднее арифметическое чисел, заданных в параметрах скрипта.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 172.20.20.0, подсеть на 16
адресов;
b. запрета входящих соединений для сервиса pop с хостов сети, к
которой настроена маршрутизация.
Вариант 12
Теоретический вопрос:
1. Командный интерпретатор Shell. Работа с переменными и параметрами.
Средства группировки команд.
Задание:
1. В одном из текстовых файлов поменять местами первую и последнюю
строки файла.
2. Написать скрипт, который рекурсивно выводит все файлы из заданного
каталога, переданного в качестве параметра, в следующем формате:
Имя_файла – Тип_файла.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.0.0, подсеть на 32 адреса;
b. запрета входящих соединений для сервиса dns с хостов сети, к
которой настроена маршрутизация.
Вариант 13
Теоретический вопрос:
1. Управление памятью в Unix. Страничная организация памяти. Физическая
память и виртуальное адресное пространство.
Задание:
1. Придумайте регулярное выражение, соответствующее URL, с
использованием протокола http. Найдите все строки, содержащие такие
URL в файлах каталога /etc.
2. Написать скрипт, который выводит количество строк в каждом файле из
каталога, переданного в качестве параметра. В конце должно выводиться
общее количество файлов и строк в них. Если каталог не задан, то
необходимо в качестве каталога взять текущий.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.6.0, подсеть на 64 адреса;
b. запрета входящих соединений для сервиса pop2 с хостов сети, к
которой настроена маршрутизация.
Вариант 14
Теоретический вопрос:
1. Вычисления в Shell. Структурные операторы Shell.
Задание:
1. В одном из текстовых файлов после строк, которые заканчиваются запятой
или точкой, вставить пустую строку.
2. Написать скрипт, позволяющий при входе в систему пользователювладельцу присваивать все права доступа на все файлы домашней
директории и подкаталогов.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.1.0, подсеть на 128
адресов;
b. запрета входящих соединений для сервиса icmp с хостов сети, к
которой настроена маршрутизация.
Вариант 15
Теоретический вопрос:
1. Средства взаимодействия процессов в Unix. Понятие конвейера.
Именованные каналы. Команды управления процессами.
Задание:
1. С помощью одной команды найти все файлы с расширением .html в
каталоге /usr и скопировать их в локальный каталог shtml.
2. Написать скрипт, который вычисляет корни квадратного уравнения ax2
+ bx
+ c = 0. Коэффициенты уравнения a, b, c передаются в качестве параметров.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 10.0.0.0, подсеть на 8 адресов;
b. запрета входящих соединений для сервиса imap с хостов сети, к
которой настроена маршрутизация.
Вариант 16
Теоретический вопрос:
1. Средства взаимодействия процессов в Unix. Сигналы и их применение.
Способы посылки сигналов процессу.
Задание:
1. Найти все файлы в системе, которые были созданы не более месяца назад.
2. Создать сжатый архив, включающий все файлы домашней директории и
подкаталогов с правом на запуск.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.8.0, подсеть на 32 адреса;
b. запрета входящих соединений для сервиса smtp с хостов сети, к
которой настроена маршрутизация.
Вариант 17
Теоретический вопрос:
1. Понятие среды окружения в Unix. Переменные окружения.
Задание:
1. Создать файл, содержащий размер и имена 6-и файлов домашней
директории, имеющих наименьший размер.
2. Создать скрипт, завершающий интерактивный процесс предыдущей сессии,
запущенный последним.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.5.0, подсеть на 16
адресов;
b. запрета входящих соединений для сервиса tcp с хостов сети, к которой
настроена маршрутизация.
Вариант 18
Теоретический вопрос:
1. Архивация в Unix.
Задание:
1. Задайте право на чтение и запись для всех пользователей всем файлам,
имена которых содержат букву «с».
2. Создать сжатый архив, содержащий все ненулевые файлы домашней
директории и подкаталогов.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 10.90.0.0, подсеть на 256 адресов;
b. запрета входящих соединений для сервиса https с хостов сети, к
которой настроена маршрутизация.
Вариант 19
Теоретический вопрос:
1. Сетевой интерфейс в Unix. Сетевой адрес.
Задание:
1. Создать файл, содержащий имена всех файлов, созданных в текущем
месяце, и имена пользователей, их создавших.
2. Написать скрипт, позволяющий вывести список всех каталогов,
перечисленных в переменной окружения PATH, и для каждого вывести
права доступа к нему.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.9.0, подсеть на 128
адресов;
b. запрета входящих соединений для сервиса ftp с хостов сети, к которой
настроена маршрутизация.
Вариант 20
Теоретический вопрос:
1. Сети в Unix. Семиуровневая модель OSI.
Задание:
1. Создать сжатый архив всех файлов, размер которых не превышает 4 Кбайт.
2. В качестве параметра скрипта указывается имя файла. Если в файле не
более 10 строк, вывести число символов в нём, иначе – число строк.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 172.16.10.0, подсеть на 32 адреса;
b. запрета входящих соединений для сервиса https с хостов сети, к
которой настроена маршрутизация.
Вариант 21
Теоретический вопрос:
1. Маршрутизация, настройка таблицы маршрутизации в Unix. Основные
сетевые команды.
Задание:
1. Создать файл, содержащий размер и список каталогов домашней
директории, в имени которых есть буква а.
2. Написать скрипт, который добавляет к именам всех файлов каталога,
заданного в первом параметре, расширения, заданные во вотром параметре.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 192.168.30.0, подсеть на 16
адресов;
b. запрета входящих соединений для сервиса dns с хостов сети, к
которой настроена маршрутизация.
Вариант 22
Теоретический вопрос:
1. Загрузка ОС Unix. Этапы и уровни загрузки.
Задание:
1. Присвоить переменным А, В и С значения 10, 100 и 200 соответственно.
Вычислить и вывести результат по формуле D = (A*2 + B/3)*C. Результат
должен содержать 6 цифр.
2. Создать сжатый архив всех файлов, в имени и тексте которых есть буква f.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 10.90.91.0, подсеть на 256
адресов;
b. запрета входящих соединений для сервиса telnet с хостов сети, к
которой настроена маршрутизация.
Вариант 23
Теоретический вопрос:
1. Межсетевой экран. Концепция iptables.
Задание:
1. Определить количество файлов в каталоге /etc, которые являются
символическими ссылками.
2. Написать скрипт, выполняющий опрос хостов (ПК) в сети «192.168.0.X»
(0<X<255) с записью доступных в файл.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 10.50.50.0, подсеть на 128
адресов;
b. запрета входящих соединений для сервиса nntp с хостов сети, к
которой настроена маршрутизация.
Вариант 24
Теоретический вопрос:
1. Функция NAT.
Задание:
1. Получить MAC-адрес сетевого интерфейса eth0.
2. В параметрах скрипта задан список имён файлов. Имена файлов,
содержащие чётное количество строк, скопировать в один файл, нечётное
количество – в другой.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 172.16.1.0, подсеть на 64 адреса;
b. запрета входящих соединений для сервиса imap с хостов сети, к
которой настроена маршрутизация.
Вариант 25
Теоретический вопрос:
1. Основы виртуализации в Unix: понятия виртуализации и виртуальной
машины, свойства виртуальных машин, виды виртуализации платформ,
примеры ПО.
Задание:
1. Запустить процесс поиска файлов системы, имена которых начинаются на
«m», и в тексте которых есть «*» с указанием номера строки. Перевести
процесс в фоновый режим. Завершить его по имени.
2. В зависимости от первого параметра командной строки для каталога,
заданного во втором параметре, определить: 1 – число подкаталогов; 2 –
число обычных файлов; 3 – число символических ссылок.
3. Укажите параметры команд route и iptables для:
a. настройки таблицы маршрутизации 10.90.90.0, подсеть на 32 адреса;
b. запрета входящих соединений для сервиса pop3 с хостов сети, к
которой настроена маршрутизация.
=============================================Лабораторная работа №1Задание к лабораторной работе №1
Выполнить указанные действия. Создать отчет, в котором отразить выполняемое
задание, команды, с помощью которых выполняются указанные действия и результат,
полученный после выполнения команды (в виде скриншотов).
1. Создать файл a1 с помощью команды cat; ввести в файл текст из 6-ти строк вида
(строка начинается с цифры порядкового номера строки):
1. my name is …
2. my surname is …
3. login is …
4. <текст произвольного содержания (не менее 2-х слов)>
5. <текст произвольного содержания (не менее 2-х слов)>
6. <текст произвольного содержания (не менее 2-х слов)>
2. Создать файл a2 с помощью команды touch; в редакторе vi ввести в файл текст
из 6-ти строк аналогичного с содержимым файла a1 вида.
3. Убедиться, что файлы созданы (команда ls -l); просмотреть их содержимое
(команда cat). Результат вывода команды ls –l занести в отчет.
4. Изменить права доступа к этим файлам: владельцу все права, группе чтение и
запись, остальным никаких прав доступа. Прочитать новые права доступа.
5. Первые две строки файла a1 занести в файл a3. Добавить в файл a3 две последние
строки файла a1. Просмотреть содержимое файла a3.
6. Отсортировать файл a2 в обратном порядке. Результат сортировки, используя
опцию команды сортировки, вывести в файле a2_s.
7. Отсортировать файл a2 по 2-му столбцу. Результат сортировки, используя опцию
команды сортировки, вывести в файле a2_s2. Убедиться, что файлы a2_s и a2_s2
созданы; просмотреть их содержимое.
8. Создать файл mix, содержащий 1-ю и 2-ю строки файла a2, 3-ю строку файла а1, 4
и 5-ю строки файла а2_s2.
9. С помощью команды grep найти в файлах домашней директории строки,
содержащие цифру “3”. Результат выполнения команды занести в файл a_g.
10. С помощью команды cut выделить в файле a2 первый столбец.
11. С помощью команды cut выделить в файле a_g имена файлов, отделив их от
строки, содержащей цифру “3”.
12. Создать в домашней директории каталоги с именем D1 и D1_1.
13. Перенести в директорию D1 файл a2; скопировать в директорию D1 файл a3 под
именем a3d1; скопировать в директорию D1_1 файл a3 под именем a3d1_1.
Проверить наличие в директориях D1 и D1_1 указанных файлов.
14. Перейти из домашней директории в директорию D1. Убедиться, что текущей
директорией стала директория D1. Создать в текущей директории D1 жесткую
связь с файлом a1, находящимся в домашней директории (создать новое имя
существующему файлу), с именем a1_h.
15. Создать в текущей директории D1 файл символической связи с файлом a1,
находящимся в домашней директории, с именем a1_sym.
16. Создать в директории D1 каталог с именем D2. Перенести в директорию D2 файл
a2; скопировать в директорию D2 файл a3d1 под именем a3d2. Проверить наличие
в директории D2 указанных файлов.
a) Установить директорию D2 в режим “темной” директории (нет права
на чтение, но есть право на исполнение);
b) Произвести попытку прочитать содержимое директории D2;
c) Прочитать содержимое файлов “темной” директории.
17. Перейти в директорию /home. Убедиться, что текущей директорией стала
директория /home. Прочитать рекурсивно содержимое текущей директории.
Исключить вывод потока ошибок на терминал.
18. Перейти в домашнюю директорию. Убедиться, что она стала текущей
директорией. С помощью команды du вывести размеры каталогов. Исключить
вывод потока ошибок на терминал.
19. Используя команды grep, cut и sort, получить список имѐн тех файлов в каталоге
/etc/, в тексте которых содержится запись ip-адреса. Список имен файлов не
должен иметь повторений. Результат занести в файл g_ip.
20. Получить рекурсивно список файлов домашней директории, в имени которых
есть буква «а», отсортированный без повторов. Результат занести в файл spisok_a
каталога D1_1.
Лабораторная работа №2
Задание к лабораторной работе №2
1. Написать 2 скрипта:
- add_phone, создающий список телефонных номеров и фамилии
пользователей;
- search_phone, осуществляющий поиск телефонных номеров по фамилии или
по шаблону.
2. В качестве параметра скрипта указывается имя пользователя. Если пользователь с
указанным именем существует, вывести информацию о том, работает ли он в
данный момент в системе; иначе – вывести сообщение «Нет такого пользователя»
(список пользователей, зарегистрированных в системе, находится в файле
/etc/passwd).
3. Параметры скрипта – список имен пользователей. Вывести число сеансов тех из
них, кто сейчас в сети (информацию о сеансах выдает команда last).
4. Написать скрипт, проверяющий наличие в домашней директории файла profile.
Если этот файл отсутствует, то скопировать его из директории /etc.
5. Написать скрипт, проверяющий тип файла. Если файл - каталог, то вывести его
содержимое, иначе - вывести сообщение о типе файла.
6. Написать скрипт, в котором создать каталог save, переписать в него содержимое
текущего каталога рекурсивно т.е. с поддиректориями и установить на директорию
все права для всех.
7. Создать в текущем каталоге и в поддиректориях файлы нулевой длины (пустые
файлы). Написать скрипт, удаляющий рекурсивно файлы нулевой длины.
8. Написать скрипт, в котором в качестве параметров командной строки заданы
имена файлов.
Если задан один файл, то подсчитать число букв в этом файле;
если задано два файла – подсчитать число слов;
если задано три файла – подсчитать число строк;
иначе вывести сообщение об ошибке.
9. Написать скрипт, проверяющий тип файла; если файл текстовый, то загрузить
редактор vi, если исполняемый, то выполнить его.
10. Написать скрипт, реализующий электронный журнал преподавателя с
возможностью записи студента и его оценок (3 оценки), а также вывода базы по
студентам с оценками, и осуществляющий подсчет среднего балла для каждого
студента.
Лабораторная работа №3
Задание к лабораторной работе №3
Цель занятия: знакомство с сетевыми командами.
Изучаемые команды: ifconfig, route, traceroute, ping.
1. Создать файл, содержащий MAC–адрес сетевого интерфейса eth0 и
статистику переданных и принятых пакетов для этого интерфейса.
2. Создать файл, содержащий cписок доступных IP–адресов локальной
сети.
3. Создать файл, содержащий IP–адрес и сетевое имя шлюза по
умолчанию для выхода в Интернет.
4. Создать файл, содержащий перечень имен и IP-адресов узлов,
входящих в маршрут до вашего почтового сервера (например,
mail.ru, yandex.ru).
5. Определить, какие из этих узлов доступны для связи в данный
момент.
Примечание. Команды конфигурации сети находятся в каталоге /sbin.
Если команды недоступны, то необходимо добавить путь /sbin в переменную
окружения PATH в файле .bashrc (или .bаsh_profile) домашнего каталога
пользователя (в конец файла дописать PATH=$PATH:/sbin). Затем обновить
файл командой source .bashrc.