Letzter auf einer GNU/Linux-Box ausgegebener Befehl

Letzter auf einer GNU/Linux-Box ausgegebener Befehl

Jemand hat in der Mailingliste meiner lokalen LUG gefragt, ob es eine Möglichkeit gibt, den zuletzt auf einem GNU/Linux-System ausgegebenen Befehl herauszufinden.

Ich denke, wir sprechen hier vom letzten Befehl auf systemweiter Ebene. Wenn Sie nach einigem Überlegen die Befehlsmenge auf die Befehle beschränken, die von tatsächlichen Benutzern über eine interaktive Konsole ausgegeben werden, sollte der letzte Befehl im Befehlsverlauf registriert sein.

Eine andere Möglichkeit, diese Frage zu beantworten, wäre zu fragen, wie man erkennt, welcher Prozess der letzte war, der auf einer GNU/Linux-Box erstellt wurde, und zwar im Hinblick darauf, ob er noch läuft oder bereits abgeschlossen ist, welcher der übergeordnete Prozess war und andere relevante Informationen.

Antwort1

Ich habe ein Paket für Linux gefunden, das bei der Prozessabrechnung hilft.

Auf meinem Ubuntu 9.10-System habe ich Folgendes getan, um das Programm „acct“ zu installieren:

sudo apt-get install acct

Anschließend muss eine leere Logdatei erstellt werden, was Sie wie folgt tun können:

sudo touch /var/log/pacct

Anschließend muss die Prozessabrechnung aktiviert werden:

sudo /usr/sbin/accton /var/log/pacct

Ab diesem Zeitpunkt werden Prozesse zusammen mit dem Benutzer, der sie ausgeführt hat, und dem zugehörigen Terminal protokolliert.

Die Protokolldatei kann mit diesem Befehl angezeigt werden:

lastcomm -f /var/log/pacct

Ich schaue mir dieses Programm noch an … aber es sieht so aus, als ob es hilft.

Antwort2

Für einen bestimmten Benutzer (und eine bestimmte Shell): Verlauf

Für einen aktuellen Prozess: ps

Antwort3

Nun, ein systemweites System sieht ziemlich kompliziert aus. Ein solches System impliziert, dass es einen Prozess geben sollte, der die .bash_history jedes Benutzers überwacht. Wenn diese aktualisiert wird, wird eine zentrale Datenbank aktualisiert. Sobald dies erledigt ist, können wir möglicherweise eine Erweiterung des Befehls „history“ erstellen, die aus der zentralen Datenbank auswählt. Keine schlechte Idee.

Antwort4

Sie könnenSchnüfflerum alle ausgeführten Befehle zu überwachen.

verwandte Informationen