Linux mint изменить рабочую группу

Обновлено: 02.07.2024

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

Как создать новую группу в Linux

Если вы хотите создать новую группу в своей системе, используйте команду groupadd, заменив new_group на имя группы, которую вы хотите создать. Вам также нужно будет использовать sudo с этой командой (или в дистрибутивах Linux, которые не используют sudo, вам нужно будет запустить команду su, чтобы получить повышенные разрешения перед запуском команды).

Добавление существующей учетной записи пользователя в группу

Чтобы добавить существующую учетную запись пользователя в группу в вашей системе, используйте команду usermod, заменив group_name на имя группы, в которую вы хотите добавить пользователя, в user_name на имя пользователя, которого хотите добавить.

Например, для добавления пользователя mial в группу sudo, используйте следующую команду:

Изменение первичной группы пользователя

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

Чтобы изменить основную группу, которой назначен пользователь, запустите команду usermod, заменив group_name на имя группы, а user_name на имя учетной записи пользователя.

Обратите внимание здесь на -g. Когда вы используете маленькую g, вы назначаете главную группу. Когда вы используете заглавную -G , как в примерах выше, вы назначаете вторичную группу.

Как узнать, в какие группы входит пользователь

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

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

id


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

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


Первой группой в списке групп или группой, показанной после «gid=» в списке идентификаторов, является первичная группа учетной записи пользователя. Другие группы – это вторичные группы. Итак, на скриншоте ниже основной группой учетной записи пользователя является mial.

Создание нового пользователя и назначение группы в одной команде

Иногда вам может понадобиться создать новую учетную запись пользователя, которая имеет доступ к определенному ресурсу или каталогу, например, новому пользователю FTP. С помощью команды useradd при создании учетной записи пользователя вы можете указать группы, которым будет назначена учетная запись пользователя, например:

Например, чтобы создать новую учетную запись пользователя с именем jsmith и назначить эту учетную запись группе ftp, вы должны запустить:

Конечно, вы захотите назначить пароль для этого пользователя:

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

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

Например, чтобы добавить пользователя с именем mial в группы ftp, sudo и example, вы должны запустить:

Вы можете указать столько групп, сколько хотите – просто разделите их все запятой.

Как просмотреть все группы в системе

Если вы хотите просмотреть список всех групп в вашей системе, вы можете использовать команду getent:


Этот вывод также покажет вам, какие учетные записи пользователей являются членами групп. Итак, на скриншоте ниже мы видим, что учетные записи пользователей syslog и mial являются членами группы adm.

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

Безопасно изменить основную группу пользователя в Linux

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

Безопасно изменить основную группу пользователя в Linux

Запишите текущее состояние

Прежде чем изменить основную группу пользователя Linux, запишите его текущее состояние. Давайте рассмотрим пользователя по имени пользователя “mackey”. Вы можете найти этих пользователей в настоящее время в группах:

Основная группа пользователя mackey – “mackey”. Этот пользователь также связан с кучей других групп: adm, cdrom, sudo, dip, plugdev, sambashare, lpadmin.

Обратите внимание, что adm, cdrom, sudo, dip, plugdev, sambashare и lpadmin – все вторичные группы по умолчанию, назначенные пользователю в Ubuntu 12.04 Precise Pangolin.

Изменить основную группу пользователей

Используемая команда – usermod. Ниже приведен синтаксис команды:

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

Как и ожидалось, приведенная выше команда изменит первичную группу mackey с «mackey» на «NewPrimaryGroup». Тем не менее, все членства во второй группе этого пользователя исчезнут, включая «admin». Это означает, что отныне пользователь не сможет использовать команду «sudo» для получения root-доступа. Этот пользователь не сможет вносить какие-либо изменения в систему (например, устанавливать / удалять программное обеспечение).

Это, однако, не происходит во всех дистрибутивах. Например, в Ubuntu 12.04 Precise Pangolin команда «sudo usermod -g NewPrimaryGroup user» назначает новую первичную группу пользователю, сохраняя все существующие вторичные группы. Тем не менее, мне нравится сменить первичную группу безопасным способом, который дает контроль над моей рукой.

Безопасный способ изменить основную группу пользователя Linux – использовать следующую команду:

Эта команда сначала изменит первичную группу пользователя mackey с «mackey» на «NewPrimaryGroup». Затем он назначит пользователя “mackey” следующим вторичным группам: “mackey, adm, cdrom, sudo, dip, plugdev, sambashare, lpadmin”. Таким образом, основная группа Макки будет изменена, не влияя на членство в других группах и не теряя членство в предыдущей основной группе «Макки».

Способ 1: Если вы предварительно настроили пароль «root» (ненормально в Ubuntu), вы можете войти в систему как «root» и затем выполнить следующую команду:

После выполнения вышеуказанной команды выйдите из системы и войдите в систему как пользователь (в данном случае – mackey).

Способ 2: Если вы не установили пароль для пользователя «root», то вы не можете войти в систему как пользователь root. В этом случае из меню grub загрузитесь в recovery и введите в командной строке привилегии root. Затем выполните ту же команду, указанную выше:

Перезагрузка и пользователь “mackey” теперь должен восстановить все вторичные группы. Основной группой будет «NewPrimaryGroup».

Если вы просто хотите добавить существующего пользователя во вторичную группу, сохранив все его / ее членство в первичной и вторичной группах, используйте следующую команду:

Опция “-a” означает добавление к существующим членствам.

Теперь вы можете безопасно сменить основную группу пользователей. Надеюсь это поможет.

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

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

Что такое группы?

Как я уже сказал группы в Linux появились еще в самом начале разработки этой операционной системы. Они были разработаны для того, чтобы расширить возможности управления правами. Разберем небольшой пример, возьмем организацию в которой есть только один компьютер, у нас есть администраторы и пользователи. У каждого человека свой аккаунт на нашем компьютере. Администраторы могут настраивать систему, пользователям же лучше не давать воли, чтобы что-то не сломали. Поэтому администраторы объединяются в группу admin, и ей дается доступ ко всему оборудованию, реально же ко всем файлам в каталоге dev, а пользователи, объеденные в группу users, и этой группе дается возможность читать и записывать файлы в общий каталог, с помощью которого они могут обмениваться результатами своей работы. Мы могли бы назначать права для каждого пользователя отдельно разрешая ему доступ к тому или иному файлу, но это слишком неудобно. Поэтому и были придуманы группы. Говорите, да ничего, можно назначить? Ну а теперь представьте что наши пользователи - это процессы. Вот тут вся краса групп выходит на передний план, группы используются не столько для обеспечения доступа для пользователей, сколько для управления правами программ, особенно их доступом к оборудованию. Для сервисов создаются отдельные группы и пользователь, от имени которого запущен он, сервис может состоять в нескольких группах, что обеспечивает ему доступ к определенным ресурсам.

А теперь давайте рассмотрим как посмотреть группы linux.

Группы в Linux

Все группы, созданные в системе, находятся в файле /etc/group. Посмотрев содержимое этого файла, вы можете узнать список групп linux, которые уже есть в вашей системе. И вы будете удивлены.

groups

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

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

Теперь, когда вы знаете зачем использовать группы в linux и какие они есть по умолчанию, рассмотрим управление группами LInux.

Управление группами Linux

Управлять группами можно и с помощью графического интерфейса. В KDE есть программа Kuser специально предназначенная для этого, в Gnome это выполняется с помощью настроек системы. Кроме того, в популярных дистрибутивах есть отдельные инструменты, такие как YaST в OpenSUSE или Настройки Ubuntu. Но с графическим интерфейсом я думаю вы разберетесь. А мы рассмотрим управление группами linux через терминал. Сначала разберемся с файлами, а уже потом с пользователями.

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

groups1

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

groups2

Здесь мы видим что дисковым устройствам sd* назначена группа disk, а это все значит, что пользователь, состоящий в этой группе, может получить к ним доступ. Или еще пример:

groups4

Все как мы рассматривали в предыдущем пункте. Но эти группы могут быть не только установлены системой, но и вы сами вручную можете менять группы файлов для этого есть команда chgrp:

chgrp имя_группы имя_файла

Например создадим файл test:

И изменим для него группу:

groups5

Теперь этот файл смогут прочитать все пользователи из группы adm.

Если вы хотите создать группу linux, это можно сделать командой newgrp:

sudo groupadd test

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

Управление группами Linux для пользователя выполняется с помощью команды usermod. Рассмотрим ее синтаксис и опции:

$ usermod опции имя_пользователя

  • -G - дополнительные группы, в которые нужно добавить пользователя
  • -g изменить основную группу для пользователя
  • -R удалить пользователя из группы.

Добавить пользователя в группу можно командой usermod:

sudo usermod -a -G имя_группы имя_пользователя

Можно добавить пользователя в группу linux временно, командой newgrp. Откроется новая оболочка, и в ней пользователь будет иметь нужные полномочия, но после закрытия все вернется как было:

sudo newgrp имя_группы

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

sudo usermod -G -a disk sergiy

Теперь вы можете монтировать диски без команды sudo:

mount /dev/sda1 /mnt

Посмотреть группы linux, в которых состоит пользователь можно командой:

groups6

Также можно использовать команду id. В первом случае мы просто видим список групп linux, во втором дополнительно указанны id группы и пользователя. Чтобы включить пользователя в группу Linux, для основной группы используется опция -g:

sudo usermod -g test sergiy

Теперь все каталоги в домашней папке пользователя имеют группу test. Удалить пользователя из группы в linux можно той же командой с опцией R:

sudo usermod -R группа пользователь

Ну и наконец, удалить группу Linux можно командой:

sudo delgroup имя_группы

Выводы

Как видите, группы пользователей Linux не такое уж сложное дело. Вы можете в несколько команд добавить пользователя в группу linux или дать ему полномочия на доступ к определенным ресурсам. Если вы надумали изменять группы для системных устройств, тут все не так просто, но в этом вопросе вам поможет статья про правила udev в linux. Теперь управление группами Linux вам не кажется таким сложным. Если остались вопросы, пишите в комментариях!

Favorite

Добавить в избранное

Главное меню » Linux » Изменить группы в Linux с помощью команды groupmod

(1 оценок, среднее: 5,00 из 5)


В предыдущих статьях вы изучали команды groupadd и groupdel. В этой статье вы узнаете о команде groupmod.

Команда groupmod в Linux изменяет данную группу, изменяя ее имя или идентификатор группы (GID).

Синтаксис команды такой:

Мы будем использовать sudo в примерах команд groupmod здесь.

Изменить имя группы с помощью команды groupmod

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

Хорошо, что вы изменили имя группы, но это не влияет на файлы, принадлежащие этой группе.

Посмотрим на реальные примеры.

Итак, вот файл, принадлежащий пользователю andreyex и группе test_group.

Теперь, если мы изменим имя группы с test_group на testgroup (удаляя подчеркивание из имени)

Он «меняет» владение группы файлом, чтобы отразить новое имя группы:

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

Изменить идентификатор группы с помощью команды groupmod

Вы можете изменить GID группы следующим образом:

Теперь это рискованная модификация и ее следует избегать. Во-первых, не будет выполняться никаких проверок в отношении определений входа в систему, таких как значения GID_MIN, GID_MAX, SYS_GID_MIN, SYS_GID_MAX, чтобы различать системные группы и нормальные группы.

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

Посмотрите это в примере ниже, где я изменил ID группы группового тестирования на 1020, и файл, принадлежащий этой группе, все еще отражает старый GID.

Если вам интересно, вы можете увидеть GID в файле /etc/group.

Мы надеемся, что вы стали лучше понимать команду groupmod. Любые вопросы или предложения приветствуются.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Читайте также: