This article needs additional citations for verification. (February 2023) |
utmp , wtmp , btmp y variantes como utmpx , wtmpx y btmpx son archivos en sistemas tipo Unix que realizan un seguimiento de todos los inicios y cierres de sesión en el sistema. [1]
Estos archivos no son archivos de texto normales, sino un formato binario que necesita ser editado por programas especialmente diseñados. La implementación y los campos presentes en el archivo difieren según el sistema o la versión de libc, y se definen en el archivo de encabezado utmp.h. El formato wtmp y btmp son exactamente como utmp, excepto que un valor nulo para "nombre de usuario" indica un cierre de sesión en el terminal asociado (el nombre de usuario real se encuentra al buscar el inicio de sesión anterior en ese terminal). Además, el valor "~" como nombre de terminal con nombre de usuario "shutdown" o "reboot" indica un apagado o reinicio del sistema (respectivamente). [2]
Estos archivos no son configurados por ningún módulo PAM (como pam_unix.so o pam_sss.so), sino por la aplicación que realiza la operación (por ejemplo, min getty , /bin/login o sshd). Por lo tanto, es obligación del propio programa registrar la información utmp.
Utmpx y wtmpx son extensiones de los originales utmp y wtmp, originarios de Sun Microsystems . Utmpx se especifica en POSIX . [3] Los archivos utmp, wtmp y btmp nunca fueron parte de ningún estándar oficial de Unix, como Single UNIX Specification , mientras que utmpx y las API correspondientes sí lo son. [4] [5] Si bien algunos sistemas crean archivos más nuevos diferentes para las variantes de utmpx y tienen formatos anteriores obsoletos/obsoletos, este no siempre es el caso. Linux , por ejemplo, usa la estructura utmpx en lugar de la estructura de archivos anterior.
Dependiendo del sistema, estos archivos pueden encontrarse comúnmente en diferentes lugares (lista no exhaustiva):
AIX : [6]
/etc/utmp/var/adm/wtmp
Linux :
/var/ejecutar/utmp/var/registro/wtmp/var/registro/btmp
Solaris : [7]
/var/adm/utmp (obsoleto), /var/adm/utmpx/var/adm/wtmp (obsoleto), /var/adm/wtmpx
HP-UX :
/etc/utmp (obsoleto), /etc/utmpx/var/adm/wtmp (obsoleto), /var/adm/wtmpx/var/adm/btmp (obsoleto), /var/adm/btmpx
FreeBSD 9.0 introdujo nuevos archivos y agregó soporte para utmpx: [8]
/var/run/utx.active (reemplaza a utmp)/var/log/utx.lastlogin (reemplaza a lastlog)/var/log/utx.log (reemplaza a wtmp)
Diferentes comandos permiten a los usuarios consultar la información almacenada en esos archivos. Esto incluye los programas who (que muestra los usuarios actuales del sistema), last (que muestra los últimos usuarios conectados) y lastb (que muestra los últimos intentos fallidos de inicio de sesión; específico de Linux).