El comando w en Linux: ver usuarios conectados y su actividad

Introducción

En la administración de sistemas Linux, conocer quién está conectado y qué está haciendo en cada momento es fundamental para detectar problemas de rendimiento, auditorías de seguridad o simplemente para ayudar a un usuario.

¿Qué es el comando w?

El comando w es una utilidad estándar que muestra un resumen de los usuarios actualmente conectados al sistema, junto con la carga promedio y el tiempo que cada uno ha estado inactivo. Combina información de who, uptime y ps en una sola vista.

Sintaxis básica y opciones más usadas

La forma más simple es ejecutar w sin argumentos. Sin embargo, dispone de varias opciones que permiten filtrar o cambiar el formato de la salida.

  • -h: omite la línea de encabezado.
  • -s: usa el formato corto, sin el tiempo de login, el JCPU y el PCPU.
  • -f: alterna la visualización del campo FROM (el hostname o IP desde donde se conectó).
  • -u: ignora el nombre de usuario al calcular la carga y los tiempos.
  • usuario: muestra solo la información de un usuario concreto.

Entendiendo la salida de w

La salida típica incluye varias columnas:

  • USER: nombre del usuario que inició la sesión.
  • TTY: terminal o pseudo‑terminal asociada.
  • FROM: host o IP desde la que se originó la conexión (puede estar oculto con -f).
  • LOGIN@: hora en que el usuario inició sesión.
  • IDLE: tiempo que ha permanecido sin actividad.
  • JCPU: tiempo de CPU utilizado por todos los procesos vinculados a esa terminal.
  • PCPU: tiempo de CPU usado por el proceso actualmente en primer plano.
  • WHAT: comando o aplicación que está ejecutando el usuario en ese momento.

Además, la primera línea de la salida muestra la hora actual, el tiempo que el sistema lleva encendido, el número de usuarios conectados y la carga media de 1, 5 y 15 minutos.

Ejemplos prácticos

  • Ver todos los usuarios con formato corto: w -s
  • Ocultar el encabezado para procesar la salida con scripts: w -h
  • Mostrar solo la actividad del usuario ‘juan’: w juan
  • Desactivar la columna FROM para ahorrar ancho: w -f
  • Combinar opciones: w -hs juan (encabezado oculto, formato corto, solo juan)

Consejos y trucos para administradores

Aunque w brinda una vista inmediata, combinarlo con otras herramientas mejora el monitoreo:

  • Use watch -n 5 w para actualizar la pantalla cada cinco segundos y detectar cambios en tiempo real.
  • En scripts de auditoría, extraiga el campo WHAT con awk '{print $11}' (ajustando según la presencia de FROM).
  • Si necesita guardar un historial, redirija la salida a un archivo con timestamp: date +"%Y-%m-%d %H:%M:%S" >> wlog.txt && w >> wlog.txt
  • En servidores con muchos usuarios, combine w con grep para localizar rápidamente a un usuario sospechoso.

Conclusión

El comando w es una herramienta ligera pero poderosa que cualquier administrador de Linux debería tener a mano. Proporciona, en un solo vistazo, información esencial sobre quién está conectado, qué está haciendo y cómo afecta al rendimiento del sistema. Dominar sus opciones y saber combinarlo con watch, awk o redirecciones le permitirá realizar tareas de monitoreo y diagnóstico de forma más eficiente.

Esta obra está bajo una Licencia Creative Commons Atribución 4.0 Internacional para Francesc Roig francesc@vivaldi.net .

EspañolesEspañolEspañol