Как добавить пользователя в группу в Linux

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

Команды Linux для навигации в терминале

  1. &&. Строго говоря, это не команда. Если вы хотите выполнить сразу несколько команд, поставьте между ними двойной амперсанд вот так: первая_команда && вторая_команда. Терминал выполнит команды по порядку. Вы можете ввести столько команд, сколько захотите.
  2. alias. Присваивает созданные вами названия длинным командам, которые вы не можете запомнить. Введите alias длинная_команда короткая_команда.
  3. cd. Изменяет текущую терминальную папку. Когда вы запускаете терминал, он использует вашу домашнюю папку. Введите cd адрес_папки, и терминал будет работать с файлами, которые там находятся.
  4. clear. Очищает окно терминала от всех сообщений.
  5. history. Отображает все недавно введённые вами команды. Кроме того, вы можете переключаться между недавними командами с помощью клавиш «Вверх» и «Вниз». Если вы не хотите, чтобы введённая вами команда была записана, поставьте перед ней пробел так: ваша_команда.
  6. man. Отображает руководство по программам и командам Linux. Введите man имя_пакетаили man ваша_команда.
  7. whatis. Отображает краткое описание какой-либо программы. Введите команду и название программы whatis имя_пакета.
Команды Linux для навигации в терминале

Основные группы в Linux

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

  1. adm — группа администратора, позволяющая его участникам читать логи в соответствующих директориях.
  2. cdrom — группа пользователей, которым разрешено пользоваться дисковым приводом.
  3. wheel — группа, участникам которой можно выполнять команду sudo, то есть выполнять действия от лица администратора-суперпользователя.
  4. plugdev — те пользователи, что находятся в этой группе, могут монтировать внешние накопители: флешки и жесткие диски.
  5. sys — это группа, участники которой имеют полный доступ к исходному коду ядра системы и данным в файлах include.
  6. games — игры, запущенные пользователям из этой группы, могут писать в систему настройки и прочие данные.
  7. list — группа пользователей, которым разрешено просматривать сообщения, которые хранятся в директории /var/mail.
  8. proxy — в эту группу добавляют прокси-серверы. Участникам этой группы запрещено записывать файлы на жесткий диск компьютера.
  9. src — пользователи, находящиеся в этой группе могут изменить любой файл в директории /usr/src.
  10. disk — аналог получения root-прав.

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

Различные сценарии при добавлении пользователя в группу

При добавлении пользователя в группу необходимо учитывать множество факторов:

§  Существование пользователя — команды обычно различаются в зависимости от того, существует ли пользователь в системе,

§  Категория группы — основная группа, к которой принадлежит пользователь, называется основной группой. Как правило, эта группа имеет то же имя, что и имя пользователя. Другие группы, к которым принадлежит пользователь, называются вторичными группами. Есть и другие группы, в которые пользователь вообще не входит.

§  Права пользователя — это основной фактор, так как только суперпользователи могут добавлять любого пользователя в любую группу. Это разрешение ограничивает пользователей с точки зрения того, какие группы и каких пользователей они могут редактировать.

Учитывая все эти факторы, мы представляем только две команды для добавления пользователей в группы. Но они представлены с учетом того, что пользователь, вводящий эти команды, является суперпользователем /root (может выполнять sudo).

Удаляем пользователя из группы – deluser

Теперь рассмотрим второй способ удаления пользователя из группы, это утилита “deluser”, которая присутствует в некоторых дистрибутивах Linux. Например, в Debian и Ubuntu она точно имеется, и так, процесс удаления выглядит следующим образом, сначала указывается команда “deluser”, затем вписываем имя пользователя “cyber-x” и последним указываем группу, к примеру все ту же самую “sambashare”:

Удаляем пользователя из группы – deluser

sudo deluser cyber-x sambashare

Идентификатор группы

Как было рассказано в лекции Сеанс работы в Linux, пользователь может быть членом нескольких групп, равно как и несколько пользователей может быть членами одной и той же группы. Исторически сложилось так, что одна из групп — группа по умолчанию — является для пользователя основной: когда (не вполне точно) говорят о «GID пользователя», имеют в виду именно идентификатор группы по умолчанию. В лекции Конфигурационные файлы будет рассказано, что GID пользователя вписан в учётную запись и хранится в /etc/passwd, а информация о соответствии имён групп их идентификаторам, равно как и о том, в какие ещё группы входит пользователь — в файле /etc/group. Из этого следует, что пользователь не может не быть членом как минимум одной группы, как снаряд не может не попасть в эпицентр взрыва.

Читайте также:  Восстановление Windows 10 из «Командной строки»

Здесь есть тонкость. В файле group указываются не идентификаторы, а входные имена пользователей. Формально говоря, можно создать двух пользователей с одинаковым UID, но разными GID и списками групп. Обычно так не делают: надобности — почти никакой, а неразберихи возникнет много.

Часто процедуру создания пользователя проектируют так, что имя группы по умолчанию совпадает с входным именем пользователя, а GID пользователя — с его UID. Однако это совсем не обязательно: не всегда нужно заводить для пользователя отдельную группу, а если заводить, то не всегда удаётся сделать так,чтобы желаемый идентификатор группы совпадал с желаемым идентификатором пользователя.

Файлы конфигурации

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

/etc/passwd

В файле /etc/passwd хранится вся информация о пользователях кроме пароля. Одна строка из этого файла соответствует описанию одного пользователя. Примерное содержание строки таково:

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

Поле Описание
1 vasyapupkin Имя пользователя для входа в систему.
2 x Необязательный зашифрованный пароль.
3 1000 Числовой идентификатор пользователя (UID).
4 1000 Числовой идентификатор группы (GID).
5 Vasya Pupkin Поле комментария
6 /home/vpupkin Домашний каталог пользователя.
7 /bin/bash Оболочка пользователя.

Второе и последнее поля необязательные и могут не иметь значения.

/etc/group

В /etc/group, как очевидно из названия хранится информация о группах. Она записана в аналогичном /etc/passwd виде:

Поле Описание
1 vasyapupkin Название группы
2 x Необязательный зашифрованный пароль.
3 1000 Числовой идентификатор группы (GID).
4 vasyapupkin,petya Список пользователей, находящихся в группе.

В этом файле второе и четвертое поля могут быть пустыми.

/etc/shadow

Файл /etc/shadow хранит в себе пароли, по этому права, установленные на этот файл, не дают считать его простому пользователю. Пример одной из записей из этого файла:

Поле Описание
1 vasyapupkin Имя пользователя для входа в систему.
2 $6$Yvp9VO2s$ Необязательный зашифрованный пароль.
3 15803 Дата последней смены пароля.
4 Минимальный срок действия пароля.
5 99999 Максимальный срок действия пароля.
6 7 Период предупреждения о пароле.
7 Период неактивности пароля.
9 Дата истечения срока действия учётной записи.

Создать группы в Linux

Создать новую группу:

sudo groupadd Название_группы

Удалить группу в Linux:

sudo groupdel Название_группы

Добавить пользователя в группу:

sudo usermod -aG Название_группы Имя_Пользователя

Удалить пользователя из группы:

sudo deluser Название_группы Имя_Пользователя

Читайте далее как работать с командами chown и chmod.

У вас еще остались вопросы? Пишите их в комментариях, рассказывайте, что у вас получилось или наоборот!

Вот и все! Больше полезных статей и инструкций читайте в разделе Статьи и Хаки Linux. Оставайтесь вместе с сайтом Android +1, дальше будет еще интересней!