MOTD in Linux

vorhergehende Artikel in: Linux
16.07.2022

Vieles von dem, was Canonical tut, finde ich einigermaßen fragwürdig - eine Sache allerdings haben sie sich einfallen lassen, die unterstütze ich vollumfänglich:

Die Message Of The Day (MOTD), die unter Ubuntu beim Textlogin einige interessante Fakten zum System anzeigt. Bei mir sieht das exemplarisch zum Beispiel so aus:

Welcome to Ubuntu 20.04.4 LTS (GNU/Linux 5.13.0-44-generic x86_64)

System information as of Di 31. Mai 17:27:06 CEST 2022

System load: 0.88 Usage of /home: 25.8% of 389.87GB Memory usage: 46% Swap usage: 4% Temperature: 53.0 C Processes: 339 Users logged in: 1 IPv4 address for br-7836edc2c6a9: 172.18.0.1 IPv4 address for br0: 192.168.10.70 IPv6 address for br0: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx IPv6 address for br0: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx IPv4 address for docker0: 172.17.0.1 IPv4 address for lxcbr0: 10.0.3.1 IPv4 address for virbr0: 192.168.122.1

0 updates can be applied immediately.

*** System restart required ***

Damit hat man wichtige Informationen im Blick, wenn man sich auf der Konsole einloggt. Lustigerweise musste ich dieses Feature erst wieder reaktivieren - ich trug dazu folgende Zeile am Ende der Datei ~/.bashrc ein:

run-parts /etc/update-motd.d/

im Verzeichnis /etc/update-motd.d/ liegen verschiedene Skripte, die entsprechend ihrer lexikalischen Reihenfolge ausgeführt werden und jeweils mittels echo einen Teil der Gesamtausgabe beisteuern. Man kann dort eigene Scripts hinzufügen (bei einem Server etwa eines, das den Status des RAID angibt) - möchte man Skripte deaktivieren, die dort vorhanden sind, muss man sie nicht löschen - es genügt, die Ausführungsberechtigung mittels chmod -x zu entfernen. Entsprechend lassen sich deaktivierte Skripts mittels chmod +x wieder reaktivieren.

Ein einfaches Skript für das Checken des RAID-Status könnte etwa wie folgt aussehen (mit einem Check, da nur root-User diese Informationen einsehen dürfen):

#!/bin/bash
if [ "$EUID" -eq 0 ]
then
echo
mdadm -D /dev/md1 |grep -E -w "State :|Working|Failed"|sed 's/^[[:space:]]*//g'|
echo
echo
fi

Für Rechner, die nicht mit Ubuntu laufen, auf denen aber trotzdem irgendeine Art von Debian als Betriebssystem installiert ist habe ich mich für das Hinzufügen von neofetch und ein kleines Script entschieden, das checkt, ob Packages zum Upgrade anstehen:

# whatever the .bashrc already contains...
neofetch
UPGRADABLEPACKAGES=$(apt-get -q -y --ignore-hold --allow-change-held-packages --allow-unauthenticated -s dist-upgrade | /bin/grep  ^Inst | wc -l)
if [ "$UPGRADABLEPACKAGES" -ne 0 ]
then
echo
echo "Upgradable packages: ${UPGRADABLEPACKAGES}"
echo
fi

Falls in einem solchen Fall Informationen darüber benötigt werden, ob das System gebootet werden muss, kann man das für Debian-basierte Systeme herausfinden, indem man testet, ob eine Datei namens /var/run/reboot-required vorhanden ist.

Eine Sache am Rande: Wer - wie ich - ein großer Fan des Films Sneakers - die Lautlosen ist, könnte eventuell in einer schwachen Minute versucht sein, die vorgestellten Werkzeuge mit no-more-secrets zu verknüpfen. Das ist weder un ter Ubuntu noch mit neofetch direkt möglich, da nms Inhalte per Pipe angereicht haben möchte - die Ausgaben der beiden Werkzeuge direkt nach nms zu pipen sorgt aber lediglich für Salat - möchte man trotz alledem eine standesgemäße Shell-Eröffnung feiern, sollte man die Ausgaben in eine Datei umlenken und diese anschließend mittels cat in eine Pipe lenken, aus der nms liest... Bei neofetch sollte man noch beachten, dass der Kommandozeilenparameter --stdout benutzt werden sollte, der ANSI-Escape-Sequenzen unterdrückt, die nms nicht unterstützt.

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Certstream, InfluxDB, Grafana und Netflix

    16.04.2019

    Nachdem ich vor kurzem über mein erstes Spielen mit dem certstream berichtete, habe ich weitere Experimente gemacht und die Daten zur besseren Auswertung in eine InfluxDB gepackt, um sie mit Grafana untersuchen zu können.

    Weiterlesen...

Neueste Artikel

  • Die sQLshell ist nun cloudnative!

    Die sQLshell hat eine weitere Integration erfahren - obwohl ich eigentlich selber nicht viel dazu tun musste: Es existiert ein Projekt/Produkt namens steampipe, dessen Slogan ist select * from cloud; - Im Prinzip eine Wrapperschicht um diverse (laut Eigenwerbung mehr als 140) (cloud) data sources.

    Weiterlesen...
  • LinkCollections 2024 III

    Nach der letzten losen Zusammenstellung (für mich) interessanter Links aus den Tiefen des Internet von 2024 folgt hier gleich die nächste:

    Weiterlesen...
  • Funktionen mit mehreren Rückgabewerten in Java

    Da ich seit nunmehr einem Jahr bei meinem neeun Arbeitgeber beschäftigt und damit seit ungefähr derselben Zeit für Geld mit Python arbeite, haben sich gewisse Antipathien gegenüber Python vertieft (ich kann mit typlosen Sprachen einfach nicht umgehen) - aber auch einige meiner Gründe, Python zu lieben sind ebenso stärker geworden. Einer davon ist der Fakt, dass eine Methode in Python mehr als einen Wert zurückgeben kann.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.