Cet article est écrit par Hari Haran.
En tant qu'administrateur système, vous souhaiterez peut-être savoir qui se trouve sur le système à un moment donné. Vous voudrez peut-être aussi savoir ce qu'ils font. Dans cet article, passons en revue 4 méthodes différentes pour identifier qui se trouve sur votre système Linux.
1. Obtenez les processus en cours d'exécution de l'utilisateur connecté à l'aide de w
commande w est utilisé pour afficher les noms d'utilisateurs connectés et ce qu'ils font. Les informations seront lues à partir du fichier /var/run/utmp. La sortie de la commande w contient les colonnes suivantes :
- Nom de l'utilisateur
- Numéro de machine ou numéro tty de l'utilisateur
- Adresse de la machine distante
- Heure de connexion de l'utilisateur
- Temps d'inactivité (temps non utilisable)
- Temps utilisé par tous les processus attachés au tty (temps JCPU)
- Temps utilisé par le processus en cours (temps PCPU)
- Commande en cours d'exécution par les utilisateurs
Les options suivantes peuvent être utilisées pour la commande w :
- -h Ignorer les informations d'en-tête
- -u Afficher la charge moyenne (sortie de disponibilité)
- -s Supprime le JCPU, le PCPU et l'heure de connexion.
$ w 23:04:27 up 29 days, 7:51, 3 users, load average: 0.04, 0.06, 0.02 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT ramesh pts/0 dev-db-server 22:57 8.00s 0.05s 0.01s sshd: ramesh [priv] jason pts/1 dev-db-server 23:01 2:53 0.01s 0.01s -bash john pts/2 dev-db-server 23:04 0.00s 0.00s 0.00s w $ w -h ramesh pts/0 dev-db-server 22:57 17:43 2.52s 0.01s sshd: ramesh [priv] jason pts/1 dev-db-server 23:01 20:28 0.01s 0.01s -bash john pts/2 dev-db-server 23:04 0.00s 0.03s 0.00s w -h $ w -u 23:22:06 up 29 days, 8:08, 3 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT ramesh pts/0 dev-db-server 22:57 17:47 2.52s 2.49s top jason pts/1 dev-db-server 23:01 20:32 0.01s 0.01s -bash john pts/2 dev-db-server 23:04 0.00s 0.03s 0.00s w -u $ w -s 23:22:10 up 29 days, 8:08, 3 users, load average: 0.00, 0.00, 0.00 USER TTY FROM IDLE WHAT ramesh pts/0 dev-db-server 17:51 sshd: ramesh [priv] jason pts/1 dev-db-server 20:36 -bash john pts/2 dev-db-server 1.00s w -s
2. Obtenez le nom d'utilisateur et le processus de l'utilisateur connecté à l'aide de la commande who et users
qui commande est utilisé pour obtenir la liste des noms d'utilisateur actuellement connectés. La sortie de la commande who contient les colonnes suivantes :nom d'utilisateur, numéro tty, date et heure, adresse de la machine.
$ who ramesh pts/0 2009-03-28 22:57 (dev-db-server) jason pts/1 2009-03-28 23:01 (dev-db-server) john pts/2 2009-03-28 23:04 (dev-db-server)
Pour obtenir une liste de tous les noms d'utilisateur actuellement connectés, utilisez ce qui suit :
$ who | cut -d' ' -f1 | sort | uniq john jason ramesh
Commande des utilisateurs
commande des utilisateurs est utilisé pour imprimer le nom d'utilisateur qui sont tous actuellement connectés à l'hôte actuel. C'est l'une des commandes qui n'a pas d'autre option que l'aide et la version. Si l'utilisateur utilise « n » nombre de terminaux, le nom d'utilisateur s'affichera « n » fois dans la sortie.
$ users john jason ramesh
3. Obtenez le nom d'utilisateur auquel vous êtes actuellement connecté en utilisant whoami
whoami La commande est utilisée pour imprimer le nom d'utilisateur connecté.
$ whoami john
commande whoami donne la même sortie que id -un comme indiqué ci-dessous :
$ id -un john
qui suis-je affichera le nom d'utilisateur connecté et les détails tty actuels. La sortie de cette commande contient les colonnes suivantes :nom d'utilisateur connecté, nom tty, heure actuelle avec date et adresse IP à partir de laquelle cet utilisateur a établi la connexion.
$ who am i john pts/2 2009-03-28 23:04 (dev-db-server) $ who mom likes john pts/2 2009-03-28 23:04 (dev-db-server) Warning: Don't try "who mom hates" command.
De plus, si vous faites su à un autre utilisateur, cette commande donnera les informations sur les détails du nom d'utilisateur connecté.
4. Obtenez l'historique de connexion de l'utilisateur à tout moment
dernière commande donnera l'historique de connexion pour un nom d'utilisateur spécifique. Si nous ne donnons aucun argument pour cette commande, elle répertoriera l'historique de connexion de tous les utilisateurs. Par défaut, ces informations seront lues à partir du fichier /var/log/wtmp. La sortie de cette commande contient les colonnes suivantes :
- Nom d'utilisateur
- Numéro d'appareil Tty
- Date et heure de connexion
- Heure de déconnexion
- Temps de travail total
$ last jason jason pts/0 dev-db-server Fri Mar 27 22:57 still logged in jason pts/0 dev-db-server Fri Mar 27 22:09 - 22:54 (00:45) jason pts/0 dev-db-server Wed Mar 25 19:58 - 22:26 (02:28) jason pts/1 dev-db-server Mon Mar 16 20:10 - 21:44 (01:33) jason pts/0 192.168.201.11 Fri Mar 13 08:35 - 16:46 (08:11) jason pts/1 192.168.201.12 Thu Mar 12 09:03 - 09:19 (00:15) jason pts/0 dev-db-server Wed Mar 11 20:11 - 20:50 (00:39
Cet article est écrit par Hari Haran. Il travaille chez bk Systems (p) Ltd et souhaite contribuer à l'open source. The Geek Stuff accueille vos conseils et articles invités.