¿Cómo puedo encontrar mi ID de usuario y grupo en Mac OS X?
Tratando de ejecutar este compand en la terminal:
sudo chown -R yourid:yourgroup local
Sin embargo, no tengo ni idea de cuál es mi ID y mi grupo, ni de dónde encontrarlos. ¿Alguna idea?
Tratando de ejecutar este compand en la terminal:
sudo chown -R yourid:yourgroup local
Sin embargo, no tengo ni idea de cuál es mi ID y mi grupo, ni de dónde encontrarlos. ¿Alguna idea?
En OS X, tu grupo primario es siempre staff
a menos que tú o tu gestor de directorios de usuarios lo hayan cambiado.
¿Qué es un grupo primario? El grupo primario de un usuario es por defecto el propietario de todos los archivos creados por ese usuario.
A efectos de chmod
en su ordenador, puede utilizar su identificación numérica de usuario (por ejemplo, 501), o su nombre de cuenta (por ejemplo, danielbeck
). Este último es diferente del nombre de usuario que suele verse en la interfaz de usuario (por ejemplo, Daniel Beck).
Puede determinar el nombre de su cuenta utilizando cualquiera de las siguientes opciones:
Es el nombre de su directorio principal (a menos que lo haya personalizado) en el título o la barra lateral de Finder
Ejecute whoami
en Terminal - así que un chown -R $(whoami):staff
debería ser suficiente. También puedes obtener tu grupo primario con groups $(whoami) | cut -d' ' -f1
.
Abra Preferencias del sistema “ Usuarios y grupos, desbloquee el panel si es necesario, haga clic con el botón derecho en su nombre de usuario (la única entrada de la lista en la sección Usuario actual) y seleccione Opciones avanzadas…. Es el campo Nombre de la cuenta en la ventana de diálogo recién abierta. Este diálogo también le muestra su grupo principal.
Ejecute id
en la Terminal para obtener una salida más detallada. Esto incluirá su identificación numérica de usuario. También listará todos los grupos de los que eres miembro, no sólo tu grupo primario. El primer grupo es el principal.
Utiliza el comando id
desde el terminal. Se mostrará tu uid y los grupos a los que perteneces. Por ejemplo, aquí está mi salida mostrando mi id de usuario (534), id de grupo (20) y los grupos a los que pertenezco (también 20).
uid=534(galuga) gid=20(staff) groups=20(staff)
Esto mostrará su ID de usuario.
$ id -u
502
Esto mostrará sus nombres de grupo. Los nombres de los grupos están entre paréntesis.
$ id
uid=502(whoami) gid=20(staff) groups=20(staff),702(com.apple.sharepoint.group.2),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),33(_appstore),100(_lpoperator),204(_developer),395(com.apple.access_ftp),398(com.apple.access_screensharing),399(com.apple.access_ssh)
Sólo comentaría si pudiera. No tengo suficiente karma en este sitio.
No tengo ni idea de por qué alguien ha votado a la baja a @callaginn, ya que aporta un punto válido.
Los siguientes métodos son válidos (y probablemente las mejores opciones para el shell scripting):
id -u # returns UID
id -un # returns username
id -g # returns primary (a.k.a. effictive) GID
id -gn # returns primary Group Name
Ver man id
para más opciones.
Para responder a esta pregunta específica si estuviera escribiendo un script que funcionara en cualquier entorno, no asumiría que el grupo por defecto staff
está en uso y en su lugar haría lo siguiente si estuviera escribiendo un script que pudiera ser ejecutado por cualquier usuario (independientemente de que haya modificado su sistema o no):
chown "$(id -un):$(id -gn)" some_file
Siempre es mejor ser agnóstico con la plataforma siempre que sea posible (si no es demasiado sacrificado), ya que incurrirás en menos deuda técnica más adelante.
Tenga en cuenta que la bandera chown
de -R
debe usarse con la máxima confianza. Podría realmente estropear su sistema (Aunque vale la pena señalar que Apple lo hizo difícil desde que implementó System Integrity Protection
).
Considere, por ejemplo, si usted fuera a chown -R 755 /var
en lugar de chown -R 755 /var/www
como root con System Integrity Protection
deshabilitado creo que usted estaría en la misma. No puedo decirte qué se rompería primero, pero se rompería primero en un sistema Darwin, pero por favor toma mi palabra de que no sería bonito.
Esperemos que alguien encuentre esto útil.