Inspecter les enregistrements de connexion dans /var/run/utmp
Dans cette étape, vous apprendrez à propos du fichier /var/run/utmp
et comment des commandes telles que who
et w
obtiennent leurs informations à partir de celui-ci. Ce fichier est une partie cruciale de la manière dont Linux suit qui est connecté au système.
Le fichier /var/run/utmp
est un fichier binaire qui contient des informations sur les utilisateurs actuellement connectés au système. Il est constamment mis à jour à mesure que les utilisateurs se connectent et se déconnectent. Des commandes telles que who
, w
et users
lisent ce fichier pour afficher les informations de connexion actuelles.
Étant donné que /var/run/utmp
est un fichier binaire, vous ne pouvez pas simplement afficher son contenu avec des commandes telles que cat
ou less
comme vous le feriez avec un fichier texte. Cela résulterait en des caractères illisibles.
Essayons d'afficher son contenu avec cat
pour voir ce qui se passe (et comprendre pourquoi nous ne le faisons pas) :
cat /var/run/utmp
Vous verrez beaucoup de caractères brouillés, ce qui est normal pour un fichier binaire.
<binary_output>
Pour lire le contenu de /var/run/utmp
dans un format lisible par l'homme, vous utilisez généralement des commandes conçues pour analyser ce fichier, telles que who
ou w
, que vous avez utilisées dans les étapes précédentes.
Une autre commande qui lit et affiche spécifiquement le contenu de /var/run/utmp
est utmpdump
. Cette commande est utile pour le débogage ou l'examen des données brutes dans le fichier.
Utilisons utmpdump
pour afficher le contenu de /var/run/utmp
.
utmpdump /var/run/utmp
Vous devriez voir une sortie structurée et lisible, montrant les enregistrements de chaque session de connexion. La sortie exacte dépendra de l'état actuel du système, mais elle ressemblera à ceci :
Utmp dump of /var/run/utmp
[<type>] [<pid>] [<line>] [<id>] [<user>] [<host>] [<exit>] [<session>] [<tv_sec>] [<tv_usec>] [<addr_v6>]
...
[7] [ <pid> ] [ :0 ] [ :0 ] [ labex ] [ :0 ] [ 0, 0 ] [ <session_id> ] [ <timestamp> ] [ <usec> ] [ <ipv6_address> ]
...
La sortie montre différents champs pour chaque entrée dans le fichier utmp
, y compris le type d'entrée (comme la connexion d'un utilisateur), l'identifiant de processus, la ligne de terminal, le nom d'utilisateur, l'hôte, l'heure de connexion, etc.
Comprendre /var/run/utmp
vous aide à apprécier comment Linux suit les sessions utilisateur et comment des commandes telles que who
et w
fonctionnent en coulisse.
Cliquez sur Continuer pour terminer ce laboratoire.