Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
FREEDOM251

Freedom251 › Blog › .id

Ver usuarios en Linux: comandos para cuentas, sesiones e identidad

By Freedom251 Team · · 9 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

La orden adecuada depende de qué quieras averiguar. Ejecuta users para obtener una lista breve de los nombres con sesiones registradas; usa who para ver terminal, hora y otros datos de cada sesión. Si necesitas las cuentas locales, consulta /etc/passwd. Para saber con qué usuario y grupos trabaja tu proceso actual, ejecuta id. En equipos que usan systemd-logind, loginctl list-users y loginctl list-sessions ofrecen otra vista de las sesiones.

Estas órdenes no son intercambiables: una cuenta almacenada no demuestra que esté conectada, y la identidad del proceso actual no es una lista de cuentas.

As an Amazon Associate I earn from qualifying purchases.

Primero define qué significa “ver usuarios”

En Linux, “ver usuarios” puede referirse a tres consultas diferentes. Elegir la herramienta correcta evita interpretar mal el resultado:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Cuentas existentes: registros que el sistema puede resolver como cuentas. El archivo local /etc/passwd describe cuentas de ese equipo, pero la resolución de nombres también puede incorporar fuentes de identidad como NIS o LDAP, según la configuración.
  • Sesiones activas o registradas: usuarios que tienen una sesión anotada en el host. users muestra principalmente nombres; who añade datos de sesión.
  • Identidad del proceso actual: el UID, GID y los grupos efectivos o reales con los que se ejecuta un proceso. id responde a esta pregunta.

La documentación de users(1), who(1), passwd(5), id(1) y loginctl(1) distingue precisamente estas fuentes y finalidades.

Cómo listar rápidamente los usuarios conectados

Usa users para una lista de nombres

Abre una terminal y ejecuta:

users

El comando imprime los nombres de quienes aparecen conectados al host actual. Si no indicas un archivo, lee /var/run/utmp, el registro que contiene las entradas de sesiones activas. Es la opción más corta cuando solo necesitas saber qué nombres están registrados, sin terminales ni horarios. La definición de la página de manual es “print the user names of users currently logged in to the current host”.

Los nombres pueden repetirse si una misma cuenta tiene más de una sesión registrada. Por eso la salida no debe interpretarse automáticamente como un número de personas distintas. Si necesitas distinguir cada sesión, cambia a who.

Usa who para los detalles de cada sesión

who

who enumera las sesiones registradas y muestra información adicional, como el nombre de inicio de sesión, la terminal asociada, la hora de acceso y, según las opciones empleadas, datos de inactividad. Su fuente predeterminada también es /var/run/utmp. Esto lo hace útil para comprobar desde qué terminal se ha abierto una sesión y cuándo quedó registrada.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

La página de manual documenta asimismo /var/log/wtmp como el archivo que se utiliza habitualmente cuando se proporciona un archivo explícito a who. No confundas ese registro histórico con la vista actual de utmp: el primero se emplea para consultar el historial almacenado, mientras que el segundo es la fuente predeterminada para las sesiones presentes.

Una secuencia práctica es:

  1. Ejecuta users para una comprobación rápida de nombres.
  2. Si un nombre no basta, ejecuta who y revisa la terminal y la hora de cada entrada.
  3. Si buscas historial y tu sistema conserva el archivo correspondiente, consulta who con el archivo explícito que necesites, teniendo presente que el resultado dependerá de las entradas disponibles.

Cómo consultar las cuentas locales

Lee el archivo /etc/passwd

cat /etc/passwd

Cada línea de /etc/passwd describe una cuenta local y contiene siete campos separados por dos puntos. En orden, son:

  1. Nombre de inicio de sesión.
  2. Campo de contraseña.
  3. UID (identificador de usuario).
  4. GID (identificador del grupo principal).
  5. Campo informativo o gecos.
  6. Directorio personal.
  7. Shell de inicio de sesión.

La especificación de passwd(5) define este archivo como el texto que describe las cuentas de inicio de sesión del sistema. El segundo campo no debe interpretarse como una contraseña visible: su contenido y la política de autenticación dependen de la configuración del sistema. El objetivo de esta consulta es identificar registros y sus atributos, no verificar quién está conectado.

Busca una cuenta concreta sin recorrer toda la salida

Para comprobar si existe una entrada local con un nombre exacto, filtra el principio de la línea:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
grep '^nombre:' /etc/passwd

Sustituye nombre por la cuenta que buscas, por ejemplo ana. El carácter ^ exige que el nombre aparezca al principio y los dos puntos evitan coincidencias parciales como anabel cuando solo quieres ana. Si no aparece ninguna línea, eso indica que no hay una entrada local con ese nombre en el archivo; no demuestra por sí solo que la organización no tenga esa identidad en otra fuente.

Por qué /etc/passwd no siempre contiene todos los usuarios

Linux puede resolver cuentas mediante una base compuesta por varias fuentes. La interfaz descrita en getpwent(3) permite recorrer las entradas de usuarios que el sistema tenga configuradas, y esa base puede incluir servicios como NIS o LDAP además del archivo local. Por ello, cat /etc/passwd solo garantiza la vista de las cuentas locales descritas allí.

En un equipo integrado en un directorio centralizado, comprueba la configuración de resolución de identidades y utiliza las herramientas que esa instalación haya habilitado. La documentación confirma que NIS y LDAP son fuentes posibles, pero no permite afirmar qué fuente está activa en un ordenador concreto. Esta distinción es importante en servidores: una cuenta que no aparece en el archivo local puede seguir siendo válida para el sistema si procede de una fuente remota.

Cómo saber con qué usuario y grupos trabajas

Consulta la identidad del proceso actual

id

Sin argumentos, id informa sobre la identidad del proceso que ejecuta el comando. La salida incluye el usuario, su UID, el grupo principal y los grupos suplementarios que el proceso tiene disponibles. Es la comprobación correcta cuando una operación falla por permisos y necesitas saber quién eres para el sistema, no quién más tiene una cuenta.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Consulta la identidad de otra cuenta

id nombre

Al proporcionar un nombre, id consulta los datos de esa cuenta. También dispone de opciones para mostrar únicamente el UID, el GID o los grupos, y para elegir entre identificadores numéricos y nombres. Consulta id(1) en tu sistema para confirmar la sintaxis exacta de la variante que necesites.

Recuerda la diferencia: id no enumera todas las cuentas ni todas las sesiones. Describe una identidad concreta, normalmente la del proceso actual cuando omites el argumento.

Qué aporta loginctl en sistemas con systemd

Lista los usuarios gestionados por systemd-logind

loginctl list-users

loginctl consulta el gestor de inicio de sesión systemd-logind. Con list-users muestra los usuarios conectados que ese gestor conoce. Es una vista complementaria a users y who, no un reemplazo universal: solo estará disponible cuando el sistema utilice systemd-logind.

Lista las sesiones individuales

loginctl list-sessions

list-sessions enumera las sesiones actuales administradas por logind. Puede resultar más útil que una lista de nombres cuando una cuenta tiene varias sesiones y quieres inspeccionarlas como unidades separadas. La página de manual de loginctl(1) documenta ambas operaciones.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Si el comando no existe o no muestra la información esperada, verifica primero si el equipo cuenta realmente con systemd-logind. En otro sistema de inicio, utiliza users, who o las fuentes de identidad configuradas.

Qué comando elegir según tu objetivo

Necesidad Comando o fuente Qué devuelve Alcance y precaución
Ver nombres con sesiones registradas users Lista breve de nombres conectados Lee /var/run/utmp si no se indica otro archivo; un nombre puede aparecer más de una vez.
Revisar detalles de sesión who Sesiones, terminales, horas y, con opciones, inactividad Usa /var/run/utmp por defecto; /var/log/wtmp se emplea habitualmente al pasar un archivo explícito.
Consultar cuentas locales cat /etc/passwd Registros con siete campos: nombre, contraseña, UID, GID, información, directorio y shell No garantiza incluir identidades procedentes de NIS, LDAP u otras fuentes configuradas.
Buscar una cuenta local concreta grep '^nombre:' /etc/passwd La línea local cuyo nombre coincide exactamente Una ausencia en el archivo no descarta una cuenta remota.
Comprobar UID, GID y grupos id o id nombre Identidad y pertenencia a grupos de un proceso o usuario No es un listado de cuentas ni de sesiones.
Consultar usuarios mediante systemd loginctl list-users Usuarios conectados según systemd-logind Requiere que el sistema utilice systemd-logind.
Consultar sesiones mediante systemd loginctl list-sessions Sesiones actuales conocidas por logind Ofrece una vista de sesiones, no de todas las cuentas existentes.

Procedimiento para investigar una discrepancia

Cuando dos comandos parecen contradecirse, no los ejecutes al azar. Sigue este orden para identificar qué base está consultando cada uno:

  1. Define la pregunta: ¿buscas una cuenta, una sesión o la identidad del proceso? Anótalo antes de interpretar la salida.
  2. Comprueba sesiones: ejecuta users y luego who. Si ambos leen el registro de sesiones del host, las diferencias suelen deberse al nivel de detalle, no a que estén listando cuentas distintas.
  3. Comprueba la fuente local: ejecuta cat /etc/passwd o el filtro grep '^nombre:' /etc/passwd. Esto responde únicamente sobre el archivo local.
  4. Comprueba la identidad efectiva: ejecuta id para saber qué UID, GID y grupos tiene tu proceso.
  5. Comprueba logind: si el equipo usa systemd, compara loginctl list-users con loginctl list-sessions para distinguir usuarios de sesiones.
  6. Investiga fuentes remotas: si una identidad no aparece en /etc/passwd pero el sistema la reconoce, revisa la configuración de resolución de nombres y la posible integración con NIS o LDAP.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Errores de interpretación frecuentes

“Aparece en /etc/passwd, así que está conectado”

Incorrecto. El archivo describe una cuenta, mientras que users y who consultan sesiones registradas. Una cuenta puede existir sin tener ninguna sesión abierta en ese momento.

“users me da todos los usuarios del servidor”

No necesariamente. Devuelve nombres de usuarios con sesiones registradas en el host actual. No es un inventario de cuentas locales ni una consulta completa de un directorio corporativo.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

“Si no está en /etc/passwd, no existe”

La conclusión solo sería válida para la base local. Las APIs de cuentas pueden resolver entradas desde NIS, LDAP u otras fuentes configuradas. Comprueba la configuración de identidad antes de descartar la cuenta.

“id lista los usuarios que tienen permisos”

id muestra la identidad y los grupos de un usuario concreto, por defecto el proceso actual. Para conocer otras cuentas debes consultar sus registros, no extrapolar desde tus propios grupos.

“who y loginctl deben mostrar exactamente lo mismo”

Ambos pueden informar de sesiones, pero consultan mecanismos distintos: who usa los registros de utmp por defecto y loginctl pregunta a systemd-logind. La configuración, el tipo de sesión y el sistema de inicio determinan qué entradas conoce cada uno.

Ejemplos de uso seguros y reproducibles

Comprobar quién está conectado antes de una tarea administrativa

users
who

Usa la primera línea para obtener los nombres y la segunda para asociar cada nombre con una terminal y una hora. No confundas esta comprobación con una auditoría histórica: solo refleja las entradas que el registro actual conserva.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Verificar permisos antes de acceder a un recurso

id

Revisa el UID, el GID y los grupos que muestra el comando. Si esperabas pertenecer a un grupo y no aparece, la sesión actual puede no tener la misma identidad que otra cuenta o sesión; confirma el usuario consultado con id nombre.

Confirmar si un nombre es una cuenta local

grep '^nombre:' /etc/passwd

Una línea coincidente confirma el registro local y sus siete campos. Si no hay coincidencia, continúa con la comprobación de las fuentes de identidad configuradas en lugar de editar el archivo o crear una cuenta duplicada.

Buenas prácticas al leer y compartir la salida

  • Indica siempre qué comando ejecutaste. “Hay dos usuarios” puede significar dos nombres en users, dos sesiones en who o dos registros locales en /etc/passwd.
  • Conserva el contexto del host. Las sesiones registradas pertenecen al equipo actual; ejecutar el mismo comando en otro servidor puede producir una lista distinta.
  • Trata los UID y GID como identificadores técnicos. Un cambio de nombre no altera necesariamente el identificador numérico que aparece en los registros.
  • No publiques sin necesidad el contenido completo de /etc/passwd. Aunque el archivo está diseñado para describir cuentas, sus campos pueden revelar nombres, directorios personales y shells del sistema.
  • Si necesitas comparar resultados, ejecuta las órdenes en condiciones equivalentes y anota la hora. Las sesiones pueden cambiar entre una consulta y la siguiente.

Resumen operativo

Para una respuesta inmediata, empieza con users. Pasa a who cuando necesites saber qué terminal y qué hora corresponden a cada sesión. Consulta /etc/passwd para las cuentas locales, recordando que NIS o LDAP pueden ampliar la base de identidades. Ejecuta id para conocer tu UID, GID y grupos, y utiliza loginctl cuando systemd-logind sea el gestor de sesiones. Separar estas tres preguntas —cuenta, sesión e identidad del proceso— evita casi todos los diagnósticos equivocados.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

.id/etc/passwdlínea de comandosLinuxsystemdusersusuarios LinuxWHO

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.