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

редактировать

В Unix-подобных системах несколько пользователей могут быть помещены в группы. POSIX и обычные Unix разрешения файловой системы разделены на три класса: пользователь, группа и другие. Использование групп позволяет организованно делегировать дополнительные возможности, такие как доступ к дискам, принтерам и другим периферийным устройствам. Этот метод, среди прочего, также позволяет суперпользователю делегировать некоторые административные задачи обычным пользователям, подобно группе администраторов в Microsoft Windows NT и ее производных.

A идентификатор группы, часто сокращенно GID, представляет собой числовое значение, используемое для представления определенной группы. Диапазон значений GID варьируется в разных системах; как минимум, GID может находиться в диапазоне от 0 до 32 767, с одним ограничением: группа входа в систему для суперпользователя должна иметь GID 0. Это числовое значение используется для ссылки на группы в / etc / passwd Файлы и / etc / groupили их эквиваленты. Файлы теневого пароля и Сетевая информационная служба также относятся к числовым GID. Идентификатор группы является необходимым компонентом файловых систем Unix и процессов.

Содержание
  • 1 Дополнительные группы
  • 2 Эффективные и реальные
  • 3 Условные обозначения
    • 3.1 Тип
    • 3.2 Зарезервированные диапазоны
    • 3.3 Специальные значения
  • 4 Персональные группы
  • 5 См. Также
  • 6 Ссылки
Дополнительные группы

В системах Unix, каждый пользователь должен быть членом хотя бы одной группы, первичной группы, которая определяется числовым GID записи пользователя в базе данных passwd, которую можно просмотреть с помощью команды getent passwd(обычно хранится в / etc / passwdили LDAP ). Эта группа называется идентификатором основной группы. Пользователь может быть указан как член дополнительных групп в соответствующих записях в базе данных группы, которые можно просмотреть с помощью getent group(обычно хранится в / etc / groupили LDAP ); идентификаторы этих групп называются идентификаторами дополнительных групп.

Эффективные и реальные

процессы Unix имеют эффективный (EUID, EGID), действительный (UID, GID) и (SUID, SGID) ID. Обычно они идентичны, но в процессах setgid они разные.

Условные обозначения

Тип

Первоначально использовалось 16-битное целое число со знаком. Поскольку в знаке не было необходимости - отрицательные числа не являются допустимыми идентификаторами группы - теперь вместо них используется целое число без знака, позволяющее использовать идентификаторы групп от 0 до 65 535. Современные операционные системы обычно используют беззнаковые 32-битные целые числа, которые позволяют использовать идентификаторы групп от 0 до 4 294 967 295.

Зарезервированные диапазоны

Многие системы Linux резервируют диапазон номеров GID от 0 до 99 для статически распределенных групп и 100–499 или 100–999 для групп, динамически выделяемых системой после установки. скрипты. Эти диапазоны часто указываются в /etc/login.defsдля useradd, groupaddи подобных инструментов.

На FreeBSD переносчики, которым нужен GID для своего пакета, могут выбрать бесплатный из диапазона от 50 до 999, а затем зарегистрировать это статическое распределение в портах / GID.

специальных значениях

  • 0 : суперпользователь обычно имеет GID, равный нулю (0).
  • -1: значение (gid_t) -1зарезервировано POSIX для идентификации пропущенного аргумента.
  • 65 534: ядро ​​Linux по умолчанию 2-2 = 65 534 (которое многие дистрибутивы Linux сопоставляют с именем группы "nogroup"), когда 32-битный GID не вписывается в возвращаемое значение 16- битовый системный вызов. Значение также возвращается, если имя группы во входящем пакете NFSv4 не соответствует какой-либо известной группе в системе.
Персональные группы

Многие системные администраторы также выделяют для каждого пользователя личная первичная группа, имя которой совпадает с именем пользователя для входа в систему, а также часто имеет тот же числовой GID, что и UID пользователя. Такие личные группы не имеют других участников и упрощают совместную работу с другими пользователями в общих каталогах, позволяя пользователям обычно работать с umask 0002. Таким образом, вновь созданные файлы могут иметь по умолчанию права на запись, разрешенные для членов группы, потому что это обычно дает доступ на запись только для членов личной группы, то есть только для владельца файла. Однако, если файл создается в совместно используемом каталоге, который принадлежит другой группе и имеет установленный бит setgid, то созданный файл автоматически станет доступным для записи членам группы этого каталога.

Во многих системах Linux переменная USERGROUPS_ENABв /etc/login.defsопределяет, будут ли команды типа useraddили userdelавтоматически добавлять или удалять связанную личную группу.

См. Также
Ссылки
  1. ^http: // pubs.opengroup.org/onlinepubs/9699919799.2018edition/basedefs/V1_chap03.html#tag_03_189
  2. ^Справочник портера FreeBSD, Раздел 6.26: Добавление пользователей и групп
  3. ^http://pubs.opengroup.org /onlinepubs/009695399/functions/chown.html
  4. ^https://lwn.net/Articles/532593/
Последняя правка сделана 2021-05-22 11:30:59
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте