Добавление групп в Linux

LinuxBeginner
Практиковаться сейчас

Введение

Управление пользователями и группами является фундаментальным аспектом администрирования системы Linux. Организуя пользователей в группы, системные администраторы могут эффективно управлять правами доступа к файлам, контроля доступа и разделением ресурсов между несколькими пользователями.

В этом практическом занятии (лабораторной работе) вы научитесь создавать группы в Linux и добавлять пользователей в эти группы. Эти навыки являются обязательными для управления совместными рабочими средами, где несколько членов команды должны иметь доступ к тем же ресурсам. Вы создадите группу для команды по VR-дизайну и добавите в нее пользователей, чтобы они могли совместно использовать доступ к файлам проекта и ресурсам.

Путем практического опыта работы с командами, такими как groupadd и usermod, вы получите практический опыт в управлении пользователями Linux, который можно применить в реальных задачах администрирования системы.

Создание новой группы

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

На этом этапе вы создадите новую группу с именем vr_designers с помощью команды groupadd. Эта команда специально разработана для создания новых групп в Linux.

Сначала убедитесь, что вы находитесь в директории проекта. Откройте терминал и перейдите в директорию проекта с помощью следующей команды:

cd ~/project

Теперь создайте новую группу, выполнив следующую команду:

sudo groupadd vr_designers

Разберем эту команду по частям:

  • sudo: Эта команда временно повышает ваши привилегии для выполнения административных задач.
  • groupadd: Команда, используемая для создания новой группы.
  • vr_designers: Имя группы, которую вы создаете.

После выполнения этой команды вы не должны увидеть никакого вывода, что является нормальным для многих успешно выполненных команд Linux.

Чтобы убедиться, что группа была успешно создана, вы можете проверить файл /etc/group, который содержит информацию о всех группах в системе. Используйте команду grep для фильтрации и отображения только строки, относящейся к вашей новой группе:

grep "vr_designers" /etc/group

Вы должны увидеть вывод, похожий на следующий:

vr_designers:x:1001:

Этот вывод показывает:

  • vr_designers: Имя группы.
  • x: Заполнитель для пароля группы (редко используется в современных системах).
  • 1001: Идентификатор группы (Group ID, GID), присвоенный группе.
  • В конце двоеточия должен следовать список пользователей в группе, разделенных запятыми (в настоящее время список пуст).

Поздравляем! Вы успешно создали новую группу в Linux.

Добавление пользователей в группу

Теперь, когда вы создали группу vr_designers, следующим шагом будет добавление пользователей в эту группу. Когда пользователи добавляются в группу, они наследуют все права доступа и разрешения, назначенные этой группе.

На этом этапе вы добавите трех пользователей — user1, user2 и user3 — в группу vr_designers с помощью команды usermod. Эти пользователи уже были созданы во время настройки лабораторной работы.

Команда usermod изменяет учетную запись пользователя. При использовании с параметрами -a и -G она добавляет пользователя в дополнительную группу, не удаляя его из существующих групп.

Убедитесь, что вы по-прежнему находитесь в директории проекта:

cd ~/project

Теперь добавьте каждого пользователя в группу vr_designers, последовательно выполнив следующие команды:

sudo usermod -a -G vr_designers user1
sudo usermod -a -G vr_designers user2
sudo usermod -a -G vr_designers user3

Понять параметры, используемые с командой usermod:

  • -a: Это сокращение от "append" (добавить) и гарантирует, что пользователь добавляется в группу без удаления из других групп.
  • -G: Это указывает группу, в которую будет добавлен пользователь.
  • vr_designers: Имя группы.
  • user1, user2, user3: Имена пользователей, которые добавляются в группу.

Как и команда groupadd, команда usermod обычно не выводит никакой информации при успешном выполнении.

Чтобы убедиться, что пользователи были правильно добавлены в группу, используйте команду groups:

groups user1 user2 user3

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

user1 : user1 vr_designers
user2 : user2 vr_designers
user3 : user3 vr_designers

Каждая строка показывает пользователя, за которым следуют группы, к которым он принадлежит. Теперь все три пользователя являются членами группы vr_designers вместе с их собственными основными группами (которые имеют то же имя, что и имя пользователя).

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

Проверка информации о группе

Теперь, когда вы создали группу vr_designers и добавили в нее пользователей, важно знать, как получать и проверять информацию о группах в Linux. На этом этапе вы научитесь нескольким способам проверки информации, связанной с группами.

Сначала убедитесь, что вы находитесь в директории проекта:

cd ~/project

Использование команды id

Команда id предоставляет подробную информацию о идентификации пользователя, включая его идентификатор пользователя (UID), идентификатор основной группы (GID) и все группы, к которым он принадлежит. Проверим информацию о группах для пользователя user1:

id user1

Эта команда выведет результат, похожий на следующий:

uid=1001(user1) gid=1001(user1) groups=1001(user1),1004(vr_designers)

В этом выводе показано:

  • uid=1001(user1): Идентификатор пользователя и его имя.
  • gid=1001(user1): Идентификатор и имя основной группы (часто совпадают с именем пользователя).
  • groups=1001(user1),1004(vr_designers): Все группы, к которым принадлежит пользователь.

Использование команды getent

Еще одна полезная команда для проверки информации о группах - getent, которая извлекает записи из различных административных баз данных, включая базу данных групп:

getent group vr_designers

Вы должны увидеть вывод, похожий на следующий:

vr_designers:x:1004:user1,user2,user3

В этом выводе показано:

  • vr_designers: Имя группы.
  • x: Заполнитель для пароля группы.
  • 1004: Идентификатор группы (GID).
  • user1,user2,user3: Список всех пользователей, являющихся членами этой группы.

Прямой просмотр файла групп

Вы также можете просмотреть файл /etc/group, в котором хранится вся информация о группах в системе:

cat /etc/group | grep vr_designers

Вывод должен быть похожим на:

vr_designers:x:1004:user1,user2,user3

Проверка принадлежности пользователя к группам

Для конкретной проверки, к каким группам принадлежит пользователь, вы можете использовать команду groups с указанием имени пользователя:

groups user2

Вывод:

user2 : user2 vr_designers

Эти команды предоставляют различные способы проверки информации о группах в Linux. Понимание и использование этих команд является важным аспектом эффективного управления пользователями и группами.

Резюме

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

  1. Вы создали новую группу с именем vr_designers с помощью команды groupadd.
  2. Вы добавили несколько пользователей в группу, используя команду usermod с параметрами -a и -G.
  3. Вы узнали различные методы проверки и подтверждения информации о группах с использованием таких команд, как id, getent и groups.

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

Понимая, как создавать группы, добавлять пользователей в группы и проверять информацию о группах, вы теперь обладаете знаниями для управления доступом пользователей в Linux-системах.