Der Linux-Befehl „wall“: Nachrichten direkt an alle Benutzer
Möchten Sie schnell eine kurze Mitteilung an alle angemeldeten Benutzer senden? Der Linux-Befehl `wall` ist eine effektivere Methode als E-Mail und zielt automatisch auf alle aktiven Benutzer ab. Er übermittelt eine Nachricht an jeden, der gerade ein Terminal auf dem System nutzt.
Die Funktion des „wall“-Befehls
Wenn Sie kurzfristig eine Nachricht an alle aktiven Benutzer Ihres Rechners senden müssen, ist der `wall`-Befehl ideal. E-Mail ist hierfür nicht geeignet, da Sie nicht wissen, wann die Nachricht gelesen wird. Wenn Informationen sofort benötigt werden, ist E-Mail nicht die beste Wahl. Außerdem möchten Sie nicht die Postfächer von Benutzern füllen, die die Nachricht möglicherweise nicht sehen müssen.
Ohne großen Aufwand können Sie nicht genau wissen, wer von wo aus angemeldet ist. Ihr System könnte sich in Aberdeen, Washington befinden, aber es könnten auch Remote-Benutzer aus Aberdeen, Schottland angemeldet sein. Wie können Sie nun eine Nachricht gezielt an alle angemeldeten Benutzer senden?
Linux und andere Unix-ähnliche Betriebssysteme bieten Ihnen eine unkomplizierte Möglichkeit. Der Befehl `wall` fungiert wie ein schnelles Telegramm. Er sendet eine Nachricht an alle Terminalbenutzer und platziert sie direkt vor deren Augen. So wird die Nachricht nicht übersehen, und Sie wissen, dass sie ankommt. Die Empfänger müssen keine zusätzliche Anwendung öffnen, um nach neuen Nachrichten zu suchen.
Die Zustellung ist so deutlich wie ein Kuchen ins Gesicht.
So versenden Sie eine Nachricht mit „wall“
Die für diesen Artikel verwendete Testumgebung war ein System mit Fedora Linux, jedoch ist die Funktionsweise des Befehls `wall` auf anderen Distributionen identisch.
Der einzige Unterschied, auf den Sie stoßen könnten, ist, dass einige Distributionen das `sudo`-Kommando benötigen, um eine Nachricht aus einer Textdatei zu senden, während bei anderen `sudo` immer erforderlich ist. Dies ist jedoch ein Unterschied zwischen den Distributionen und nicht in der Funktion des `wall`-Befehls selbst.
Um eine Nachricht an alle Benutzer zu versenden, geben Sie `wall`, ein Leerzeichen und dann die gewünschte Nachricht ein. Unter Fedora Linux ist das Präfix `sudo` erforderlich.
sudo wall Der Hauptdrucker ist bis auf Weiteres offline.
Die Nachricht wird nun an alle Benutzer mit einem geöffneten Terminalfenster gesendet.
Die lokalen Benutzer Ria und Tom, sowie der Remote-Benutzer Dick, der sich über einen Computer mit Ubuntu angemeldet hat, erhalten die Nachricht.
Sie alle erhalten die Nachricht gleichzeitig und Sie müssen sich nicht fragen, ob sie die Nachricht gelesen haben.
Nachrichten aus einer Datei versenden
Sie können Ihre Nachrichten auch in einer Textdatei vorbereiten und speichern. Wenn Sie häufig dieselben Nachrichten versenden müssen, können Sie sich so eine Bibliothek an vorgefertigten Nachrichten erstellen.
Die Nachricht in der Datei `message.txt` wurde zuerst mit dem Befehl `cat` angezeigt, um sicherzustellen, dass es die richtige ist.
Dann wird die Nachricht gesendet, indem der Name der Textdatei als Parameter an den `wall`-Befehl übergeben wird:
cat message.txt
sudo wall message.txt
Wie zuvor erhalten die lokalen Benutzer Ria und Tom (und alle anderen, die mit einem Terminalfenster angemeldet sind), sowie der Remote-Benutzer Dick die Nachricht.
Der richtige Umgang mit dem „wall“-Befehl
Da der `wall`-Befehl die Nachricht an alle Terminalbenutzer sendet, kann dies störend sein. Der Befehl sollte nur verwendet werden, wenn es unbedingt nötig ist, da sonst eine unangenehme Situation für die Empfänger entstehen kann.
Eine `wall`-Nachricht überlagert alles, was sich gerade auf dem Terminal eines Benutzers befindet. Sie verändert den Text nicht, aber sie deckt ihn ab. Dies kann für einen Benutzer, der damit nicht rechnet, alarmierend sein.
Stellen Sie sich vor, einer Ihrer Benutzer bearbeitet gerade eine wichtige Datei in Vi, während die `wall`-Nachricht gesendet wird.
Die Nachricht erscheint mitten in der Datei.
Um die normale Ansicht der Datei wiederherzustellen, muss der Benutzer die Datei einfach kurz durchblättern.
Es ist einfach, den Bildschirm in einen Zustand zu versetzen, in dem die Arbeit fortgesetzt werden kann, aber zu viele solcher Unterbrechungen werden zu einer unzufriedenen Gruppe von Benutzern führen.
So nützlich der Befehl `wall` auch ist, er sollte nur mit Bedacht eingesetzt werden.
Was ist mit Benutzern grafischer Oberflächen?
Der Befehl `wall` erreicht jeden, der mit einem Terminalfenster angemeldet ist, nicht aber Benutzer, die eine grafische Benutzeroberfläche ohne geöffnetes Terminalfenster verwenden.
Wenn jemand eine grafische Oberfläche nutzt und ein Terminalfenster geöffnet hat, wird die Nachricht im Terminal angezeigt – aber das ist auch schon alles. Verlassen Sie sich nicht darauf, dass Sie mit `wall` Benutzer außerhalb eines Terminals erreichen.
Der Befehl ist alles andere als subtil, aber er übermittelt die Nachricht – zumindest in einer herkömmlichen Terminalumgebung.