¿Cuál es la diferencia entre grupo primario y grupo secundario en Ubuntu?
¿Cuál es la diferencia entre grupo primario y grupo secundario en Ubuntu?
Respuestas:
El grupo primario es el grupo que se aplica a usted cuando inicia sesión utilizando los métodos habituales (TTY, GUI, SSH, etc.).
Dado que los procesos generalmente heredan el grupo del padre, y su proceso inicial o shell tendría su grupo primario como el grupo, cualquier cosa que haga generalmente tiene el efecto del grupo primario sobre él (creando archivos, por ejemplo).
Los grupos secundarios son los grupos en los que puede iniciar procesos sin usar una contraseña de grupo, ya sea a través de sg
o iniciar sesión a través del newgrp
comando.
Entonces, si tiene un grupo primario x
y un grupo secundario y
,
touch foo
generalmente creará un archivo x
como propietario del grupo (a menos que el directorio principal sea SETGID para otro grupo). Sin embargo, puedes hacer:
sg y 'touch bar'
# or
newgrp y
touch baz
Luego bar
y baz
será creado con y
el grupo.
Sin embargo, si no tiene un grupo en sus grupos secundarios (digamos z
), los comandos sg
y newgroup
le pedirán la contraseña del grupo si los usa z
.
Si habla de grupos de sistemas de archivos, aquí se explican bastante bien el artículo de cyberciti . El grupo primario se usa de manera predeterminada al crear un nuevo archivo. Puedes probar esto
touch foo
ls -la foo
El archivo será de su propiedad y estará en su grupo principal. Los usuarios que también están en su grupo principal tendrán permisos de nivel de grupo en esos archivos.
Puede verificar sus grupos secundarios con
groups $(whoami)
También es posible compartir archivos con personas que no están en su grupo principal configurando Establecer ID de grupo en un directorio. Esto se explica aquí: carpeta compartida con SetGID .