Iniciar sesión
Iniciar sesión

¿Qué es un daemon en informática?

¿Qué es un daemon en informática?
Hostman Team
Redactor técnico
Sistema Linux
23.10.2025
Reading time: 10 min

El término daemon proviene de la mitología griega antigua, donde hacía referencia a un ser inmaterial que influía en el mundo humano.

En informática, especialmente en los sistemas operativos tipo UNIX, un daemon es un proceso en segundo plano que se ejecuta sin interacción directa del usuario. No depende de una terminal o interfaz de usuario y normalmente se inicia con el arranque del sistema o bajo ciertas condiciones.

Qué es un daemon

La función principal de un daemon es proporcionar servicios específicos a otros procesos o usuarios. Por ejemplo, un daemon puede escuchar en puertos de red esperando conexiones, supervisar eventos del sistema y responder cuando se cumplen ciertas condiciones, gestionar tareas programadas (como cron), enviar correos electrónicos (sendmail) y mucho más.

En Windows, el equivalente más cercano a un daemon es un servicio (Service). La diferencia radica principalmente en cómo se inician, registran, gestionan y configuran dentro del sistema operativo. Sin embargo, su propósito es el mismo: garantizar la operación continua en segundo plano de ciertas funciones o servicios.

Características clave de un daemon

  • Se ejecuta en segundo plano: los usuarios normalmente no ven la interfaz del daemon; no escribe en la salida estándar (o la redirige a los registros) ni solicita entrada por teclado.

  • Autónomo: un daemon se inicia al arrancar el sistema cuando lo activa un sistema de inicio (como systemd) o manualmente por el usuario (mediante scripts, cron, etc.).

  • Larga duración: idealmente, un daemon se ejecuta indefinidamente a menos que ocurra un error crítico o reciba una señal de detención explícita.

  • Aislado: generalmente se ejecuta bajo una cuenta de usuario o grupo separada para minimizar privilegios, lo que hace que los servicios sean más seguros y fáciles de administrar.

  • Registro: en lugar de usar la entrada/salida estándar, los daemons registran información en archivos de registro o en el registrador del sistema (journald, syslog, etc.), lo cual es útil para la depuración y el diagnóstico.

Daemons en Linux

Históricamente, casi todas las tareas del sistema en segundo plano en Linux se implementan como daemons. El sistema operativo incluye docenas de ellos, cada uno responsable de una función específica. Aquí algunos ejemplos:

  • sshd (Secure Shell Daemon): escucha en el puerto 22 (por defecto) y permite que los usuarios remotos se conecten mediante SSH cifrado. Sin sshd, el acceso remoto por terminal sería casi imposible.

  • cron: un daemon planificador de tareas. Revisa las entradas del crontab y ejecuta scripts o comandos en horarios establecidos, como limpieza de registros, envío de informes, comprobaciones del sistema, etc.

  • syslogd / rsyslog / journald: daemons de registro del sistema que recopilan mensajes del kernel, utilidades, otros daemons y aplicaciones, y los guardan en archivos de registro o en el journal.

  • NetworkManager o Wicd: daemons que gestionan la configuración de red, automatizando conexiones a redes cableadas o inalámbricas, cambios, configuración de VPN y más.

Estos daemons se inician con el arranque del sistema y están registrados en el gestor de servicios (por ejemplo, systemd). Se ejecutan hasta que el sistema se apaga o reinicia. Los usuarios interactúan con ellos de forma indirecta, mediante archivos de configuración, comandos de terminal (service, systemctl) o solicitudes de red (si el daemon ofrece una interfaz HTTP/S, SSH u otra).

Cómo crear y gestionar daemons

Para implementar un daemon, siga estos pasos:

  1. Creación del proceso (fork): el proceso padre llama a fork() y continúa ejecutando el código del daemon en el proceso hijo.

  2. Desvincular del terminal de control (setsid): para evitar la interferencia del usuario (por ejemplo, cerrar la terminal), el daemon llama a setsid() para iniciar una nueva sesión y convertirse en su líder.

  3. Cerrar descriptores de entrada/salida estándar: como el daemon no debe escribir en la pantalla ni esperar entrada, stdin, stdout y stderr se cierran o se redirigen a archivos de registro.

  4. Manejo de señales y registro: para permitir un apagado limpio o la recarga de configuración, el daemon debe manejar señales (SIGTERM, SIGHUP, etc.). El registro suele realizarse mediante syslog o archivos.

  5. Bucle principal: tras la inicialización, el daemon entra en su bucle principal: espera eventos, los maneja y repite el ciclo hasta que se detiene.

Veamos cómo crear un daemon en Ubuntu 22.04 utilizando un servidor en la nube de Hostman.

1. Escribir el daemon en C

Cree un archivo llamado mydaemon.c e inserte el siguiente código:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <syslog.h>

int main() {
    // Abrir syslog
    openlog("mydaemon", LOG_PID, LOG_DAEMON);
    syslog(LOG_NOTICE, "Daemon started");

    // Bucle infinito principal
    while (1) {
        // Tareas en segundo plano: monitoreo, gestión de colas, etc.
        syslog(LOG_NOTICE, "Performing task...");
        sleep(60);
    }

    // Si el bucle termina
    syslog(LOG_NOTICE, "Daemon stopped");
    closelog();

    return 0;
}

2. Compilar el programa

Primero, actualice sus paquetes:

sudo apt update && sudo apt upgrade

Instale el compilador GCC si no está instalado:

sudo apt install gcc

Compile el daemon:

gcc mydaemon.c -o mydaemon

3. Mover el ejecutable

Mueva el binario a /usr/local/bin/, una ubicación estándar para utilidades personalizadas:

mv mydaemon /usr/local/bin/mydaemon

4. Crear un servicio systemd

Cree un archivo de unidad llamado mydaemon.service:

sudo nano /etc/systemd/system/mydaemon.service

Inserte el siguiente contenido:

[Unit]
Description=My Daemon
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/mydaemon
Restart=on-failure

[Install]
WantedBy=multi-user.target

Explicación de los campos:

  • Description: descripción mostrada en systemctl status.
  • After=network.target: asegura que el daemon se inicie después de que la red esté activa.
  • Type=simple: el daemon no crea subprocesos, se ejecuta como un solo proceso.
  • ExecStart: ruta al ejecutable del daemon.
  • Restart=on-failure: reinicia automáticamente si el daemon falla.
  • WantedBy=multi-user.target: hace que el servicio se inicie en el entorno estándar multiusuario.

5. Iniciar y supervisar el daemon

sudo systemctl daemon-reload          # Recargar configuración de systemd
sudo systemctl start mydaemon         # Iniciar el daemon
sudo systemctl status mydaemon        # Verificar estado

Si todo funciona correctamente, el estado mostrará active. Para ver los registros:

journalctl -u mydaemon.service -e

Ejemplos de uso de daemons

  • Servidores web

Su función es escuchar en un puerto de red (normalmente 80 o 443), aceptar solicitudes HTTP/HTTPS, generar una respuesta (una página HTML, datos JSON, etc.) y enviarla de vuelta al cliente. En la mayoría de los casos, un servidor web se inicia con el sistema y continúa ejecutándose hasta que el servidor se apaga o se detiene manualmente (por ejemplo, systemctl stop nginx).

  • Daemons de bases de datos

MySQL/MariaDB, PostgreSQL, MongoDB: todos son daemons. Se inician con el sistema y se ejecutan en segundo plano, aceptando solicitudes de aplicaciones cliente o servicios web. Estos daemons registran su actividad, admiten configuración mediante archivos y se gestionan con utilidades especiales (o systemd).

  • Planificadores de tareas (cron, atd)

El daemon cron revisa la tabla de planificación (crontab) y ejecuta programas en los horarios o intervalos definidos por el usuario. Esto permite automatizar copias de seguridad, actualizaciones del sistema, verificaciones de estado y muchas otras tareas rutinarias.

atd es un daemon similar, pero ejecuta tareas solo una vez en un momento específico (a diferencia de cron, que las ejecuta regularmente).

  • Servicios de acceso y control (sshd, xrdp)

sshd (Secure Shell Daemon) ofrece acceso remoto mediante el protocolo SSH. xrdp habilita conexiones de escritorio remoto utilizando el protocolo RDP. Actúa como un daemon que escucha conexiones de red en un puerto determinado.

  • Daemons del sistema de inicio (systemd, init, Upstart)

En los sistemas modernos, el papel del “daemon principal” lo cumple systemd (que reemplaza al antiguo sistema SysV init). systemd es el primer proceso que se inicia después del kernel y se encarga de lanzar y gestionar todos los demás servicios y procesos. Los inicia en paralelo y maneja sus dependencias. En resumen, systemd es en sí mismo un daemon que “orquesta” a todos los demás en el sistema.

Ventajas y desventajas de los daemons

Ventajas:

  • Automatización: los daemons permiten automatizar el comportamiento del sistema, desde responder a solicitudes de red hasta programar tareas, sin intervención del usuario.

  • Aislamiento: al ejecutarse bajo cuentas de usuario o grupo separadas y desligarse del terminal, aumentan la seguridad al limitar los daños potenciales en caso de compromiso.

  • Operación continua: un daemon puede seguir prestando servicios (como un servidor web) sin interrupción, incluso si el usuario cierra sesión o la consola.

  • Manejabilidad: Linux ofrece herramientas del sistema (por ejemplo, systemd, scripts init) para gestionar todos los daemons de forma centralizada: iniciar, detener, reiniciar y registrar.

Desventajas:

  • Complejidad de depuración: dado que los daemons se ejecutan en segundo plano y no muestran salida en la consola, la depuración requiere registros detallados y configuraciones más complejas (banderas de depuración, trazas, etc.).

  • Riesgos de seguridad: si un daemon se ejecuta con privilegios elevados (por ejemplo, como root), cualquier vulnerabilidad puede comprometer el sistema completo. Es recomendable ejecutarlos con permisos limitados.

  • Gestión de dependencias: algunos daemons pueden fallar si, por ejemplo, necesitan acceso a la red antes de que esté disponible. Los sistemas init modernos resuelven esto, pero con los scripts clásicos SysV era un problema común.

  • Mayor uso de recursos: cualquier proceso en ejecución constante consume recursos del sistema (memoria, CPU). Si hay demasiados daemons, el rendimiento puede verse afectado, especialmente en sistemas con recursos limitados.

Conclusión

Los daemons son fundamentales en la arquitectura de los sistemas operativos Linux, ya que ofrecen amplias capacidades de automatización y servicios en segundo plano. Permiten a los administradores configurar de manera flexible operaciones de red, tareas programadas, registros, sistemas de seguridad y muchos otros componentes.

Escribir su propio daemon requiere comprender procesos, señales, llamadas al sistema y prestar especial atención al registro y la seguridad.

Los sistemas init modernos (especialmente systemd) han simplificado la gestión de daemons y la lógica de servicios, haciendo que la creación de servicios personalizados sea más estructurada y flexible. Sin embargo, sigue siendo un campo complejo que exige diseño cuidadoso, depuración y mantenimiento continuo.

Si busca una solución confiable, de alto rendimiento y económica para sus flujos de trabajo, Hostman le ofrece opciones de Hosting VPS Linux, incluidas Debian VPS, Ubuntu VPS y VPS CentOS.

Sistema Linux
23.10.2025
Reading time: 10 min

Similares

Sistema Linux

Cómo comprimir archivos en Linux usando el comando tar

El comando tar funciona básicamente para agrupar todos los archivos y directorios en un solo archivo sin alterar su estructura. Este enfoque simplifica la organización, la creación de copias de seguridad y la transferencia de archivos. Una vez empaquetados, estos archivos se pueden comprimir utilizando varios métodos como gzip, bzip2 o xz, lo que ayuda a optimizar el almacenamiento y mejorar la velocidad de transferencia. Las distribuciones modernas de Linux en servidores Linux VPS incluyen versiones actualizadas de tar, lo que permite una integración fluida con herramientas de compresión como gzip para una gestión de datos más eficiente. Esto convierte a tar en un recurso valioso para los usuarios que administran grandes conjuntos de datos, ya que admite tanto la consolidación de archivos como la compresión en un solo comando. Gracias a su flexibilidad, tar se utiliza ampliamente en diferentes entornos Linux. No solo facilita la creación de copias de seguridad, sino que también agiliza la distribución de software y la gestión de datos importantes. Con una amplia gama de opciones disponibles, los usuarios pueden personalizar los archivos según sus necesidades, ya sea excluyendo directorios o archivos específicos, conservando permisos o protegiendo datos sensibles. Para cualquier persona que trabaje con grandes volúmenes de información o requisitos de almacenamiento complejos, aprender a fondo el comando tar es fundamental. Todo esto lo convierte en una utilidad importante que los usuarios de Linux deben conocer. Y si estás buscando una solución fiable, de alto rendimiento y económica para tus flujos de trabajo, Hostman ofrece opciones de Linux VPS Hosting, incluidas Debian VPS, Ubuntu VPS y VPS CentOS. Comprender la sintaxis de tar El comando tar se divide fundamentalmente en cuatro partes distintas: tar  -flags: Opciones utilizadas para ejecutar una acción específica Nombre del archivo Ruta al archivo o directorio deseado Se escribiría de la siguiente manera: tar -flags (nombre_del_archivo) (ruta) Archivar archivos y directorios tar utilizado con la opción -cvf permite archivar archivos y directorios. Para un archivo: tar -cvf collectionX.tar snake.txt Para un directorio: tar -cvf DRcollection.tar newDir/ Esto archivará el archivo snake.txt en collectionX.tar y el directorio newDir en DRcollection.tar. Si el objetivo es archivar varios archivos y directorios, utiliza los siguientes comandos. Para varios archivos: tar -cvf collectionX.tar snake.txt panther.txt Tiger.txt Para varios directorios: tar -cvf DRcollection.tar newDir1/ newDir2/ newDir3/ Comprimir archivos y directorios tar utilizado con la opción -czvf permite comprimir archivos y directorios. Para un archivo: tar -czvf collectionX.tar.gz snake.txt Para un directorio:  tar -czvf DRcollection.tar.gz newDir/ -c archiva archivos y directorios -z aplica compresión gzip -v es modo detallado y muestra el proceso de compresión -f permite asignar un nombre al archivo que se va a comprimir Añade .gz después de tar si deseas comprimir archivos y directorios. Para varios archivos: tar -cvf collectionX.tar.gz snake.txt panther.txt Tiger.txt Para varios directorios: tar -cvf DRcollection.tar.gz newDir1/ newDir2/ newDir3/ .bz2 se utiliza con tar y junto con la opción -cjf permite archivar y comprimir archivos y directorios. -j aplica compresión bzip2 Para un archivo con bz2: tar -cjf collectionX.tar.bz2 snake.txt Para un directorio con bz2: tar -cjf DRcollection.tar.bz2 newDir/ .xz se utiliza con .tar y junto con la opción -cJf permite archivar y comprimir archivos y directorios. -J significa compresión con xz. Para un archivo con xz: tar -cJf DRcollection.tar.xz file1.txt Para un directorio con xz: tar -cJf collectionX.tar.xz newDir/ Extraer archivos .tar comprimidos arch1.tar.gz, arch1.tar.bz2 y arch1.tar.xz son tres archivos comprimidos. Extraer .tar.gz: tar -xvzf arch1.tar.gz -x significa extracción de archivos. Extraer .tar.bz2: tar -xvjf arch1.tar.bz2 Extraer .tar.xz: tar -xvJf arch1.tar.xz Extraer archivos específicos usando comodines Si necesitas extraer solo un tipo específico de archivo de un archivo, haz lo siguiente: tar -xvf arch1.tar --wildcards '*.sh' Esto devolverá solo los archivos con la extensión .sh. --wildcards ayuda a buscar tipos de archivo específicos y permite la coincidencia de patrones. *.sh garantiza que solo se extraigan archivos del tipo .sh Extraer en un directorio específico Si necesitas extraer el archivo completo en un directorio específico, haz lo siguiente: tar -xvf arch1.tar -C ./destinationDir/pathDir/ -C cambia al directorio especificado. -xvf ayuda a extraer el archivo en esa ubicación. Gestionar archivos .tar Ver el contenido sin extraer Si necesitas saber qué hay dentro de un archivo sin descomprimirlo, utiliza comandos como estos: tar -tzf arch1.tar.gztar -tjf arch1.tar.bz2tar -tJf arch1.tar.xz -t proporciona detalles sobre el contenido de los archivos comprimidos sin extraerlos. Añadir archivos a un archivo existente Para añadir un archivo nuevo a un archivo: tar -rvf arch1.tar new.sh new.sh se añadirá a arch1.tar. Eliminar un archivo específico de un archivo Si necesitas eliminar un archivo de un archivo sin extraerlo, se puede hacer usando --delete. tar --delete -f arch1.tar new.sh  Esto eliminará el archivo new.sh del archivo arch1.tar sin extraerlo. Ten en cuenta que --delete no funciona con archivos comprimidos, solo con archivos. Comparar el contenido del archivo con el directorio actual Si necesitas examinar el contenido de tu directorio de trabajo actual y compararlo con el archivo, utiliza: tar --diff -f arch1.tar --diff ayuda a comparar el contenido de arch1.tar con el contenido disponible en el directorio de trabajo actual. Solución de problemas comunes de .tar "tar: Removing leading '/' from member names" Esta advertencia aparece cuando se utilizan rutas absolutas en un archivo: tar -cvf arch1.tar /home/user/file.txt Solución: Usa -p para conservar las rutas absolutas. tar -cvpf arch1.tar /home/user/file.txt "tar: Error opening archive: Unrecognized archive format" Este error ocurre cuando el archivo está dañado o se utiliza el comando de descompresión incorrecto. Solución: Verifica el tipo de archivo: file arch1.tar.gz Usa el comando de descompresión correcto: tar -xvzf arch1.tar.gz  # For .tar.gztar -xvjf arch1.tar.bz2  # For .tar.bz2tar -xvJf arch1.tar.xz   # For .tar.xz Si se sospecha corrupción, comprueba la integridad: gzip -t arch1.tar.gzbzip2 -tv arch1.tar.bz2 Conclusión La utilidad tar sirve como una herramienta importante para el archivado, la compresión y la extracción. Proporciona eficiencia, lo que la convierte en un componente crucial de la gestión del almacenamiento en Linux. Con una variedad de configuraciones y ajustes, tar funciona como una solución permanente que se adapta a diversos escenarios de uso. Opciones como -czvf y -xvzf determinan la forma en que los archivos se almacenan y se recuperan, otorgando a los usuarios un control total sobre la compresión de datos. Además, tar es compatible con múltiples herramientas de compresión como gzip, bzip2 y xz, lo que permite a los usuarios optimizar tanto la velocidad como la relación de compresión según sus necesidades específicas. Para profesionales de TI, desarrolladores y usuarios de Linux, aprender todo sobre tar es invaluable. Ya sea para gestionar copias de seguridad, distribuir datos de forma eficaz u optimizar el almacenamiento, tar es una de las herramientas de archivado más influyentes. Al seleccionar las configuraciones y comandos adecuados, los usuarios pueden mejorar significativamente su flujo de trabajo, automatizar tareas y gestionar grandes conjuntos de datos de manera eficiente.
28 January 2026 · 7 min to read
Sistema Linux

Creación de enlaces simbólicos en Linux: un tutorial paso a paso

Los symlinks, también conocidos como enlaces simbólicos, son como accesos directos en el mundo Linux. Le permiten crear un nombre nuevo (o enlace) que apunta a otro archivo, directorio o cualquier objeto dentro del sistema de archivos. Su principal ventaja es reducir la redundancia evitando la necesidad de tener varias copias del mismo archivo. Cuando tiene un symlink, los cambios realizados en el archivo original se reflejan en todos sus enlaces simbólicos. Esto elimina la molestia de actualizar varias copias individualmente. Además, los symlinks ofrecen una manera flexible de gestionar permisos de acceso. Por ejemplo, diferentes usuarios con directorios que apuntan a subconjuntos de archivos pueden limitar la visibilidad más allá de lo que permiten los permisos estándar del sistema de archivos. En esencia, los symlinks son indispensables para una gestión y organización eficiente de archivos, simplificando las actualizaciones y el control de acceso en sistemas complejos. Requisitos previos Para seguir este tutorial, necesitará: Un servidor en la nube, una máquina virtual o un ordenador que ejecute un sistema operativo Linux. En Hostman, puede desplegar un servidor con Ubuntu, CentOS o Debian en menos de un minuto. Creación de enlaces simbólicos con el comando ln El comando ln se utiliza para crear enlaces simbólicos en Linux. Siga estos pasos: Abra una ventana de terminal. Navegue al directorio donde desea crear el enlace simbólico. Utilice la siguiente sintaxis de comando para crear un symlink: ln -s /path/to/source /path/to/symlink Reemplace /path/to/source por la ruta real del archivo o directorio que desea enlazar, y /path/to/symlink por el nombre o ubicación deseada del enlace simbólico. Comprender las opciones del comando ln El comando ln ofrece varias opciones para personalizar la creación de symlinks:  -s: Crea un enlace simbólico.  -f: Sobrescribe un symlink existente.  -n: Trata los destinos de symlink como archivos normales. Explore estas opciones según sus necesidades de enlace. Creación de enlaces simbólicos a archivos Para crear un symlink a un archivo, utilice el comando ln con la opción -s. Aquí tiene un ejemplo de cómo crear un enlace simbólico a un archivo usando el comando ln. El siguiente comando crea un enlace simbólico llamado symlink_file en el directorio actual, que apunta al archivo /path/to/file: ln -s /path/to/file /path/to/symlink_file Reemplace /path/to/file por la ruta real del archivo y /path/to/symlink_file por el nombre deseado del symlink. En este ejemplo, la ruta del archivo es absoluta. También puede crear un enlace simbólico con una ruta relativa. Sin embargo, tenga en cuenta que para que el symlink funcione correctamente, cualquier proceso que acceda a él debe establecer primero el directorio de trabajo correcto; de lo contrario, el enlace puede parecer roto. Creación de enlaces simbólicos a directorios Puede utilizar el comando ln para crear un enlace simbólico que apunte a un directorio. Por ejemplo, el siguiente comando crea un enlace simbólico llamado symlink_directory en el directorio actual, que apunta al directorio /path/to/directory: ln -s /path/to/directory /path/to/symlink_directory Este comando crea un enlace simbólico llamado symlink_directory en su ubicación actual, enlazándolo con el directorio /path/to/directory. Sobrescribir un enlace simbólico de forma forzada Puede utilizar la opción -f con el comando ln. Por ejemplo, si la ruta en un symlink es incorrecta debido a un error tipográfico o si el destino se ha movido, puede actualizar el enlace así: ln -sf /path/to/new-reference-dir symlink_directory El uso de la opción -f garantiza que el contenido del symlink antiguo se reemplace por el nuevo destino. También elimina automáticamente cualquier archivo o symlink en conflicto si existe uno. Si intenta crear un symlink sin la opción -f y el nombre del symlink ya está en uso, el comando fallará. Verificación de enlaces simbólicos Puede mostrar el contenido de un symlink utilizando el comando ls -l en Linux: ls -l symlink_directory La salida mostrará el symlink y su destino: symlink_file -> /path/to/reference_file Aquí, symlink_file es el nombre del enlace simbólico y apunta al archivo /path/to/reference_file. ls -l /path/to/symlink La salida mostrará el symlink y su destino. Prácticas recomendadas para enlaces simbólicos Use nombres descriptivos para los enlaces simbólicos. Evite los enlaces circulares para prevenir confusiones del sistema. Actualice los symlinks si cambia la ubicación del destino. Casos de uso de los enlaces simbólicos Gestión de archivos de configuración: Enlazar archivos de configuración entre sistemas. Control de versiones: Enlazar simbólicamente bibliotecas comunes para proyectos de desarrollo. Copias de seguridad de datos: Crear symlinks hacia directorios de copia de seguridad. Posibles problemas y solución de errores Problemas de permisos: Asegúrese de que existan los permisos adecuados para la fuente y el symlink. Enlaces rotos: Actualice los symlinks si los archivos de destino se mueven o eliminan. Enlaces entre sistemas de archivos: Los symlinks pueden no funcionar entre diferentes sistemas de archivos. Conclusión Los symlinks son valiosos para optimizar la gestión de archivos y el mantenimiento del sistema. Simplifican las actualizaciones entre múltiples aplicaciones que comparten un archivo común, reduciendo la complejidad del mantenimiento. También ofrecen una alternativa a directorios como /etc, que suelen requerir acceso root para modificar archivos. Los desarrolladores encuentran útiles los symlinks para alternar sin problemas entre archivos de prueba locales y versiones de producción. Al seguir este tutorial, ha dominado el arte de crear enlaces simbólicos en Linux. Aproveche los symlinks para una gestión de archivos eficiente y una mayor personalización.
15 December 2025 · 5 min to read
Sistema Linux

Cómo listar usuarios en Linux

Administrar y proteger un sistema Linux requiere una supervisión y gestión cuidadosa de los usuarios. Saber quién está utilizando el sistema y qué acciones realiza es fundamental para mantener la seguridad y la eficiencia tanto en servidores como en equipos locales. Esta guía cubre varios métodos para comprobar usuarios en Linux, incluyendo el uso de la terminal y la interfaz gráfica (específicamente, el entorno Gnome). Los métodos explicados te ayudarán a obtener información sobre cuentas de usuario, sus actividades, historial de inicio de sesión y más. Existen varias formas de listar cuentas de usuario. A continuación, se presentan dos secciones que explican cómo acceder al listado de usuarios en Linux mediante la terminal o la interfaz gráfica. Terminal En esta sección exploraremos diferentes métodos para mostrar usuarios mediante la línea de comandos. Archivo /etc/passwd El archivo /etc/passwd contiene información sobre todos los usuarios registrados en el sistema. Cada línea representa una cuenta e incluye: nombre, contraseña, UID (ID de usuario), GID (ID de grupo), información adicional (GECOS), directorio home y shell de inicio de sesión. Para ver su contenido: cat /etc/passwd También puedes abrirlo con un editor de texto como nano o vim. Si utilizas un servidor en la nube de Hostman con un usuario no administrador, el archivo podría verse así: (Ejemplo visual en el documento original) Las contraseñas aparecen como x por razones de seguridad. Las contraseñas reales se almacenan en /etc/shadow. Si solo necesitas la lista de nombres de usuario: sed 's/:.*//' /etc/passwd Comando who El comando who muestra una lista de los usuarios activos, junto con su terminal, fecha y hora de inicio de sesión y, si es posible, la dirección IP: who Si solo deseas los nombres de los usuarios actualmente conectados: users Diferencia clave who → muestra información detallada users → solo nombres de usuarios Comando w El comando w ofrece un listado más detallado de usuarios activos: actividad actual, tiempo de inicio de sesión y carga del sistema: w Comando last El comando last permite ver el historial de inicios de sesión, incluyendo fechas, horas y origen de las conexiones. Es útil para auditoría y seguridad: last Comando lastlog El comando lastlog muestra cuándo inició sesión cada usuario por última vez: lastlog Interfaz gráfica Para quienes prefieren trabajar con una interfaz gráfica, explicamos cómo revisar usuarios en sistemas con Gnome. KDE Plasma ya no ofrece herramientas nativas para este propósito. En Gnome existen al menos dos formas de ver la lista de usuarios. Menú “Usuarios” Abre Configuración desde el buscador del sistema. Selecciona la pestaña Usuarios. Haz clic en Desbloquear (arriba a la derecha) para acceder a todas las funciones. Arriba verás la lista de usuarios existentes y abajo los detalles de cada cuenta. Utilidad “Users” También puedes instalar la utilidad adicional gnome-system-tools: sudo apt install gnome-system-tools (En otras distribuciones se usarán comandos como dnf, pacman, etc.) Después de instalarla: Abre el menú de búsqueda. Escribe Usuarios. Abre la utilidad instalada. La ventana mostrará la lista de cuentas y permitirá modificar ajustes como tipo de cuenta, contraseña y otros parámetros. Resumen Si trabajas desde la terminal, estas herramientas te serán útiles: /etc/passwd — contiene información de las cuentas existentes. who — lista usuarios activos con detalles. w — muestra actividades actuales de los usuarios. last — historial de inicios de sesión. lastlog — último inicio de sesión por usuario. Si utilizas Linux con Gnome: Usa el menú Usuarios, o la utilidad gnome-system-tools. Conocer quién accede a tu sistema y qué acciones realiza permite detectar problemas rápidamente y mejora la administración general del sistema. Elige el método que mejor se adapte a tus necesidades.
12 December 2025 · 4 min to read

¿Necesita ayuda para
elegir un producto?

Nuestros expertos están disponibles para ayudarle a encontrar la solución cloud
adecuada para su empresa, incluso si no sabe por dónde empezar.
Hostman's Support