GNU/Linux >> Tutoriels Linux >  >> Linux

Comment trouver des utilisateurs actuellement connectés sous Linux

Un administrateur système Linux doit garder un œil sur qui est actuellement connecté au système Linux et ce qu'il fait. Nous savions déjà comment trouver les derniers utilisateurs connectés sous Linux. Comment identifieriez-vous qui est actuellement connecté à votre système Linux et ce qu'il fait ? Facile! Ce didacticiel répertorie différentes méthodes pour rechercher des utilisateurs actuellement connectés sous Linux.

1. Trouver les utilisateurs actuellement connectés sous Linux en utilisant w commande

Dans les systèmes d'exploitation Linux, il existe une commande spéciale à une seule lettre appelée w qui vous aide à trouver qui est connecté et ce qu'il fait dans le système. Il s'agit de l'outil de ligne de commande le plus couramment utilisé pour afficher les informations sur les utilisateurs actuellement sur le serveur et leurs processus.

Le w La commande est souvent utile lorsque vous administrez un serveur Linux auquel de nombreux utilisateurs accèdent fréquemment. Vous pouvez tous les suivre sans avoir à installer d'outils ou d'applications supplémentaires.

Le w La commande affiche divers détails utiles, notamment :

  • l'heure actuelle,
  • depuis combien de temps le système fonctionne,
  • combien d'utilisateurs sont actuellement connectés,
  • et les moyennes de charge du système pour les 1, 5 et 15 dernières minutes.

Le w La commande récupère des informations sur qui est actuellement connecté à partir de /var/run/utmp fichier et récupère les informations de processus à partir du /proc fichier.

Voyons maintenant comment utiliser w commande pour afficher qui est connecté sur votre machine Linux et ce qu'il fait.

L'utilisation typique de w la commande est :

$ w [options] user

Lorsque vous exécutez la commande w sans aucune option, elle affichera tous les utilisateurs actuellement connectés à votre système Linux :

$ w

Exemple de résultat :

 08:42:30 up 28 min,  2 users,  load average: 1.30, 0.87, 0.45
USER     TTY      FROM             [email protected]   IDLE   JCPU   PCPU WHAT
sk       tty1     -                08:41   42.00s  0.10s  0.06s -bash
ostechni pts/1    192.168.225.37   08:42    6.00s  0.09s  0.01s w

Comme vous pouvez le voir dans la sortie ci-dessus, il y a actuellement deux utilisateurs (sk et ostechni ) connecté à mon serveur Ubuntu. Le w La commande affiche les détails suivants pour les utilisateurs individuels :

  • nom de connexion,
  • le nom du terminal,
  • adresse IP source à partir de laquelle l'utilisateur s'est connecté,
  • heure de connexion,
  • temps d'inactivité,
  • Temps JCPU (le temps utilisé par tous les processus attachés au tty),
  • Temps PCPU (le temps utilisé par le processus en cours),
  • et la ligne de commande de leur processus actuel.

Si vous souhaitez afficher les détails d'un utilisateur connecté spécifique (par exemple ostechnix), la commande serait :

$ w ostechnix 
 08:51:36 up 37 min,  2 users,  load average: 1.12, 1.06, 0.76
USER     TTY      FROM             [email protected]   IDLE   JCPU   PCPU WHAT
ostechni pts/1    192.168.225.37   08:42    0.00s  0.09s  0.01s w ostech

Vous pouvez omettre l'en-tête de la sortie en utilisant -h choix :

$ w -h
sk       tty1     -                08:41   16:13   0.10s  0.06s -bash
ostechni pts/1    192.168.225.37   08:42    1.00s  0.09s  0.01s w -h

Vous pouvez également afficher l'adresse IP au lieu du nom d'hôte pour "FROM" champ (nom d'hôte distant) à l'aide de -i choix :

$ w -i

Vous ne voudrez peut-être pas imprimer tous les détails. Si c'est le cas, vous pouvez exclure l'heure de connexion, les heures JCPU ou PCPU en utilisant -s (--short ) :

$ w -s
 09:02:50 up 48 min,  2 users,  load average: 0.31, 0.79, 0.84
USER     TTY      FROM              IDLE WHAT
sk       tty1     -                21:02  -bash
ostechni pts/1    192.168.225.37    1.00s w -s

Pour plus de détails, consultez les pages de manuel :

$ man w

Ou, reportez-vous à la section d'aide :

$ w --help

Usage:
 w [options]

Options:
 -h, --no-header     do not print header
 -u, --no-current    ignore current process username
 -s, --short         short format
 -f, --from          show remote hostname field
 -o, --old-style     old style output
 -i, --ip-addr       display IP address instead of hostname (if possible)

     --help     display this help and exit
 -V, --version  output version information and exit

For more details see w(1).

2. Afficher tous les utilisateurs connectés en utilisant who commande

Le who La commande est encore un autre outil de ligne de commande pour afficher des informations sur les utilisateurs qui sont actuellement connectés à une machine Linux.

Si vous lancez who commande sans aucune option, elle affichera tous les utilisateurs connectés :

$ who

Exemple de résultat :

sk        tty1         2021-01-12 08:41
ostechnix pts/1        2021-01-12 08:42 (192.168.225.37)

Comme vous le voyez dans la sortie ci-dessus, who La commande affiche le nom d'utilisateur, le type de terminal (par exemple, tty ou pts ) sur lequel la session a eu lieu, l'heure de démarrage et l'adresse IP source à partir de laquelle l'utilisateur s'est connecté.

Vous pouvez filtrer les détails d'un utilisateur spécifique avec grep commande :

$ who | grep ostechnix
ostechnix pts/1        2021-01-12 08:42 (192.168.225.37)

La commande ci-dessus trouvera si l'utilisateur donné ostechnix est connecté ou non.

Si vous souhaitez afficher uniquement les informations de la session de terminal en cours, exécutez :

$ who am i
ostechnix pts/1        2021-01-12 08:42 (192.168.225.37)

Veuillez noter les espaces entre les mots. Si vous exécutez la commande ci-dessus sans aucun espace, seul le nom d'utilisateur s'affichera :

$ whoami 
ostechnix

Le who La commande a peu d'autres options pour obtenir une sortie personnalisée.

Par exemple, vous pouvez afficher toutes les informations disponibles sur les connexions actuelles en utilisant -a drapeau :

$ who -a

Exemple de résultat :

           system boot  2021-01-12 08:14
sk       - tty1         2021-01-12 08:41 00:59        1463
           run-level 5  2021-01-12 08:15
ostechnix + pts/1        2021-01-12 08:42   .          1477 (192.168.225.37)
LOGIN      tty6         2021-01-12 08:41              1366 id=tty6

Pour afficher toutes les informations disponibles avec des en-têtes de colonne, utilisez -H drapeau :

$ who -a -H
NAME       LINE         TIME             IDLE          PID COMMENT  EXIT
           system boot  2021-01-12 08:14
sk       - tty1         2021-01-12 08:41 00:59        1463
           run-level 5  2021-01-12 08:15
ostechnix + pts/1        2021-01-12 08:42   .          1477 (192.168.225.37)
LOGIN      tty6         2021-01-12 08:41              1366 id=tty6

Pour plus de détails, reportez-vous aux pages de manuel et à la section d'aide de la commande who à l'aide de l'une des commandes suivantes :

$ man who
$ who --help

3. Imprimer les utilisateurs connectés avec users commande

Les users La commande imprime les noms d'utilisateur des utilisateurs actuellement connectés au système hôte actuel.

Pour afficher une liste de tous les utilisateurs connectés sur une machine Linux, exécutez :

$ users
ostechnix sk

Pour obtenir de l'aide, exécutez l'une des commandes suivantes :

$ man users
$ users --help

4. Afficher les utilisateurs connectés avec last commande

Le last La commande affiche généralement tous les utilisateurs qui se sont connectés et déconnectés d'une machine Linux depuis le /var/log/wtmp le fichier a été créé.

$ last

La liste des utilisateurs actuellement connectés est affichée en haut.

ostechni pts/1        192.168.225.37   Tue Jan 12 08:42   still logged in
sk       tty1                          Tue Jan 12 08:41   still logged in
ostechni tty1                          Tue Jan 12 08:41 - 08:41  (00:00)
sk       pts/1        192.168.225.37   Tue Jan 12 08:41 - 08:41  (00:00)
[...]

Pour obtenir de l'aide, consultez les pages de manuel ou utilisez --help choix :

$ man last
$ last --help

5. Trouver qui est connecté à un système Linux à l'aide de la commande id

L'id La commande est utilisée pour imprimer les informations d'utilisateur et de groupe pour l'UTILISATEUR spécifié, ou pour l'utilisateur actuel lorsque UTILISATEUR est omis.

Pour imprimer l'utilisateur actuellement connecté dans la session en cours, exécutez id commande avec -un option :

$ id -un
ostechnix

C'est la même chose que le whoami commande.

Pour obtenir de l'aide, procédez comme suit :

$ man id
$ id --help

Tous les outils susmentionnés sont disponibles par défaut dans la plupart des distributions Linux. Il existe un autre outil de ligne de commande disponible pour trouver qui est connecté à un système Linux. Il n'est pas installé par défaut, mais disponible dans les dépôts par défaut de la plupart des distributions Linux.

6. Liste les utilisateurs connectés avec la commande du doigt

Doigt est un utilitaire de recherche d'informations utilisateur en ligne de commande. Il affiche le nom de connexion de l'utilisateur, son nom réel, le nom du terminal et l'état d'écriture, le temps d'inactivité, l'heure de connexion, l'emplacement du bureau et le numéro de téléphone du bureau, etc.

Le programme finger n'est pas installé par défaut dans certaines distributions Linux. Vous pouvez installer finger dans les systèmes Debian et Ubuntu en utilisant le gestionnaire de paquets apt comme ci-dessous :

$ sudo apt install finger

Une fois installé, exécutez la commande finger pour rechercher les utilisateurs connectés sur votre système Linux :

$ finger 

Exemple de résultat :

Login      Name        Tty      Idle  Login Time   Office     Office Phone
ostechnix  ostechnix   pts/1          Jan 12 08:42 (192.168.225.37)
sk                    *tty1     3:17  Jan 12 08:41

Afficher des informations sur un utilisateur spécifique :

$ finger ostechnix

Exemple de résultat :

Login: ostechnix      			Name: ostechnix
Directory: /home/ostechnix          	Shell: /bin/bash
On since Tue Jan 12 08:42 (UTC) on pts/1 from 192.168.225.37
   2 seconds idle
No mail.
No Plan.

Voici quelques méthodes pour trouver les utilisateurs actuellement connectés dans un système Linux. Savoir qui est connecté et trouver ce qu'ils font dans votre système peut être utile lors des dépannages. J'espère que l'une des méthodes susmentionnées vous aidera.

Lire connexe :

  • Comment répertorier tous les utilisateurs sous Linux
  • Comment surveiller l'activité des utilisateurs sous Linux
  • Comment limiter l'accès des utilisateurs au système Linux

Linux
  1. Comment utiliser FIND sous Linux

  2. Comment trouver un fichier sous Linux

  3. Comment trouver tous les utilisateurs de Sudo sous Linux

  4. Comment trouver l'adresse IP de la passerelle par défaut sous Linux

  5. Comment puis-je trouver le nombre d'utilisateurs en ligne sous Linux ?

Comment répertorier les utilisateurs sous Linux

Autorisations Linux - Comment trouver les autorisations d'un fichier

Comment changer un shell d'utilisateurs sous Linux

Comment trouver la dernière connexion sous Linux

Comment voir les utilisateurs connectés sous Linux

Comment trouver une adresse IP sous Linux