Listar cuentas de usuario en Mac desde la línea de comandos
Tabla de contenido:
Los administradores de Mac pueden encontrarse en una situación en la que necesitan mostrar una lista de todas las cuentas de usuario en una Mac en particular a través de la línea de comandos. Revisaremos algunos métodos para que las personas avanzadas enumeren todas las cuentas, tanto de usuario como de sistema, en cualquier Mac con cualquier versión del software del sistema Mac OS X.
Algunos enfoques básicos preliminares para esto serían acceder a la pantalla de inicio de sesión o enumerar el contenido del directorio /Usuarios, aunque si una cuenta de usuario está oculta, no se mostrará en la pantalla de inicio de sesión y es igualmente sencillo ofuscar a un usuario desde la carpeta /Usuarios.Además, la existencia de un nombre en el directorio /Users/ no es infalible, ya que puede eliminar una cuenta de usuario pero conservar el directorio de inicio de los usuarios. Como resultado, si bien esos enfoques pueden ser apropiados para el usuario ocasional de Mac que busca mostrar qué usuarios tienen en una computadora, ninguno de esos métodos es particularmente suficiente para la mayoría de las necesidades de los administradores. Pero, al pasar a la línea de comando, puede revelar todas las cuentas de usuario en una Mac, ya sean cuentas de usuario generales de usuarios activos, cuentas de administrador, así como cualquier cuenta del sistema.
Cómo enumerar todas las cuentas de usuario en una Mac desde la línea de comandos
Abra la Terminal si aún no lo ha hecho, ya sea en la máquina local para la que desea enumerar las cuentas de usuario, o conectándose a una Mac remota en la que le gustaría ver las cuentas de usuario . Luego usaremos el comando 'dscl', que funciona en todas las versiones del software del sistema Mac OS X.
Ver todos los usuarios y cuentas en una Mac
dscl . lista /Usuarios
El beneficio (o el problema) de este enfoque es que no solo enumera todas las cuentas de usuario en una Mac, sino que también muestra cada daemon y cuenta de proceso del servidor. Esto incluiría nombres de usuario como Paul, Bob, Jill, pero también demonios, cuentas del sistema y usuarios de procesos como networkd, windowsserver, daemon,body, root, _spotlight, _ard, _appserver, _iconservices y muchos más.
Si la lista completa de usuarios no es deseable, puede excluir fácilmente todas las cuentas de proceso y daemon _underscore ejecutando la salida a través de grep, como mostraremos a continuación.
Mostrar solo cuentas de usuario
dscl . lista /Usuarios | grep -v '_'
Este comando filtrará cualquiera de los usuarios daemon prefijados con guión bajo, que en realidad no son cuentas de usuario. Como resultado, obtendrá una lista mucho más corta de nombres de usuario, pero aún encontrará tres nombres de usuario incluidos que no son cuentas de usuario típicas, pero que son normales en las instalaciones de Mac OS X; daemon, nadie y raíz.
Mostrar todas las cuentas de usuario, directorios de usuario e información de GECOS de usuario en una Mac
Otro enfoque sería mostrar y enumerar una lista detallada de cuentas de usuario, el directorio de cuentas de usuario asociado y la información de GECOS de la cuenta de usuario (que suele ser una descripción de la cuenta o un nombre de usuario completo ). Si se pregunta cuáles son algunas de las cuentas del sistema y cuentas de ID de usuario de proceso en las listas mencionadas anteriormente, este enfoque ofrece más detalles, incluida la descripción de gecos para cada cuenta (por ejemplo, el usuario _qtss es el demonio del servidor de transmisión de QuickTime)
dscacheutil -q usuario
La salida de ese comando será bastante extensa, por lo que es posible que desee canalizar el resultado a través de más o menos o redirigirlo a un archivo de texto para facilitar el análisis.
Es probable que existan otros medios para mostrar todas las cuentas de usuario en una Mac, independientemente de la versión del sistema. Si conoce algún método informativo eficaz que no se cubra aquí, compártalo en los comentarios.