Руководство FreeBSD
Пред. | Глава 13. Пользователи и основы управления учетными записями | След.

# 13.8. Группы

Группа это просто список пользователей. Группа идентифицируется по имени и GID (Group ID, идентификатор группы). В FreeBSD (и большинстве других UNIX╝-подобных системах) ядро для определения прав процесса использует два фактора: его ID пользователя и список групп, которым он принадлежит. Когда вы слышите что-то о ''group ID'' пользователя или процесса, это обычно означает только первую группу из списка.

Имена групп связываются с ID групп в файле `/etc/group`. Это текстовый файл с четырьмя разделенными двоеточием полями. Первое поле это имя группы, второе это зашифрованный пароль, третье это ID группы, а четвертое это разделенный запятыми список членов группы. Этот файл может быть безопасно отредактирован вручную (предполагается, конечно, что вы не сделаете синтаксических ошибок!). За более полным описанием синтаксиса обратитесь к странице справочника group(5).

Если вы не хотите редактировать `/etc/group` вручную, используйте команду pw(8) для добавления и редактирования групп. Например, для добавления группы, называемой `teamtwo`, и проверки ее существования вы можете использовать:

Пример 13-7. Добавление группы с использованием pw(8)

    # pw groupadd teamtwo
    # pw groupshow teamtwo
    teamtwo:*:1100:

Число `1100` это ID группы `teamtwo`. На данный момент в, `teamtwo` нет членов, и поэтому она практически бесполезна. Давайте изменим эту ситуацию, добавив `jru` в группу `teamtwo`.

Пример 13-8. Составление списка членов группы с использованием pw(8)

    # pw groupmod teamtwo -M jru
    # pw groupshow teamtwo
    teamtwo:*:1100:jru

Аргумент к параметру `-M` это разделенный запятыми список пользователей, являющихся членами группы. Из предыдущих разделов мы знаем, что файл паролей также указывает группу для каждого пользователя. Пользователь автоматически добавляется системой к списку групп; пользователь не будет показан как член группы при использовании pw(8) `groupshow`, но эта информация будет показана при использовании id(1) или похожего инструмента. Другими словами, с этим параметром программа pw(8) работает только с файлом `/etc/group`; она никогда не будет пытаться получить дополнительную информацию из файла `/etc/passwd`.

Пример 13-9. Добавление нового члена группы с использованием pw(8)

    # pw groupmod teamtwo -m db
    # pw groupshow teamtwo
    teamtwo:*:1100:jru,db

Аргументом к опции `-m` является разделенный запятыми список пользователей, добавляемых в группу. В отличие от предыдущего примера, пользователи добавляются в группу, а не замещают имеющийся список пользователей группы.

Пример 13-10. Использование id(1) для определения принадлежности к группам

    % id jru
    uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo)

Как вы можете видеть, `jru` является членом групп `jru` и `teamtwo`.

За дальнейшей информацией о pw(8), обратитесь к ее странице справочника, а за дополнительной информацией о формате файла `/etc/group` к странице справочника group(5).

Пред. | Начало | След.
Ограничение пользователей | Уровень выше | Безопасность

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам, связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.