В этом руководстве объясняется, как управлять и удалять группы в Linux, а также их функции при управлении пользователями и разрешениями.
Этот документ оптимизирован как для пользователей, ищущих быстрый ответ, так и для пользователей, желающих получить представление о группах Linux. В первом разделе показано практическое решение вопроса о том, как можно удалить группы в Linux. Ниже приведено общее руководство по группам.
Как удалить группу в Linux
Важно пояснить. Прежде чем удалять основную группу пользователя, необходимо сначала удалить пользователя.
Синтаксис для удаления групп в Linux следующий:
1 | sudo groupdel [имя группы] |
В следующем примере удаляемая группа называется linuxgroup. Команда для удаления группы - groupdel. Для ее выполнения требуются привилегии, поэтому перед ней необходимо указать sudo или выполнить ее от имени root.
Чтобы удалить гипотетическую группу с именем linuxgroup, выполните следующую команду, где linuxgroup нужно заменить на группу, которую вы хотите удалить в своей системе:
1 | sudo groupdel linuxgroup |
Если вы не получите сообщение об ошибке, то операция прошла успешно. Но вы можете проверить существующие группы, перечисленные в алфавитном порядке, выполнив следующую команду:
1 | getent group | cut -d: -f1 | sort |
Что такое группы Linux, как их создавать и управлять ими
Группы Linux позволяют нам назначать разрешения или доступ нескольким пользователям, добавляя их в разрешенную группу. Цель групп Linux - облегчить или позволить организовать и управлять пользователями их разрешенными и ограниченными ресурсами. Группы также позволяют администраторам совместно использовать определенные привилегии или все привилегии, например, при добавлении пользователей в группу sudo.
Когда мы определяем разрешения для файла или каталога, мы определяем три типа разрешений: разрешения для владельца, для группы, к которой принадлежит файл, и для других.
Информация о группах, такая как связанные пользователи, ID и аутентификация, хранится в файле /etc/group. Вы можете прочитать этот файл, выполнив команду ls, за которой следует путь:
1 | less /etc/group |
При чтении файла /etc/group вы увидите подобный список. Интерпретируйте его как таблицу, столбцы которой состоят из двух точек.
Возьмем для примера пятую строку. У нас есть четыре столбца, разделенные двумя точками.
Следующая таблица описывает каждый столбец, где adm - имя группы, x означает пароль, хранящийся в файле /etc/passwd, 4 означает идентификатор группы, а Group users перечисляет всех членов группы:
Файл /etc/shadow, указанный во втором столбце, хранит зашифрованные пароли пользователей.
Создание групп в Linux
Если вы хотите знать, как удалять группы в Linux, вы также должны знать, как их добавлять.
Команда для добавления групп в Linux - groupadd, за которой следует имя группы. Эта команда также требует привилегий для выполнения, поэтому она должна быть запущена от имени root или перед ней должно стоять sudo.
Синтаксис прост:
1 | sudo groupadd [Имя группы] |
В данном примере мы создадим группу с именем linuxgroup2.
1 | sudo groupadd linuxgroup2 |
Если нет сообщения об ошибке, то группа была создана успешно. Но вы можете проверить это, раскрасив список групп в алфавитном порядке, как это было сделано в предыдущем разделе, выполнив следующую команду:
1 | getent group | cut -d: -f1 | sort |
Как показать и изменить группу файлов
В этой части документа объясняется, как изменить группу файлов. По умолчанию файлы принадлежат к группе пользователя, который его создал.
Образец файла, используемый в этом руководстве, называется file. Синтаксис для изучения группы файлов следующий:
1 | ls -lg [Имя файла] |
Поэтому, чтобы увидеть группу file, мы выполним следующую команду:
1 | ls -lg file |
Чтобы изменить группу файлов, синтаксис следующий:
1 | sudo chgrp [имя группы] [имя файла] |
В данном случае мы хотим изменить группу file на linuxgroup2, выполнив следующую команду:
1 | sudo chgrp linuxgroup2 file |
Вы можете проверить результат, запустив ls еще раз.
1 | ls -lg file |
Как добавить пользователя во вторичную группу
Теперь файл file принадлежит группе linuxgroup2. Давайте добавим пользователя User1 в группу linuxgroup2. Но здесь важно уточнить. Пользователь User1 уже имеет свою основную группу, и мы не хотим ее заменять. Мы хотим добавить пользователя в дополнительную группу, предоставив ему права на файл, принадлежащий новой группе (linuxgroup2).
Синтаксис прост, как показано ниже:
1 | sudo usermod -a -G [имя группы] [пользователь] |
Поэтому, чтобы добавить пользователя User1 в группу linuxgroup2, мы выполним следующую команду:
1 | sudo usermod -a -G linuxgroup2 User1 |
Просмотрев файл /etc/group, можно убедиться что пользователь был успешно добавлен в группу.
1 | less /etc/group |
Как удалить пользователя из группы
Чтобы удалить пользователя из группы в Linux, используйте следующий синтаксис:
1 | sudo gpasswd --delete [Пользователь] [Группа] |
Поэтому, чтобы удалить пользователя User1 из группы linuxgroup2, выполните команду,:
1 | sudo gpasswd --delete User1 linuxgroup2 |