GNU/Linux >> Tutoriales Linux >  >> Linux

¿Necesita usar Newgrp o Su (o cerrar sesión y volver a iniciar sesión) para solicitar nuevas membresías grupales?

¿Qué es lo que hace que la nueva membresía de grupo requiera un nuevo inicio de sesión (o un nuevo shell de inicio de sesión iniciado por su o newgrp ) para ser visible?

Simplemente ejecutando otra instancia de bash (o cualquier otro shell) con --login no funciona, pero algo que es suid root como su o newgrp funciona.

¿Se hereda algo del shell principal o se almacena en caché que oculta nuevas membresías de grupo?

Respuesta aceptada:

Cuando se crea un proceso secundario, el ID de usuario del proceso y los ID de grupo se heredan de su proceso principal.

Entonces, cuando cambia los grupos de sus usuarios (en realidad, cambia los archivos de configuración en algún lugar del disco), los procesos no lo notarán automáticamente y cambiarán sus ID de grupo (los procesos que no son raíz no tienen derechos para eso de todos modos).

Y cuando inicias bash... bueno, simplemente inicias bash, no sucede nada especial. Simplemente hereda los ID de grupo de los padres (shell gráfico u otro bash tal vez).

Pero cuando ejecuta su o inicia sesión, sucede toda la magia. Verifican si tiene permiso para iniciar sesión y cambiar su identificación de usuario y de grupo (usando llamadas al sistema que requieren una identificación raíz efectiva, por cierto, es por eso que tienen establecido el bit suid) para que todos sus procesos secundarios hereden estas identificaciones.


Linux
  1. Introducción a los comandos chgrp y newgrp de Linux

  2. Use mount --bind para mover el sitio web y el directorio de correo electrónico de un servidor ISPConfig 3 a un nuevo directorio

  3. Use mount --bind para mover el sitio web y el directorio de correo electrónico de un servidor ISPConfig 3 a un nuevo directorio

  4. Antivirus en Linux:¿realmente debería usarlo y, de ser así, cuándo lo necesito?

  5. Hashing de contraseñas y por qué lo necesitamos

¿Qué es chroot jail y cómo usarlo?

Cómo instalar y usar Helm en Kubernetes

¿Cómo instalar y usar Linux Screen?

Cómo instalar y usar PuTTY en Linux

Linux tiene una nueva aplicación de autenticación, y es bastante fácil de usar para cualquiera

¿Cambiar propietario y grupo en C?