GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So finden Sie aktuell angemeldete Benutzer in Linux

Ein Linux-Systemadministrator sollte ein Auge darauf haben, wer gerade im Linux-System angemeldet ist und was sie vorhaben. Wir wussten bereits, wie man die zuletzt eingeloggten Benutzer findet unter Linux. Wie würden Sie feststellen, wer gerade auf Ihrem Linux-System angemeldet ist und was er tut? Leicht! Dieses Tutorial listet verschiedene Methoden auf, um aktuell angemeldete Benutzer in Linux zu finden.

1. Finden Sie aktuell angemeldete Benutzer in Linux mit w Befehl

In Linux-Betriebssystemen gibt es einen speziellen Einbuchstabenbefehl namens w das hilft Ihnen herauszufinden, wer angemeldet ist und was er im System tut. Dies ist das am häufigsten verwendete Befehlszeilentool zum Anzeigen der Informationen über die Benutzer, die sich derzeit auf dem Server befinden, und ihre Prozesse.

Das w Der Befehl ist oft nützlich, wenn Sie einen Linux-Server verwalten, auf den häufig viele Benutzer zugreifen. Sie können sie alle verfolgen, ohne zusätzliche Tools oder Anwendungen installieren zu müssen.

Das w Der Befehl zeigt verschiedene nützliche Details, einschließlich der folgenden:

  • die aktuelle Zeit,
  • wie lange das System läuft,
  • wie viele Benutzer derzeit angemeldet sind,
  • und die durchschnittliche Systemlast der letzten 1, 5 und 15 Minuten.

Das w Der Befehl ruft Informationen darüber ab, wer derzeit aus /var/run/utmp angemeldet ist Datei und ruft die Prozessinformationen aus /proc ab Datei.

Lassen Sie uns nun sehen, wie man w verwendet Befehl, um anzuzeigen, wer auf Ihrem Linux-Rechner angemeldet ist und was er tut.

Die typische Verwendung von w Befehl ist:

$ w [options] user

Wenn Sie den Befehl w ohne Optionen ausführen, werden alle derzeit angemeldeten Benutzer in Ihrem Linux-System angezeigt:

$ w

Beispielausgabe:

 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

Wie Sie in der obigen Ausgabe sehen können, gibt es derzeit zwei Benutzer (sk und ostechni ) bei meinem Ubuntu-Server angemeldet. Das w Der Befehl zeigt die folgenden Details für die einzelnen Benutzer an:

  • Anmeldename,
  • der tty-Name,
  • Quell-IP-Adresse, von der aus sich der Benutzer angemeldet hat,
  • Anmeldezeit,
  • Leerlaufzeit,
  • JCPU-Zeit (die Zeit, die von allen Prozessen verwendet wird, die mit dem tty verbunden sind),
  • PCPU-Zeit (die vom aktuellen Prozess verwendete Zeit),
  • und die Befehlszeile ihres aktuellen Prozesses.

Wenn Sie die Details eines bestimmten angemeldeten Benutzers (z. B. ostechnix) anzeigen möchten, lautet der Befehl:

$ 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

Mit -h können Sie den Header aus der Ausgabe weglassen Möglichkeit:

$ 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

Sie können auch die IP-Adresse anstelle des Hostnamens für "FROM" anzeigen (Remote-Hostname) mit -i Möglichkeit:

$ w -i

Möglicherweise möchten Sie nicht alle Details ausdrucken. In diesem Fall können Sie die Anmeldezeit, JCPU- oder PCPU-Zeiten mit -s ausschließen (--short ) Option:

$ 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

Weitere Einzelheiten finden Sie in den Manpages:

$ man w

Oder siehe Hilfeabschnitt:

$ 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. Zeigen Sie alle angemeldeten Benutzer mit who an Befehl

Der who Der Befehl ist ein weiteres Befehlszeilentool zum Anzeigen von Informationen über Benutzer, die derzeit auf einem Linux-Computer angemeldet sind.

Wenn Sie who ausführen Befehl ohne Optionen, werden alle angemeldeten Benutzer angezeigt:

$ who

Beispielausgabe:

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

Wie Sie in der obigen Ausgabe sehen, who Der Befehl zeigt den Benutzernamen, den Typ des Endgeräts (z. B. tty oder pts ), an dem die Sitzung stattfand, die Startzeit und die Quell-IP-Adresse, von der aus sich der Benutzer angemeldet hat.

Sie können Details für einen bestimmten Benutzer mit grep filtern Befehl:

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

Der obige Befehl findet heraus, ob der angegebene Benutzer ostechnix eingeloggt ist oder nicht.

Wenn Sie nur Informationen für die aktuelle Terminalsitzung anzeigen möchten, führen Sie Folgendes aus:

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

Bitte beachten Sie die Leerzeichen zwischen den Wörtern. Wenn Sie den obigen Befehl ohne Leerzeichen ausführen, wird nur der Benutzername angezeigt:

$ whoami 
ostechnix

Der who Der Befehl hat einige andere Optionen, um eine angepasste Ausgabe zu erhalten.

Beispielsweise können Sie sich mit -a alle verfügbaren Informationen aktueller Logins anzeigen lassen Flagge:

$ who -a

Beispielausgabe:

           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

Um alle verfügbaren Informationen mit Spaltenüberschriften anzuzeigen, verwenden Sie -H Flagge:

$ 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

Weitere Einzelheiten finden Sie in den Manpages und im Hilfeabschnitt des Befehls who mit einem der folgenden Befehle:

$ man who
$ who --help

3. Angemeldete Benutzer mit users drucken Befehl

Die users Der Befehl gibt die Benutzernamen der Benutzer aus, die derzeit beim aktuellen Hostsystem angemeldet sind.

Um eine Liste aller angemeldeten Benutzer auf einem Linux-Rechner anzuzeigen, führen Sie Folgendes aus:

$ users
ostechnix sk

Um Hilfe zu erhalten, führen Sie einen der folgenden Befehle aus:

$ man users
$ users --help

4. Angemeldete Benutzer mit last anzeigen Befehl

Der last Der Befehl zeigt normalerweise alle Benutzer an, die sich seit dem /var/log/wtmp jemals an einem Linux-Computer an- und abgemeldet haben Datei wurde erstellt.

$ last

Die Liste der derzeit angemeldeten Benutzer wird oben angezeigt.

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)
[...]

Hilfe finden Sie in den Manpages oder verwenden Sie --help Möglichkeit:

$ man last
$ last --help

5. Finden Sie mit dem Befehl id heraus, wer in einem Linux-System angemeldet ist

Die id Der Befehl wird verwendet, um Benutzer- und Gruppeninformationen für den angegebenen BENUTZER oder für den aktuellen Benutzer auszugeben, wenn BENUTZER weggelassen wird.

Um den aktuell angemeldeten Benutzer in der aktuellen Sitzung zu drucken, führen Sie id aus Befehl mit -un Optionen:

$ id -un
ostechnix

Dies ist dasselbe wie whoami Befehl.

Gehen Sie wie folgt vor, um Hilfe zu erhalten:

$ man id
$ id --help

Alle oben genannten Tools sind in den meisten Linux-Distributionen standardmäßig verfügbar. Es ist ein weiteres Befehlszeilentool verfügbar, um herauszufinden, wer in einem Linux-System angemeldet ist. Es wird nicht standardmäßig installiert, ist aber in den Standard-Repositories der meisten Linux-Distributionen verfügbar.

6. Angemeldete Benutzer per Fingerbefehl auflisten

Finger ist ein Befehlszeilen-Dienstprogramm zum Nachschlagen von Benutzerinformationen. Es zeigt den Anmeldenamen des Benutzers, den echten Namen, den Terminalnamen und den Schreibstatus, die Leerlaufzeit, die Anmeldezeit, den Bürostandort und die Bürotelefonnummer usw. an.

Das Finger-Programm wird in einigen Linux-Distributionen standardmäßig nicht installiert. Sie können Finger in Debian- und Ubuntu-Systemen mit dem apt-Paketmanager wie folgt installieren:

$ sudo apt install finger

Führen Sie nach der Installation den Fingerbefehl aus, um angemeldete Benutzer in Ihrem Linux-System zu finden:

$ finger 

Beispielausgabe:

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

Informationen über einen bestimmten Benutzer anzeigen:

$ finger ostechnix

Beispielausgabe:

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.

Dies sind einige Methoden, um die aktuell angemeldeten Benutzer in einem Linux-System zu finden. Zu wissen, wer angemeldet ist, und herauszufinden, was er in Ihrem System tut, kann bei der Fehlerbehebung hilfreich sein. Ich hoffe, eine der oben genannten Methoden wird Ihnen weiterhelfen.

Verwandte Lektüre:

  • So listen Sie alle Benutzer unter Linux auf
  • So überwachen Sie die Benutzeraktivität unter Linux
  • Einschränken des Benutzerzugriffs auf das Linux-System

Linux
  1. So verwenden Sie FIND unter Linux

  2. So finden Sie eine Datei in Linux

  3. So finden Sie alle Sudo-Benutzer in Linux

  4. So finden Sie die Standard-Gateway-IP in Linux

  5. Wie kann ich die Anzahl der Benutzer online in Linux finden?

So listen Sie Benutzer unter Linux auf

Linux-Berechtigungen – So finden Sie Berechtigungen einer Datei

So ändern Sie eine Benutzer-Shell in Linux

So finden Sie die letzte Anmeldung unter Linux

So sehen Sie angemeldete Benutzer in Linux

So finden Sie die IP-Adresse in Linux