¿Puede un usuario de Linux pertenecer a más de un grupo?


18

¿Puede un usuario de Linux pertenecer a más de un grupo?

Si está permitido, entonces un uso puede acceder a archivos de dos grupos, ¡eso sería bastante bueno!

Si no, ¿hay alguna forma alternativa de tener esta función?

Este problema no es lo mismo que garantizar que los archivos nuevos en un directorio pertenezcan al grupo o ayudarme a comprender los permisos de usuario / grupo de Ubuntu

Respuestas:


17

Sí, un usuario puede ser miembro de múltiples grupos :

Los usuarios están organizados en grupos, cada usuario está en al menos un grupo y puede estar en otros grupos. La membresía de grupo le brinda acceso especial a archivos y directorios que están permitidos para ese grupo.

Por ejemplo, puede agregar el usuario usernamea grupos group1y group2con el siguiente usermodcomando:

usermod -a -G group1,group2 username

14

Sí, un usuario normal de Unix puede ser miembro de varios grupos.

Sin embargo, solo hay un grupo de los cuales es el grupo principal del usuario .

Cuando se agrega un usuario, por ejemplo adduser, se puede especificar el grupo primario usando la --ingroupopción y agregar múltiples grupos secundarios como este en Debian / Ubuntu y similares:

$ # would create user gert and group gert
$ sudo adduser gert

$ # same, but no group 'gert' will be created, but made member of the existing
$ # group 'adm'
$ sudo adduser gert --ingroup adm

$ # secondary groups
$ sudo adduser gert superusers
Adding user `gert' to group `superusers' ...
Adding user gert to group superusers
Done.
$ sudo adduser gert debianfans

Se puede verificar de qué usuario es miembro utilizando id:

$ id
uid=1000(gert) gid=1000(gert) groups=1000(gert),4(superusers),5(debianfans)
               ^^^            ^^^^^^
               primary        secondary
               group          groups

También para otros usuarios, simplemente pasando su nombre de usuario como primer argumento a id.

Puede cambiar el grupo primario de un usuario utilizando la opción -g( --gid)usermod

$ usermod -g new_primary_group username

1

Sí, ver otras respuestas. Una alternativa son las listas de control de acceso.

setfacl
getfacl

Cada archivo puede tener una lista de usuarios y grupos que pueden acceder a él.

Una persona es un usuario y muchos grupos (los grupos solo pueden ser configurados por el usuario administrador / root). Un archivo es normalmente un usuario propietario y un grupo, con ACL puede ser un usuario propietario, más muchos otros usuarios, más muchos grupos.

El que uses depende de lo que necesites. Las ACL pueden ser un panel para usar, pero no necesitan administrador (excepto para instalar y habilitar, por lo general no está instalado por defecto). La otra forma es más simple pero menos poderosa.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.