Terminalbefehl zum Abrufen von Informationen über die Zeit und den Benutzer aller in allen Terminalsitzungen ausgeführten Befehle

Terminalbefehl zum Abrufen von Informationen über die Zeit und den Benutzer aller in allen Terminalsitzungen ausgeführten Befehle

Ich möchte wissen, welcher Benutzer welchen Befehl auf dem Terminal ausgeführt hat und wann. Das heißt, wenn ein Benutzer „rmdir abc“ ausführt und ein bestimmtes Verzeichnis entfernt, sollte ich wissen, welchen Befehl er zu welchem ​​Zeitpunkt ausgeführt hat. Und ich möchte dies nicht für eine einzelne Sitzung, sondern diese Daten sollten mir zur Verfügung stehen, so wie wir Protokolle pflegen, sodass ich sie zu jedem beliebigen Zeitpunkt analysieren kann.

Ich habe den historyBefehl auch ausprobiert und auch die Zeit hinzugefügt, aber er zeigt keine „Benutzer“ des Befehls an und außerdem ist er sitzungsbasiert, sodass seine Daten nicht an die ~/.bash_historyDatei angehängt werden, es sei denn, die Sitzung wird beendet. Außerdem ~/.bash_historywerden weder Zeit noch Benutzer angezeigt, also ist er nicht nützlich. Kann mir bitte jemand helfen? Ich möchte nur sehen, welcher Benutzer welchen Befehl ab dem Moment ausgeführt hat, in dem das System gestartet wurde, und zu welcher Zeit.

Antwort1

Sie können Befehle überprüfen, die von Benutzern ausgeführt wurden, indem Siesudo vim /home/USER_YOU_WANT_TO_VIEW/.bash_history

Weitere Informationen finden Sie auch in den AUTH-Protokollentail /var/log/auth.log | grep username

Versuchen Sie diese ähnliche Frage:Wie kann ich Zeitstempel im Bash-Verlauf anzeigen?

Antwort2

Ich vermute, es befindet sich in der Bash-Verlaufsdatei aller Benutzer. Sie müssen nur eine Liste der Bash-Verlaufsdateien abrufen und diese caten.

cd /home
find |grep .bash_history

Ausgänge:

./gediz/.bash_history

als Katze es

cat ./gediz/.bash_history

Sie können es in einer For-Schleife tun

a=find ...
for i in $a
do
echo $a
cat $i
done

Sie können einen Dienst erstellen oder die Datei rc.local für den Ubuntu-Start mit einer While-Schleife bearbeiten, die in jeder Schleife die .bash_history aller Benutzer an einem sicheren Ort sichert, sodass Sie auch dann überprüfen können, was getan wurde, wenn Benutzer ihre eigenen Dateien löschen.

verwandte Informationen