Nicht programmierbezogen. Ich schlage vor, Sie fragen auf superuser.com .
Es gibt kein Standard-Tool, um die Informationen zu erhalten, daher denke ich, dass es sich um Programmierprobleme handelt (zumindest im Sinne von "Scripting").
IanH
Antworten:
11
Sie erhalten eine Liste der aktuell angemeldeten Benutzer /var/run/utmp(siehe man 5 utmp). Der Verlauf wird in ~ / .history oder für Bash-Benutzer in ~ / .bash_history gespeichert. Andere Shells verwenden möglicherweise andere Verlaufsdateien, sodass es nicht so einfach ist, wirklich alle Informationen abzurufen.
Wenn ein Benutzer mehrmals angemeldet ist, ist die Datei .bash_history nicht immer zuverlässig.
Um die utmpDatei zu lesen, wird ein "Frontend" aufgerufen who, sodass Sie auch ein Shell-Skript schreiben können, um die aktuell angemeldeten Benutzer zu durchlaufen.
Der aktuelle Verlauf wird gespeichert. Die Verlaufsdatei zeigt nur an, was mit history -aoder ähnlich geschrieben wurde oder wann ein Benutzer die Shell verlässt.
Bis auf weiteres angehalten.
2
Beachten Sie, dass die in dieser Antwort angegebenen Dateinamen lediglich die Standardeinstellungen sind. Jeder Benutzer hätte seinen eigenen Standort festlegen können (siehe Joys Antwort). Wenn ein Benutzer unterschiedliche Shells verwendet, kann er seine Historien möglicherweise an verschiedenen, nicht standardmäßigen Speicherorten speichern (z. B. ~ / mybashhist, ~ / histories / ksh oder ähnliches). Beachten Sie auch, dass das Durchsuchen solcher Benutzerdaten rechtliche Auswirkungen haben kann.
Antworten:
Sie erhalten eine Liste der aktuell angemeldeten Benutzer
/var/run/utmp
(sieheman 5 utmp
). Der Verlauf wird in ~ / .history oder für Bash-Benutzer in ~ / .bash_history gespeichert. Andere Shells verwenden möglicherweise andere Verlaufsdateien, sodass es nicht so einfach ist, wirklich alle Informationen abzurufen.Wenn ein Benutzer mehrmals angemeldet ist, ist die Datei .bash_history nicht immer zuverlässig.
Um die
utmp
Datei zu lesen, wird ein "Frontend" aufgerufenwho
, sodass Sie auch ein Shell-Skript schreiben können, um die aktuell angemeldeten Benutzer zu durchlaufen.quelle
history -a
oder ähnlich geschrieben wurde oder wann ein Benutzer die Shell verlässt.Zeigen Sie dann diese Datei an.
quelle
HISTFILE
etwas anderes festgelegt hat).