Identificador de grupo

Número de grupo de cuentas del sistema Unix/POSIX; valor numérico utilizado para representar un grupo específico

En sistemas tipo Unix , se pueden agrupar varios usuarios . Los permisos de los sistemas de archivos POSIX y Unix convencionales se organizan en tres clases: usuario , grupo y otros . El uso de grupos permite delegar capacidades adicionales de forma organizada, como el acceso a discos, impresoras y otros periféricos . Este método, entre otros, también permite al superusuario delegar algunas tareas administrativas a usuarios normales, de forma similar al grupo Administradores de Microsoft Windows NT y sus derivados.

Un identificador de grupo , a menudo abreviado como GID , es un valor numérico utilizado para representar un grupo específico. [1] El rango de valores para un GID varía entre los diferentes sistemas; como mínimo, un GID puede estar entre 0 y 32.767, con una restricción: el grupo de inicio de sesión para el superusuario debe tener un GID 0. Este valor numérico se utiliza para hacer referencia a grupos en los archivos /etc/passwdy /etc/groupo sus equivalentes. Los archivos de contraseñas shadow y el Servicio de información de red también hacen referencia a GID numéricos. El identificador de grupo es un componente necesario de los sistemas de archivos y procesos de Unix .

Grupos suplementarios

En los sistemas Unix, cada usuario debe ser miembro de al menos un grupo, el grupo primario , que se identifica por el GID numérico de la entrada del usuario en la base de datos passwd, que se puede ver con el comando getent passwd(normalmente almacenado en /etc/passwdo LDAP ). Este grupo se conoce como el ID del grupo primario . Un usuario puede aparecer como miembro de grupos adicionales en las entradas relevantes de la base de datos de grupos, que se pueden ver con getent group(normalmente almacenado en /etc/groupo LDAP ); los ID de estos grupos se conocen como ID de grupo suplementarios .

Eficaz vs. real

Los procesos Unix tienen un ID efectivo (EUID, EGID), uno real (UID, GID) y uno guardado (SUID, SGID). Normalmente son idénticos, pero en los procesos setuidy setgidson diferentes.

Convenciones

Tipo

Originalmente, se utilizaba un entero de 16 bits con signo. Como el signo no era necesario (los números negativos no constituyen identificadores de grupo válidos), ahora se utiliza un entero sin signo, lo que permite identificadores de grupo entre 0 y 65.535. Los sistemas operativos modernos suelen utilizar enteros sin signo de 32 bits, que permiten identificadores de grupo entre 0 y 4.294.967.295.

Rangos reservados

Muchos sistemas Linux reservan el rango de números GID de 0 a 99 para grupos asignados estáticamente, y de 100 a 499 o de 100 a 999 para grupos asignados dinámicamente por el sistema en scripts posteriores a la instalación. Estos rangos suelen especificarse en /etc/login.defs, for useraddy groupaddherramientas similares.

En FreeBSD, los porteadores que necesitan un GID para su paquete pueden elegir uno gratuito del rango 50 a 999 y luego registrar esta asignación estática en puertos/GID. [2]

Valores especiales

  • 0: El superusuario normalmente tiene un GID de cero (0).
  • −1: El valor (gid_t) -1está reservado por POSIX para identificar un argumento omitido. [3]
  • 65,534: El kernel de Linux tiene como valor predeterminado 2 16 −2 = 65,534 (que muchas distribuciones de Linux asignan al nombre de grupo "nogroup") cuando un GID de 32 bits no cabe en el valor de retorno de una llamada de sistema de 16 bits. [4] El valor también lo devuelve idmapd si un nombre de grupo en un paquete NFSv4 entrante no coincide con ningún grupo conocido en el sistema.

Grupos personales

Muchos administradores de sistemas asignan también a cada usuario un grupo personal primario que tiene el mismo nombre que el nombre de inicio de sesión del usuario y, a menudo, también tiene el mismo GID numérico que el UID del usuario. Estos grupos personales no tienen otros miembros y facilitan la colaboración con otros usuarios en directorios compartidos, al permitir que los usuarios trabajen habitualmente con umask 0002. De esta manera, los archivos recién creados pueden tener de forma predeterminada permisos de escritura habilitados para los miembros del grupo, porque esto normalmente solo habilitará el acceso de escritura para los miembros del grupo personal, es decir, solo para el propietario del archivo. Sin embargo, si se crea un archivo en un directorio compartido que pertenece a otro grupo y tiene el bit setgid establecido , entonces el archivo creado también se volverá automáticamente escribible para los miembros del grupo de ese directorio.

En muchos sistemas Linux, la USERGROUPS_ENABvariable en /etc/login.defscontrola si los comandos como useraddo userdelagregan o eliminan automáticamente un grupo personal asociado.

Véase también

Referencias

  1. ^ "Definiciones". pubs.opengroup.org . Consultado el 6 de diciembre de 2021 .
  2. ^ Manual del administrador de FreeBSD, Sección 6.26: Cómo agregar usuarios y grupos
  3. ^ "chown". pubs.opengroup.org . Consultado el 6 de diciembre de 2021 .
  4. ^ "Espacios de nombres en funcionamiento, parte 5: Espacios de nombres de usuario [LWN.net]". lwn.net . Consultado el 6 de diciembre de 2021 .
Obtenido de "https://es.wikipedia.org/w/index.php?title=Identificador_de_grupo&oldid=1252033931"