Log-Files in der Konsole betrachten

Linux-Systeme legen in bestimmten Verzeichnissen automatisiert Log-Dateien an, die dem Nutzer Aufschluss über das Verhalten des Systems geben. Besonders gut sind Log-Dateien geeignet, wenn man etwas konfiguriert und auf Feedback angewiesen ist. Dieses Feedback kann man sich dann übe Log-Dateien oder andere Tools, die die Ausgabe direkt über die Konsole ausgeben, einholen

(U)Kubuntu und Debian speichern die Log-Dateien normalerweise in das Verzeichnis /var/log, wo sie von den Benutzern oder nur vom Root eingesehen werden können.

Editoren

Editoren für die Betrachtung von Log-Dateien ebenfalls verwendet werden. Ich verwende gerne den Editor nano, da er schnell und leicht zu handhaben ist.

nano datei.log

tail

tail bietet mehrere hilfreiche Funktionen zum Betrachten von Log-Dateien an. Die statische Ansicht ruft die Log-Datei einmal auf und gibt das Ergebnis auf der Konsole aus.

tail datei.log

Mit einer weiteren Funktion von tail kann man Log-Fils fortlaufend betrachten, d.h. das System bzw. die Applikation schreibt in die Log-Datei und das Ergebnis wird fortlaufend in der Konsole angezeigt.

tail -f datei.log


tail -f
tail -f

grep

Möchte man in Log-Dateien nach bestimmten Einträgen suchen, dann bietet sich grep hierfür besonders gut an.

tail -f datei.log | grep SUCHBEGRIFF

multitail

Möchte man mehrere Log-Dateien gleichzeitig betrachten, dann bieten die herkömmlichen Tools wie tail nur die Möglichkeit mehrere Konsolen-Fenster zu öffnen und dort jeweils ein Log dazustellen.
multitail hingegen bietet die Funktion mehrere Log-Dateien in einem Konsolenfenster aufzurufen. Da das Tool nicht standardmäßig installiert ist, ist die nachzuholen

sudo aptitude install multitail


Nach der Installation kann man multitail über die Konsole aufrufen.

Möchte man die Log-Files untereinander in Zeilen dargestellt haben, dann ist das der richtige Befehl

multitail datei1.log datei2.log

Sollen die Dateien nebeneinander in jeweils einer eigenen Spalte ausgegeben werden, lautet der Befehl
für 2 Spalten

multitail -s 2 datei1.log datei2.log


multitail - 2 columns
multitail – 2 columns

für 3 Spalten

multitail -s 3 datei1.log datei2.log datei3.log


multitail - 3 columns
multitail – 3 columns

Ausgabe von Tools in Log-Files umleiten

Linux bietet den Benutzern auch ein sehr einfaches Mittel, Log-Dateien zu erzeugen. Möchte man z.B. die Lese/Schreib-Zugriffe auf die Festplatte überwachen und das Ergebnis in eine Datei schreiben, geht das wie folgt.

Das Tool sysstat muss auf dem System bereits installiert sein, ansonsten geht das mit dem Befehl

sudo aptitude install sysstat

Nach der Installation kann man die Protokollierung aktivieren.

sudo iostat Aktualisierungsintervall-in-Sekunden > Ausgabedatei


Als Beispiel könnte das so aussehen.

sudo iostat 30 > /home/pi/read_write.log


Öffnen kann man den Log in einem anderen Konsolen-Fenster zeitgleich mit dem Befehl

tail -f /home/pi/read_write.log

Systeminformationen beim Login auf der Konsole ausgeben

In einem früheren Beitrag hier im Blog habe ich schon mal kurz beschrieben, wie man den Begrüßungstext auf der Konsole anpassen kann. ( ➡ SSH-Terminal – Begrüßungstext anpassen
In diesem Beitrag gehts das Ganz noch ein Stückchen weiter. Neben reinem Text kann man auch relevante Systeminfos anzeigen lassen und das auch in Farbe.

Ihr müsst hier einfach die Datei /etc/bash.bashrc editieren. Beachtet aber, dass ihr nicht reinen Text dort reinschreiben könnt, sondern in Bash verpacken müsst.

Öffnet die Daten mit einem Editor, hier z.B. nano

sudo nano /etc/bash.bashrc

Scrollt an das Ende der Datei und fügt die folgenden Code-Zeilen ein und speichert anschließend die Änderung ab.

echo -e "\n";
echo -e "\033[1;33m Welcome to your Pi \033[0m"
echo -e "\n";
echo -e "==================================================================="
echo -e "\033[1;33m Debian Version: \033[0m"  `cat /etc/debian_version`
echo -e "\033[1;33m Kernel Version:  \033[0m" `uname -a | awk '{print $3}'`
echo -e "==================================================================="
echo -e "\033[1;33m Logged in  since:     \033[0m" `uptime | awk '{print $1}'`
echo -e "\033[1;33m System time: \033[0m"  `date | awk '{print $4}'`
echo -e "\033[1;33m Uptime in days: \033[0m"  `uptime | awk '{print $3}'`
echo -e "==================================================================="
echo -e "\033[1;33m Speichernutzung: \033[0m" `cat /proc/meminfo|grep 'MemF'| awk '{print $2/1000}'`
echo -e "==================================================================="
echo -e "\033[1;33m Your user ID:   \033[0m" `/usr/bin/id`
echo -e "\033[1;33m User name:   \033[0m" `/usr/bin/whoami`
echo -e "\033[1;33m You are a member of the following groups:   \033[0m" 
echo -e `/usr/bin/groups`
echo -e "\033[1;33m Logged in users:   \033[0m" `/usr/bin/users`
echo -e "==================================================================="
echo -e "\033[1;33m User     Anschluß     Seit              von \033[0m"
/usr/bin/who
echo -e "==================================================================="

bash.bashrc
bash.bashrc

Möchtet Ihr neben den Informationen noch ein Bild ausgegeben bekommen, dann könnt ihr das kleine Tool jp2a verwenden, damit lassen sich ganz einfach Bilder in ASCII-Code umwandeln.

sudo aptitude install jp2a

Für das Konvertieren von einem Bild nimmt man den Befehl:

jp2a --colors picture.jpg > picture.txt


Das Bild wird in das ACII-Format konvertier, wobei die Farben erhalten bleiben und das Ergebnis in die Datei picture.txt geschrieben wird.
Weiter Infos zu den Befehlen findet ihr in den manpage von Ubuntu http://manpages.ubuntu.com/manpages/trusty/en/man1/jp2a.1.html


Gib mir gerne einen Kaffee ☕ aus!

Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.

PayPal Logo


liberapay.com/strobelstefan.org


Kaffee via Bitcoin

bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj


Ergänzung

Möchtet ihr nur einen Schriftzug in die /etc/bash.bashrc einfügen, dann könnt ihr das Tool figlet verwenden.
Aus den Repositories ist das mit dem üblichen Befehl schnell installiert

sudo aptitude install figlet

Anschließen könnt ihr euren Schriftzug erzeugen lassen

figlet mein Schriftzug


figlet - mein Schriftzug
figlet – mein Schriftzug

Weitere Infos rund um figlet findet ihr in den F.A.Q.s ➡ http://www.figlet.org/faq.html

Möchte man mehr Informationen über den Speicher Memory erfahren, dann kann man noch folgende Befehle verwenden:

echo -e "\033[1;33m Memory Total (MB): \033[0m" `cat /proc/meminfo|grep 'MemT'| awk '{print $2/1024}'`
echo -e "\033[1;33m Memory Available (MB): \033[0m" `cat /proc/meminfo|grep 'MemA'| awk '{print $2/1024}'`
echo -e "\033[1;33m Memory Free (MB): \033[0m" `cat /proc/meminfo|grep 'MemF'| awk '{print $2/1024}'`

Informationen über das System können auch aus dem Verzeichnis /proc ausgelesen werden:

cd /proc
ls
cat /proc/meminfo