Добавление пользователя в группу linux
Операционная система Linux изначально планировалась как многопользовательская система. Для управления правами доступа для каждого из пользователей используется три флага: чтение, запись и выполнение. Но этого было недостаточно, поэтому были придуманы группы пользователей Linux. С помощью групп можно дать нескольким пользователям доступ к одному ресурсу.
Файлу присваивается группа, для нее описываются права, затем в эту группу вступают пользователи, чтобы получить доступ к файлу. Читайте подробнее про все это в статье группы Linux. А в этой статье мы рассмотрим как добавить пользователя в группу linux.
Как добавить пользователя в группу Linux
Как я уже сказал, для каждого пользователя существует два типа групп, это первичная, основная для него группа и дополнительные.
- Первичная группа - создается автоматически, когда пользователь регистрируется в системе, в большинстве случаев имеет такое же имя, как и имя пользователя. Пользователь может иметь только одну основную группу;
- Вторичные группы - это дополнительные группы, к которым пользователь может быть добавлен в процессе работы, максимальное количество таких групп для пользователя - 32;
Как обычно, лучше всего будет добавлять пользователя в группу через терминал, поскольку это даст вам больше гибкости и возможностей. Для изменения параметров пользователя используется команда usermod. Рассмотрим ее опции и синтаксис:
$ usermod опции синтаксис
Здесь нас будут интересовать только несколько опций с помощью которых можно добавить пользователя в группу root linux. Вот они:
- -G - дополнительные группы для пользователя;
- -a - добавить пользователя в дополнительные группы из параметра -G, а не заменять им текущее значение;
- -g - установить новую основную группу для пользователя, такая группа уже должна существовать, и все файлы в домашнем каталоге теперь будут принадлежать именно этой группе.
У команды намного больше опций, но нам понадобятся только эти для решения нашей задачи. Теперь рассмотрим несколько примеров. Например, чтобы добавить пользователя в группу sudo linux используйте такую комбинацию:
sudo usermod -a -G wheel user
Если вы не будете использовать опцию -a, и укажите только -G, то утилита затрет все группы, которые были заданы ранее, что может вызвать серьезные проблемы. Например, вы хотите добавить пользователя в группу disk и стираете wheel, тогда вы больше не сможете пользоваться правами суперпользователя и вам придется сбрасывать пароль. Теперь смотрим информацию о пользователе:
Мы можем видеть, что была добавлена указанная нами дополнительная группа и все группы, которые были раньше остались. Если вы хотите указать несколько групп, это можно сделать разделив их запятой:
sudo usermod -a -G disks,vboxusers user
Основная группа пользователя соответствует его имени, но мы можем изменить ее на другую, например users:
sudo usermod -g users user
Теперь основная группа была изменена. Точно такие же опции вы можете использовать для добавления пользователя в группу sudo linux во время его создания с помощью команды useradd.
Добавление пользователя в группу через GUI
В графическом интерфейсе все немного сложнее. В KDE добавление пользователя в группу linux выполняется с помощью утилиты Kuser. Мы не будем ее рассматривать. В Gnome 3 возможность управления группами была удалена, но в разных системах существуют свои утилиты для решения такой задачи, например, это system-config-users в CentOS и Users & Groups в Ubuntu.
Для установки инструмента в CentOS выполните:
sudo yum install system-config-users
Дальше вы можете запустить утилиту через терминал или из главного меню системы. Главное окно утилиты выглядит вот так:
Выполните двойной клик по имени пользователя, затем перейдите на вкладку "группы". Здесь вы можете выбрать отметить галочками нужные дополнительные группы, а также изменить основную группу:
Для установки утилиты в Ubuntu запустите такую команду:
sudo apt install gnome-system-tools
Здесь интерфейс будет немного отличаться, утилита будет выглядеть так же, как и системная программа настройки пользователей только появится возможность управления группами Linux.
Выводы
В этой небольшой статье мы рассмотрели как добавить пользователя в группу linux. Это может быть очень полезно для предоставления пользователю дополнительных полномочий и разграничения привилегий между пользователями. Если у вас остались вопросы, спрашивайте в комментариях!
В этом руководстве мы объясним, как добавить пользователя в группу в системах Linux. Мы также покажем вам, как удалить пользователя из группы и как создавать, удалять и перечислять группы.
Группы Linux
В операционных системах Linux есть два типа групп:
Каждый пользователь может принадлежать ровно к одной основной группе и нулю или более вторичных групп.
Только root или пользователи с доступом sudo могут добавлять пользователя в группу.
Как добавить существующего пользователя в группу
Чтобы добавить существующего пользователя во вторичную группу, используйте команду usermod -a -G после имени группы и пользователя:
Например, чтобы добавить пользователя linuxize в группу sudo , вы должны выполнить следующую команду:
Всегда используйте параметр -a (добавить) при добавлении пользователя в новую группу. Если вы опустите опцию -a , пользователь будет удален из всех групп, не перечисленных после опции -G .
В случае успеха команда usermod не выводит никаких результатов. Он предупреждает вас только в том случае, если пользователь или группа не существует.
Как добавить существующего пользователя в несколько групп одной командой
Если вы хотите добавить существующий пользователь к нескольким вторичным группам в одной команде, используйте usermod команды , за которой следует -G названия опции группы , разделенной , (запятые):
Как удалить пользователя из группы
Чтобы удалить пользователя из группы, используйте команду gpasswd с параметром -d .
В следующем примере мы удаляем username из имени группы groupname :
Как создать группу
Чтобы создать новую группу , используйте команду groupadd за которой следует имя группы:
Как удалить группу
Чтобы удалить существующую группу, используйте команду groupdel за которой следует имя группы:
Как изменить основную группу пользователя
Чтобы изменить основную группу пользователя, используйте команду usermod за которой следует параметр -g :
В следующем примере мы меняем основную группу пользователя linuxize на developers :
Как создать нового пользователя и назначить группы одной командой
Следующая команда useradd создает нового пользователя с именем nathan с users первичной группы и вторичными группами wheel и разработчиками.
Показать группы пользователей
Чтобы отобразить полную информацию о пользователе, включая все группы, членом которых является пользователь, используйте команду id за которой следует имя пользователя:
Если вы опустите имя пользователя, команда напечатает информацию о текущем вошедшем в систему пользователе. Проверим пользовательский linuxize :
Используйте команду groups для отображения дополнительных групп пользователя:
Если команде groups не передано имя пользователя, она распечатает группы пользователей, вошедших в систему.
Выводы
В этом руководстве мы показали вам, как добавить пользователя в группу.
Те же команды применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian и Linux Mint.
Пользователи объединены в разные группы во всех системах на основе Linux. Основная идея заключается в облегчении администрирования системы, поскольку пользователи могут быть объединены в разные группы и могут получать различные разрешения, как того требует системный администратор. Один и тот же пользователь может быть включен в разные группы, и одному и тому же файлу могут быть предоставлены разные разрешения в зависимости от групп.
Эта статья о том, как добавить пользователя в группу.
Инструкции хорошо подойдут для большинства дистрибутивов Linux, включая Ubuntu , CentOS, Debian, Fedora, Linux Mint и т. д.
Различные сценарии при добавлении пользователя в группу
При добавлении пользователя в группу необходимо учитывать множество факторов:
§ Существование пользователя - команды обычно различаются в зависимости от того, существует ли пользователь в системе,
§ Категория группы - основная группа, к которой принадлежит пользователь, называется основной группой. Как правило, эта группа имеет то же имя, что и имя пользователя. Другие группы, к которым принадлежит пользователь, называются вторичными группами. Есть и другие группы, в которые пользователь вообще не входит.
§ Права пользователя - это основной фактор, так как только суперпользователи могут добавлять любого пользователя в любую группу. Это разрешение ограничивает пользователей с точки зрения того, какие группы и каких пользователей они могут редактировать.
Учитывая все эти факторы, мы представляем только две команды для добавления пользователей в группы. Но они представлены с учетом того, что пользователь, вводящий эти команды, является суперпользователем /root (может выполнять sudo).
Добавление новых пользователей в группы
Первое и единственное исключение - добавление новых пользователей в группы:
Команда id показывает основную информацию о пользователе в системе. Поэтому, чтобы доказать, что пользователь не существует, вводим:
Теперь мы добавляем нового пользователя в существующую группу:
Все остальные сценарии - когда пользователь уже существует
Теперь единственным условием является то, что пользователь уже должен существовать в системе. Все остальные сценарии могут быть разработаны с помощью этой команды:
Если вы хотите запомнить эту команду, то вы можете создать нового пользователя перед добавлением пользователя в систему. Это можно сделать с помощью:
Теперь проверка на правильность работы:
Удаление пользователей из группы
Очевидно, что эта функция не является частью команды добавления пользователей в группы, а является важной командой, позволяющей узнать, можете ли вы управлять группами. Команда имеет тот же формат, что и gpasswd:
Видим, что пользователь удален из группы.
Заключение
Добавление пользователей в группы в Linux – довольно простая задача, если вы знаете, какие команды использовать. По сути, вы можете делать все, используя только одну команду, если вы знаете, с ней обращаться. Команда gpasswd - это самая простая команда для выполнения задачи. Можно также использовать useradd или usermod, но они имеют сравнительно более сложный синтаксис, и поэтому не рекомендуются для начинающих.
Группы Linux - это организационные единицы, которые используются для организации и администрирования учетных записей пользователей в Linux. Основной целью групп является определение набора привилегий, таких как чтение, запись или выполнение разрешения для данного ресурса, которые могут быть общими для пользователей в группе.
В операционных системах Linux существует два типа групп:
Основная группа - когда пользователь создает файл, для группы файла устанавливается основная группа пользователя. Обычно имя группы совпадает с именем пользователя. Информация о первичной группе пользователя хранится в /etc/passwd файле.
Вторичная или дополнительная группа - полезно, если вы хотите предоставить определенные права доступа к файлам группе пользователей, которые являются членами группы. Например, если вы добавите в docker группу определенного пользователя, он унаследует права доступа от группы и сможет выполнять команды Docker.
Каждый пользователь может принадлежать ровно к одной первичной группе и к нулю или нескольким вторичным группам.
Только root или пользователи с sudo доступом могут добавлять пользователя в группу.
Как добавить существующего пользователя в группу
Чтобы добавить существующего пользователя во вторичную группу, используйте usermod -a -G команду, сопровождающую имя группы и пользователя:
Например, чтобы добавить пользователя linuxize в sudo группу, вы должны выполнить следующую команду:
Всегда используйте -a опцию (добавить) при добавлении пользователя в новую группу. Если вы опустите -a опцию, пользователь будет удален из любой группы, не указанной после -G опции.
В случае успеха usermod команда не отображает никаких выходных данных. Он предупреждает вас, только если пользователь или группа не существует.
Как добавить существующего пользователя в несколько групп одной командой
Если вы хотите добавить существующего пользователя в несколько вторичных групп в одной команде, используйте usermod команду, за которой следует -G имя параметра группы, разделенное , (запятыми):
Как удалить пользователя из группы
Чтобы удалить пользователя из группы, используйте gpasswd команду с -d параметром.
В следующем примере мы удаляем пользователя username из группы groupname :
Как создать группу
Чтобы создать новую группу , используйте groupadd команду, за которой следует имя группы:
Как удалить группу
Чтобы удалить существующую группу, используйте groupdel команду, за которой следует имя группы:
Как изменить основную группу пользователя
Чтобы изменить основную группу пользователей, используйте usermod команду, за которой следует -g опция:
В следующем примере мы меняем основную группу пользователя linuxize на developers :
Как создать нового пользователя и назначить группы в одной команде
Следующая useradd команда создает нового пользователя с именем колесо nathan первичной группы users и вторичной группы и разработчиков.
Показать группы пользователей
Чтобы отобразить полную информацию о пользователе, включая все группы, в которые входит пользователь, используйте id команду, за которой следует имя пользователя:
Если вы пропустите имя пользователя, команда напечатает информацию о текущем вошедшем в систему пользователе. Давайте проверим пользователя linuxize :
Из приведенного выше вывода, мы видим , что основная группа пользователя является users и принадлежит wheel , storage , libvirt , docker и kvm дополнительные группы.
Используйте groups команду для отображения дополнительных групп пользователя:
Вывод
В этом руководстве мы показали вам, как добавить пользователя в группу.
Те же команды применяются для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian и Linux Mint.
Читайте также: