Перейти к содержанию

08.1 Практическая работа Пользователи и группы

Тема: Работа с пользователями и группами в Linux

Цель работы:

Научиться создавать, изменять и удалять пользователей и группы, управлять членством в группах, а также анализировать системные файлы /etc/passwd, /etc/group, /etc/shadow.


Имя пользователя Домашний каталог Основная группа Доп. группа Оболочка UID
1 user01 /srv/user01 grp01 net01 /bin/bash 1051
2 user02 /srv/user02 grp02 net02 /bin/zsh 1052
3 user03 /srv/user03 grp03 net03 /usr/bin/fish 1053
4 user04 /srv/user04 grp04 net04 /bin/dash 1054
5 user05 /srv/user05 grp05 net05 /bin/bash 1055
6 user06 /srv/user06 grp06 net06 /bin/tcsh 1056
7 user07 /srv/user07 grp07 net07 /bin/zsh 1057
8 user08 /srv/user08 grp08 net08 /usr/bin/fish 1058
9 user09 /srv/user09 grp09 net09 /bin/bash 1059
10 user10 /srv/user10 grp10 net10 /bin/zsh 1060
11 user11 /srv/user11 grp11 net11 /bin/bash 1061
12 user12 /srv/user12 grp12 net12 /usr/bin/fish 1062
13 user13 /srv/user13 grp13 net13 /bin/zsh 1063
14 user14 /srv/user14 grp14 net14 /bin/tcsh 1064
15 user15 /srv/user15 grp15 net15 /bin/bash 1065
16 user16 /srv/user16 grp16 net16 /bin/dash 1066
17 user17 /srv/user17 grp17 net17 /usr/bin/fish 1067
18 user18 /srv/user18 grp18 net18 /bin/bash 1068
19 user19 /srv/user19 grp19 net19 /bin/zsh 1069
20 user20 /srv/user20 grp20 net20 /bin/zsh 1070
21 user21 /srv/user21 grp21 net21 /usr/bin/fish 1071
22 user22 /srv/user22 grp22 net22 /bin/bash 1072
23 user23 /srv/user23 grp23 net23 /bin/zsh 1073
24 user24 /srv/user24 grp24 net24 /bin/tcsh 1074
25 user25 /srv/user25 grp25 net25 /usr/bin/fish 1075
26 user26 /srv/user26 grp26 net26 /bin/bash 1076
27 user27 /srv/user27 grp27 net27 /bin/zsh 1077
28 user28 /srv/user28 grp28 net28 /bin/zsh 1078
29 user29 /srv/user29 grp29 net29 /usr/bin/fish 1079
30 user30 /srv/user30 grp30 net30 /bin/bash 1080

Ход работы

Задание 1. Просмотр существующих пользователей и групп

  1. Откройте терминал.
  2. Выполните команду:

    bash cat /etc/passwd

    и найдите свою учётную запись.

  3. Выведите список всех групп:

    bash cat /etc/group

  4. Узнайте свой UID и GID:

    bash id

  5. Запишите в отчёт имя пользователя, UID, GID и все группы, в которых вы состоите.


Задание 2. Создание пользователе

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

  1. Создайте основную группу и дополнительную группу из своего варианта:
```bash
sudo groupadd имя_основной_группы
sudo groupadd имя_дополнительной_группы
```
  1. Создайте нового пользователя, используя параметры из таблицы (имя, домашний каталог, оболочка, UID, группы):

    bash sudo useradd -m -d /путь_к_каталогу -s /путь_к_оболочке -u UID -g основная_группа -G дополнительная_группа имя_пользователя

  2. Назначьте пользователю пароль:

    bash sudo passwd имя_пользователя

  3. Проверьте, что домашний каталог создан:

    bash ls /home ls /srv


Задание 3. Работа с группами

  1. Проверьте членство своего пользователя в группах:

    bash groups имя_пользователя

  2. Добавьте пользователя в дополнительную группу (если не добавляли при создании):

    bash sudo usermod -aG имя_дополнительной_группы имя_пользователя

  3. Измените имя дополнительной группы, добавив суффикс _lab:

    bash sudo groupmod -n новое_имя имя_дополнительной_группы

  4. Проверьте изменения в /etc/group:

    bash cat /etc/group | grep имя_группы


Задание 4. Изменение пользователей

  1. Измените оболочку своего пользователя:

    bash sudo chsh -s /bin/zsh имя_пользователя

  2. Переименуйте пользователя, добавив к имени суффикс _new:

    bash sudo usermod -l новое_имя старое_имя

  3. Проверьте изменения:

    bash cat /etc/passwd | grep имя_пользователя


Задание 5. Удаление пользователей и групп

  1. Удалите пользователя, оставив домашний каталог:

    bash sudo userdel имя_пользователя

  2. Удалите основную группу:

    bash sudo groupdel имя_основной_группы

  3. Проверьте, что записи удалены:

    bash grep имя_пользователя /etc/passwd grep имя_основной_группы /etc/group


Контрольные вопросы

  1. Где хранятся сведения о пользователях и группах в Linux?
  2. Чем отличаются команды useradd и adduser?
  3. Что делает параметр r в команде userdel?
  4. Для чего используется команда usermod с параметром aG?
  5. Как задать пользователю нестандартный домашний каталог?
  6. В чём разница между /etc/passwd и /etc/shadow?