Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №1.docx
Скачиваний:
16
Добавлен:
25.03.2023
Размер:
2.29 Mб
Скачать

Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

«Московский технический университет связи и информатики»

(МТУСИ)

Кафедра: Математической кибернетики и информационных технологий

Дисциплина: «Современные операционные системы»

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

«Знакомство с операционной системой UNIX»

Выполнил: Иванов И.И.

Группа: МБСТ0000

Проверил:

Симонов С.Е.

__________________________

Москва, ****

Содержание

Цель 4

Задание 4

Выполнение заданий 6

1. Зарегистрироваться в системе под каким-либо именем 6

2. Ознакомиться с основными командами для пользовательской работы в UNIX, определить основные параметры для работы с командами 7

2.1 ls 7

2.2 cd 8

2.3 pwd 9

2.4 mkdir 9

2.5 rmdir 10

2.6 cp 10

2.7 mv 11

2.8 rm 12

2.9 cat 12

2.10 echo 13

2.11 less 13

2.12 touch 14

2.13 grep 14

2.14 date 15

2.15 history 15

3. Определить абсолютный путь своего домашнего каталога 16

4. Определить значения переменных окружения 17

PATH 17

MANPATH 17

PAGER 18

5. Определить границы файлового пространства, где система позволяет создавать собственные файлы и каталоги 18

6. Проверить, возможно ли вмешательство в личное файловое пространство другого пользователя 20

7. Ознакомиться с командами определения прав доступа к файлам и их изменения 21

7.1 id 21

7.2 groups 21

7.3 ls 21

7.4 stat 22

7.5 chmod 22

7.6 chown 23

7.7 chgrp 24

7.8 umask 24

8. Найти запись в файле /etc/passwd, соответствующую вашему регистрационному имени. 25

9. Определить свой UID, узнать, к каким группам относится моё регистрационное имя, объяснить вывод команд id, groups. 26

10. Определить список групп, в которые входит пользователь root. 27

11. Узнать, какими правами доступа обладают вновь создаваемые файлы и каталоги (т.е. создать новый файл и новый каталог и просмотреть для них права доступа). 27

12. Определить значение umask, при котором создаваемые файлы и каталоги будут недоступны для чтения, записи и исполнения никому, кроме владельца. 28

13. Сделать свой домашний каталог видимым для всех пользователей группы users 29

14. Создать в домашнем каталоге подкаталог tmp, файлы в котором сможет создавать, удалять и переименовывать любой, входящий в группу users, при этом содержимое этого подкаталога не должно быть видимым всем прочим пользователям. 30

Вывод 33

Цель

Начальное знакомство с системой, вход в систему, работа в терминальном режиме, изучение основных команд UNIX, получение начальных сведений о структуре каталогов в UNIX. Работа со справочной системой. Удаленный вход в систему. Вход в систему, работа в терминальном режиме, изучение основных команд UNIX.

Задание

  1. Зарегистрироваться в системе под каким-либо именем.

  2. Ознакомиться со следующими командами для пользовательской работы в UNIX: ls, cd, pwd, mkdir, rmdir, cp, mv, rm, cat, echo, less, touch, grep, date, history. Определить параметры, которые следует считать основными при использовании данных команд.

  3. Определить абсолютный путь своего домашнего каталога.

  4. Определить значения следующих переменных окружения: PATH, MANPATH, PAGER.

  5. Определить границы файлового пространства, где система позволяет создавать собственные файлы и каталоги.

  6. Проверить, возможно ли вмешательство в личное файловое пространство другого пользователя.

  7. Ознакомиться с командами определения прав доступа к файлам и их изменения (id, groups, ls, stat, chmod, chown, chgrp, umask).

  8. Найти запись в файле /etc/passwd, соответствующую вашему регистрационному имени.

  9. Определить свой UID, узнать, к каким группам относится моё регистрационное имя, объяснить вывод команд id, groups.

  10. Определить список групп, в которые входит пользователь root.

  11. Узнать, какими правами доступа обладают вновь создаваемые файлы и каталоги (т.е. создать новый файл и новый каталог и просмотреть для них права доступа).

  12. Определить значение umask, при котором создаваемые файлы и каталоги будут недоступны для чтения, записи и исполнения никому, кроме владельца.

  13. Сделать свой домашний каталог видимым для всех пользователей группы users.

  14. Создать в домашнем каталоге подкаталог tmp, файлы в котором сможет создавать, удалять и переименовывать любой, входящий в группу users, при этом содержимое этого подкаталога не должно быть видимым всем прочим пользователям.

Выполнение заданий

1. Зарегистрироваться в системе под каким-либо именем

Сперва пришлось, используя виртуальную машину, установить дистрибутив Linux (Ubuntu 22.10 GNOME), в ходе установки операционной системы был создан пользователь под именем «Pavel». Root был создан с отличающимся паролем.

Рисунок 1

Рисунок 2

2. Ознакомиться с основными командами для пользовательской работы в unix, определить основные параметры для работы с командами

2.1 ls

Данная команда выводит файлы и каталоги, содержащиеся в текущем выбранном каталоге (по умолчанию /home/current_user_name, либо в переданной в качестве строчного параметра).

Основными параметрами стоит считать: -l – вывод подробной информации по каждому файлу/каталогу, -a – выводит скрытые файлы, /path – последний параметр, который указывает на то, информацию о какой директории необходимо вывести.

Рисунок 3

Рисунок 4

2.2 cd

Данная команда позволяет перемещаться по каталогам, изменяя «текущий каталог».

Рисунок 5

Единственный параметр команды – имя каталога, куда нужно перейти.

Если ввести команду без параметров, то переход произойдёт в домашний каталог.

2.3 pwd

Выводит полный путь до «текущего каталога», таким образом можно узнать, где сейчас находишься в файловой системе.

Рисунок 6

Каких-либо интересных или важных для рядового пользователя параметров нет.

2.4 mkdir

Команда создаёт папку в текущем каталоге или по указанному абсолютному пути.

Рисунок 7

Из интересных параметров -m= – позволяющий установить права доступа для создаваемой директории. Синтаксис такой же, как и у chmod.

2.5 rmdir

Команда для удаления указанной директории.

Рисунок 8

Но у команды в таком виде есть ограничение: если папка не пустая, удаление не произойдёт. Для удаления папки вместе с содержимым нужно использовать параметр -r.

Также у команды есть параметр -p, из-за использования которого удалятся и каталоги высшего уровня, если они пустые. То есть если выполнить команду rmdir -p fizz/buzz/folder и все 3 указанные папки пустые, они удалятся.

2.6 cp

Команда копирования файлов.

Рисунок 9

Из интересных атрибутов: -v – выводит информацию о каждом обрабатываемом файле, -r – копирование директории, -n – не перезаписывать существующие файлы, -I – вывод запроса на перезапись существующих файлов.

Рисунок 10

2.7 mv

Команда перемещения или переименовывания файлов/директорий.

Рисунок 11

Из интересных параметров: -f при перезаписи не спрашивать разрешение, -I при перезаписи спросить разрешение пользователя, -n не перезаписывать существующие файлы, -v выводить информацию об обрабатываемых файлах.

Для перемещения нескольких файлов можно использовать подобие регулярных выражений, например: mv * newFolder – переместить все файлы в новую папку; mv *.txt txtFolder – переместить все файлы с расширением .txt в другую папку.

Переименование работает так же, только не нужно указывать директорию.

Рисунок 12

2.8 rm

Команда удаления файлов. Можно удалять один или несколько файлов.

Рисунок 13

Из параметров: -v – вывод информации об удаляемых файлах; -d – удалять пустые директории, -r - рекурсивное удаление, -i – запрос на удаление каждого файла.

2.9 cat

Данная команда используется для, во-первых, вывода файлов, во-вторых, кон[cat]енации файлов.

Рисунок 14

Из параметров: -b – вывести нумерацию строк, пропуская пустые строки, -n – вывести нумерацию строк, -s – свернуть несколько пустых строк в одну, -E – добавить символ $ в конец каждой строки,

2.10 echo

Команда «echo» выводит свой аргумент в стандартный поток вывода (в консоль). Её можно использовать, например, для вывода значений системных переменных.

Рисунок 15

Содержимое файлов, к сожалению, не выводит.

Рисунок 16

2.11 less

Так же, как и «cat» выводит содержимое файла, однако делает это иначе. Cat просто построчно выводит файл в консоль. Less выводит содержимое в отдельное окно, позволяя в нём листать файл, после чего можно закрыть это окно и вернуться в консоль. W, z – кнопки перелистывания страниц в less, «/» - кнопка для поиска текста, h – просмотр горячих клавиш, q – выход.

Рисунок 17

Рисунок 18

2.12 touch

Команда, предназначенная для установки времени последнего изменения файла. Но известна она другой своей возможностью – созданием пустых файлов.

Рисунок 19

2.13 grep

Команда grep предназначена для поиска строк, соответствующих шаблону, заданному в параметре Шаблон. Каждая найденная строка записывается в стандартный поток вывода.

Рисунок 20

2.14 date

Команда «date» выводит текущую дату и часовой пояс.

Рисунок 21

2.15 history

Данная команда выводит историю последних введенных в терминале команд.

Рисунок 22

У данной команды есть аргумент. Если ввести после команды число, то выведутся все команды, начиная с команды, имеющий порядковый номер равный введенному числу.

Рисунок 23