(8 respuestas)
Cerrado hace 3 años.
Supongamos que estoy conectado con el usuario takpar
:
[email protected]:/$
Como root, agregué takpar
como miembro del grupo webdev
usando:
# usermod -a -G webdev takpar
Pero parece que no se ha aplicado, porque por ejemplo no puedo entrar en un webdev
directorio que tiene permiso de lectura para el grupo:
400169 drwxr-x--- 3 webdev webdev 4.0K 2011-08-15 22:34 public_html
[email protected]:/home/webdev/$ cd public_html/
bash: cd: public_html/: Permission denied
Pero después de reiniciar tengo acceso como esperaba. Como este tipo de cambio de grupo está en mi rutina, ¿hay alguna forma de aplicar cambios sin necesidad de reiniciar?
Respuesta
Parece que no hay forma de que la sesión actual reconozca el nuevo grupo, por ejemplo, el administrador de archivos no funcionará con los nuevos cambios. Pero volver a iniciar sesión hará el trabajo.
El su
El comando también es apropiado para los comandos temporales en la sesión actual.
Respuesta aceptada:
Solución local:use su yourself
para iniciar sesión de nuevo. En la nueva sesión, se le considerará como miembro del grupo.
Páginas man para newgrp
y sg
también podría ser de su interés cambiar su ID de grupo actual (e iniciar sesión en un nuevo grupo):
-
Para usar
webdev
ID de grupo (y privilegios) en su uso actual de shell:newgrp webdev
-
Para iniciar un comando con alguna identificación de grupo (y mantener los privilegios actuales en su shell), use:
sg webdev -c "command"
(
sg
es comosu
pero para grupos, y debería funcionar sin la contraseña del grupo si aparece como miembro del grupo en los datos del sistema)