![¿Por qué no puedo utilizar mi usuario recién creado con chown?](https://rvso.com/image/1452895/%C2%BFPor%20qu%C3%A9%20no%20puedo%20utilizar%20mi%20usuario%20reci%C3%A9n%20creado%20con%20chown%3F.png)
Así que estoy intentando crear un nuevo usuario y grupo, y luego cambiar la propiedad de un directorio a ese nuevo usuario/grupo. Sin embargo, cuando lo hago, chown vuelve con un mensaje de "nombre de usuario ilegal".
Aquí hay un script de shell simplificado que muestra lo que estoy intentando hacer:
#!/usr/bin/bash
# Create Group
dscl . create /Groups/_jira
dscl . create /Groups/_jira gid 301"
# Create User
dscl . create /Users/_jira
dscl . append /Groups/_jira GroupMembership _jira
# Change Ownership
chown -R _jira:_jira /Some/random/directory
... y el resultado que obtengo es:
chown: _jira: illegal user name
¿Me estoy perdiendo un paso? ¿Es porque el nombre de usuario tiene como prefijo un guión bajo?
Nota:Puedo enumerar todos los usuarios y grupos existentes y puedo ver el usuario _jira y el grupo _jira, y también ver que el usuario está asignado a ese grupo.
Respuesta1
No ha asignado un número de ID de usuario (lo que dscl llama UniqueID) al usuario _jira y, dado que la propiedad del archivo se registra mediante ID de usuario, no hay forma de transferir archivos a una cuenta sin uno. Agrega algo como:
dscl . create /Users/_jira UniqueID 301
También debes configurar el PrimaryGroupID del usuario, y lo usaría para asignarlo al grupo _jira en lugar de agregar el usuario al grupo:
dscl . create /Users/_jira PrimaryGroupID 301
Si desea seguir agregando una membresía secundaria en el grupo _jira, debe asignar algún otro ID de grupo como principal y luego agregar la membresía secundaria con dseditgroup:
sudo dseditgroup -o edit -a _jira -t user _jira
Esto no solo agrega "_jira" a la lista GroupMembership del grupo, sino que también agrega el UUID del usuario a la lista GroupMembers del grupo; se recomienda hacer ambas cosas y, si bien es posible hacerlo con dscl, es más sencillo con dseditgroup.