Ysa-k03-ru: Difference between revisions
| (4 intermediate revisions by the same user not shown) | |||
| Line 39: | Line 39: | ||
Вывод может выглядеть так: |
Вывод может выглядеть так: |
||
<pre> |
<pre> |
||
uid=1000(alice) gid=1000( |
uid=1000(alice) gid=1000(students) groups=1000(students),27(sudo) |
||
</pre> |
</pre> |
||
| Line 176: | Line 176: | ||
== 8. Практика: сценарии прав доступа == |
== 8. Практика: сценарии прав доступа == |
||
=== Задание 1: Защита личных файлов === |
=== Задание 1: Защита личных файлов === |
||
# Создайте файл ''private.txt'' |
|||
# Разрешите доступ только владельцу |
|||
| ⚫ | |||
<pre> |
|||
| ⚫ | |||
</pre> |
|||
=== Задание 2: Общий каталог группы === |
=== Задание 2: Общий каталог группы === |
||
# Создайте каталог ''/shared'' |
|||
# Назначьте группу ''students'' |
|||
# Разрешите чтение и запись группе |
|||
| ⚫ | |||
<pre> |
|||
| ⚫ | |||
</pre> |
|||
---- |
|||
== 9. Практика: создание пользователей == |
== 9. Практика: создание пользователей == |
||
=== Задание 3 === |
=== Задание 3 === |
||
# Создайте пользователя ''student1'' |
|||
# Установите пароль |
|||
# Добавьте в группу ''students'' |
|||
# Проверьте группы пользователя |
|||
---- |
|||
== 10. Дополнительные материалы для самообучения == |
== 10. Дополнительные материалы для самообучения == |
||
* ''man chmod'' |
|||
* ''man chown'' |
|||
* ''man useradd'' |
|||
* Документация: The Linux Documentation Project |
|||
* Практика в виртуальной машине (VirtualBox / VMware) |
|||
* '''DigitalOcean: An Introduction to Linux Permissions''' (англ.) |
|||
---- |
|||
Отличное практическое объяснение модели прав доступа. |
|||
https://www.digitalocean.com/community/tutorials/an-introduction-to-linux-permissions |
|||
* '''Grymoire: Unix Permissions''' (англ.) |
|||
Глубокое объяснение прав доступа с примерами. |
|||
https://www.grymoire.com/Unix/Permissions.html |
|||
* '''LabEx: Права доступа к файлам в Linux''' |
|||
Интерактивные практические задания (лабораторная работа). |
|||
https://labex.io/ru/tutorials/linux-permissions-of-files-270252 |
|||
* '''Habr: Права доступа в Linux''' |
|||
Практическая статья с примерами и пояснениями. |
|||
https://habr.com/ru/articles/469667/ |
|||
=== Видео-материалы === |
|||
* '''Linux: пользователи, группы и права доступа''' (русский язык) |
|||
https://www.youtube.com/watch?v=R6AegtZpklQ |
|||
* '''chmod и chown — практика''' (русский язык) |
|||
https://www.youtube.com/watch?v=6hHPnoVsJ9Q |
|||
== Итог == |
== Итог == |
||
Latest revision as of 16:13, 29 December 2025
глава 3: Пользователи, группы и права доступа в Unix/Linux
1. Unix/Linux как многопользовательская система
Unix/Linux изначально создавался как **многопользовательская система**. Это означает, что **несколько пользователей могут одновременно работать на одном компьютере**, например:
- несколько пользователей подключены по SSH к серверу
- один пользователь работает за графическим интерфейсом, другой — через терминал
- на сервере работают службы от имени специальных системных пользователей
Чтобы обеспечить **безопасность и порядок**, система должна строго контролировать:
- кто может читать файлы
- кто может изменять файлы
- кто может запускать программы
Для этого в Unix/Linux используются:
- пользователи
- группы
- права доступа к файлам и каталогам
2. Пользователи (Users)
Каждый пользователь в системе имеет:
- имя пользователя (login)
- уникальный числовой идентификатор (UID)
- домашний каталог (например, /home/alice)
- оболочку (shell), например /bin/bash
Типы пользователей
- **root** — суперпользователь, имеет полный доступ ко всей системе
- **обычные пользователи** — работают в системе, имеют ограниченные права
- **системные пользователи** — используются сервисами (например, www-data, mysql)
Пример просмотра информации о текущем пользователе:
id
Вывод может выглядеть так:
uid=1000(alice) gid=1000(students) groups=1000(students),27(sudo)
3. Группы (Groups)
Группа — это способ **объединить несколько пользователей** и управлять их правами одновременно.
Примеры:
- группа sudo — пользователи, которые могут выполнять команды администратора
- группа www-data — веб-сервер
- группа students — группа учеников
Посмотреть группы пользователя:
groups
4. Права доступа к файлам и каталогам
Каждый файл и каталог в Unix/Linux имеет:
- владельца (user)
- группу (group)
- набор прав доступа
Посмотреть права:
ls -l
Пример вывода:
-rw-r--r-- 1 alice students 1234 Jan 10 file.txt
Разбор строки прав
-rw-r--r--
- первый символ:
- - — обычный файл
- d — каталог
- далее три группы по три символа:
- rw- — права владельца
- r-- — права группы
- r-- — права остальных пользователей
Значение символов
- r — read (чтение)
- w — write (запись)
- x — execute (выполнение)
Для каталогов:
- r — просмотр списка файлов
- w — создание и удаление файлов
- x — вход в каталог (cd)
5. Изменение прав доступа: chmod
Команда chmod изменяет права доступа.
Символьный способ
chmod u+x script.sh
- u — владелец
- g — группа
- o — остальные
- + — добавить право
- - — убрать право
Пример:
chmod g+w report.txt
Числовой способ
- r = 4
- w = 2
- x = 1
Пример:
chmod 755 script.sh
Расшифровка:
- 7 = rwx
- 5 = r-x
- 5 = r-x
6. Изменение владельца и группы: chown
Команда chown используется администратором (root).
Пример:
chown bob:students file.txt
- владелец: bob
- группа: students
Только изменить группу:
chown :students file.txt
7. Управление пользователями
Создание пользователя
sudo useradd -m alice
- -m — создать домашний каталог
Установка пароля
sudo passwd alice
Просмотр информации
id alice
8. Практика: сценарии прав доступа
Задание 1: Защита личных файлов
- Создайте файл private.txt
- Разрешите доступ только владельцу
chmod 600 private.txt
Задание 2: Общий каталог группы
- Создайте каталог /shared
- Назначьте группу students
- Разрешите чтение и запись группе
chmod 770 /shared
9. Практика: создание пользователей
Задание 3
- Создайте пользователя student1
- Установите пароль
- Добавьте в группу students
- Проверьте группы пользователя
10. Дополнительные материалы для самообучения
- DigitalOcean: An Introduction to Linux Permissions (англ.)
Отличное практическое объяснение модели прав доступа. https://www.digitalocean.com/community/tutorials/an-introduction-to-linux-permissions
- Grymoire: Unix Permissions (англ.)
Глубокое объяснение прав доступа с примерами. https://www.grymoire.com/Unix/Permissions.html
- LabEx: Права доступа к файлам в Linux
Интерактивные практические задания (лабораторная работа). https://labex.io/ru/tutorials/linux-permissions-of-files-270252
- Habr: Права доступа в Linux
Практическая статья с примерами и пояснениями. https://habr.com/ru/articles/469667/
Видео-материалы
- Linux: пользователи, группы и права доступа (русский язык)
https://www.youtube.com/watch?v=R6AegtZpklQ
- chmod и chown — практика (русский язык)
https://www.youtube.com/watch?v=6hHPnoVsJ9Q
Итог
После изучения этой главы ученик сможет:
- объяснить, почему в Unix/Linux необходима система пользователей и прав доступа
- различать пользователей и группы
- читать и понимать права доступа к файлам и каталогам
- изменять права доступа с помощью chmod
- изменять владельца и группу с помощью chown
- управлять пользователями с помощью useradd, passwd, id, groups
- на практике настраивать права доступа для типичных сценариев администратора